From 5e08d80b029cd84fa8b9d3f471af71ebfbdfab28 Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Tue, 10 Sep 2024 11:05:19 +0800 Subject: [PATCH 01/16] =?UTF-8?q?update=20=20MsgRegisterSession=20and=20ad?= =?UTF-8?q?d=20MsgRegisterModel=E3=80=81MsgUpdateModel=E3=80=81dht=20query?= =?UTF-8?q?=20getModel?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client.ts | 117 ++++++++++++++++++++++++++++++++++------- src/queries.ts | 61 +++++++++------------ src/walletOperation.ts | 30 ++++++----- 3 files changed, 141 insertions(+), 67 deletions(-) diff --git a/src/client.ts b/src/client.ts index cf6ee46..2c11330 100644 --- a/src/client.ts +++ b/src/client.ts @@ -19,13 +19,15 @@ import { MsgSubmitPayment, VRF, } from "./codec/agent/v1/tx"; -import { Payment, Params, SessionStatus } from "./codec/agent/v1/agent"; +import { Payment, Params, SessionStatus,TokenPrice } from "./codec/agent/v1/agent"; import { Coin } from "./codec/cosmos/base/v1beta1/coin"; -import { AgentExtension, setupAgentExtension } from "./queries"; +import { setupAgentExtension,setupDHTExtension } from "./queries"; import { StdFee } from "@cosmjs/amino"; import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx"; import { sha256 } from "@cosmjs/crypto"; import { toHex } from "@cosmjs/encoding"; +import { QueryGetModelResponse } from "./codec/dht/v1/query"; +import { MsgRegisterModel, MsgUpdateModel } from "./codec/dht/v1/tx"; export type NesaClientOptions = SigningStargateClientOptions & { logger?: Logger; @@ -43,6 +45,8 @@ function nesaRegistry(): Registry { ["/agent.v1.MsgRegisterSession", MsgRegisterSession], ["/agent.v1.MsgSubmitPayment", MsgSubmitPayment], ["/agent.v1.VRF", VRF], + ["/dht.v1.MsgRegisterModel", MsgRegisterModel], + ["/dht.v1.MsgUpdateModel", MsgUpdateModel], ]); } @@ -64,9 +68,9 @@ export class NesaClient { public readonly sign: SigningStargateClient; public readonly signByModel: { [modelName: string]: SigningStargateClient } = {}; - public readonly query: QueryClient & AgentExtension; + public readonly query: QueryClient & ReturnType & ReturnType; public readonly queryByModel: { - [modelName: string]: QueryClient & AgentExtension; + [modelName: string]: QueryClient & ReturnType & ReturnType; } = {}; public readonly tm: CometClient; public readonly tmByModel: { [modelName: string]: CometClient } = {}; @@ -123,7 +127,11 @@ export class NesaClient { this.tm = tmClient; - this.query = QueryClient.withExtensions(tmClient, setupAgentExtension); + this.query = QueryClient.withExtensions( + tmClient, + setupAgentExtension, + setupDHTExtension + ); this.senderAddress = senderAddress; @@ -228,8 +236,9 @@ export class NesaClient { sessionId: string, modelName: string, fee: StdFee, - lockBalance?: Coin, - vrf?: VRF + lockBalance: Coin, + vrf: VRF, + tokenPrice: TokenPrice ) { this.logger.verbose(`Register Session`); const senderAddress = this.senderAddress; @@ -241,6 +250,7 @@ export class NesaClient { modelName, lockBalance, vrf, + tokenPrice }), }; const signResult = await this.sign.sign( @@ -266,8 +276,9 @@ export class NesaClient { public async registerSession( sessionId: string, modelName: string, - lockBalance?: Coin, - vrf?: VRF + lockBalance: Coin, + vrf: VRF, + tokenPrice: TokenPrice ): Promise { this.logger.verbose(`Register Session`); const senderAddress = this.senderAddress; @@ -279,6 +290,7 @@ export class NesaClient { modelName, lockBalance, vrf, + tokenPrice }), }; this.logger.debug("Register Session Message: ", registerSessionMsg); @@ -333,6 +345,75 @@ export class NesaClient { }; } + public async registerModel( + creator: string, + modelName: string, + blockCids: string[], + allowList: string[], + tokenPrice?: TokenPrice + ): Promise { + this.logger.verbose(`Register Model`); + const senderAddress = this.senderAddress; + const registerModelMsg = { + typeUrl: '/dht.v1.MsgRegisterModel', + value: MsgRegisterModel.fromPartial({ + creator, + modelName, + blockCids, + allowList, + tokenPrice + }), + }; + this.logger.debug('Register Model Message: ', registerModelMsg); + const result = await this.sign.signAndBroadcast( + senderAddress, + [registerModelMsg], + "auto" + ); + if (isDeliverTxFailure(result)) { + throw new Error(createDeliverTxFailureMessage(result)); + } + + return { + events: result.events, + transactionHash: result.transactionHash, + height: result.height, + }; + } + + public async updateModel( + modelName: string, + allowList: string[], + tokenPrice: TokenPrice + ): Promise { + this.logger.verbose(`Update Model`); + const senderAddress = this.senderAddress; + const updateModelMsg = { + typeUrl: '/dht.v1.MsgUpdateModel', + value: MsgUpdateModel.fromPartial({ + account: senderAddress, + modelName, + allowList, + tokenPrice + }), + }; + this.logger.debug('Update Model Message: ', updateModelMsg); + const result = await this.sign.signAndBroadcast( + senderAddress, + [updateModelMsg], + "auto" + ); + if (isDeliverTxFailure(result)) { + throw new Error(createDeliverTxFailureMessage(result)); + } + + return { + events: result.events, + transactionHash: result.transactionHash, + height: result.height, + }; + } + public async getParams() { const result = await this.query.agent.params(); return result; @@ -360,19 +441,14 @@ export class NesaClient { public async getSessionByAgent( account: string, - status: SessionStatus, + status: SessionStatus | undefined, + expireTime: Date, limit: Long, orderDesc: boolean, - key: Uint8Array, - expireTime?: Date + key: Uint8Array ) { const result = await this.query.agent.sessionByAgentRequest( - account, - status, - limit, - orderDesc, - key, - expireTime + account, status, expireTime,limit, orderDesc, key ); return result; } @@ -381,4 +457,9 @@ export class NesaClient { const result = await this.query.agent.VRFSeedRequest(account); return result; } + + public async getModel(modelName: string): Promise { + const result = await this.query.dht.getModel(modelName); + return result; + } } diff --git a/src/queries.ts b/src/queries.ts index 40ba5c3..1d1772a 100644 --- a/src/queries.ts +++ b/src/queries.ts @@ -4,48 +4,20 @@ import { } from "@cosmjs/stargate"; import { QueryClientImpl as ClientQuery, - // QueryModelAllResponse, - // QueryModelResponse, - QueryParamsResponse, - QueryInferenceAgentResponse, - QuerySessionResponse, - QueryVRFSeedResponse, - QuerySessionByAgentResponse, - // QuerySessionByAgentResponse } from "./codec/agent/v1/query"; -// ./codec/agent/v1/query import { SessionStatus } from "./codec/agent/v1/agent"; -// import { -// SessionStatus -// } from './codec/agent/v1/agent'; +import { toTimestamp } from "./codec/helpers"; +import { + QueryClientImpl as DHTClientQuery, +} from "./codec/dht/v1/query"; -export interface AgentExtension { - readonly agent: { - // readonly modelRequest: (name: string) => Promise; - // readonly modelRequestAll: (key: Uint8Array, offset: Long, limit: Long, countTotal: boolean, reverse: boolean) => Promise; - readonly params: () => Promise; - readonly inferenceAgentRequest: (account: string, modelName: string, limit: Long, key: Uint8Array) => Promise; - readonly sessionRequest: (id: string) => Promise; - readonly sessionByAgentRequest: (account: string, status: SessionStatus, limit: Long, orderDesc: boolean, key: Uint8Array, expireTime?: Date) => Promise; - readonly VRFSeedRequest: (account: string) => Promise; - }; -} -// public async getSessionByAgent(account: string, status: SessionStatus, limit: Long, orderDesc: boolean, key: Uint8Array, expireTime?: Date): Promise { -// const result = await this.query.agent.sessionByAgentRequest(account, status, expireTime, limit, orderDesc, key); -// return result; -// } -export function setupAgentExtension(base: QueryClient): AgentExtension { + +export function setupAgentExtension(base: QueryClient) { const rpc = createProtobufRpcClient(base); const agentQueryService = new ClientQuery(rpc); return { agent: { - // modelRequest: async (name: string) => { - // return await agentQueryService.ModelRequest({ name }); - // }, - // modelRequestAll: async (key: Uint8Array, offset: Long, limit: Long, countTotal: boolean, reverse: boolean) => { - // return await agentQueryService.ModelRequestAll({pagination: {key, offset, limit, countTotal, reverse}}); - // }, params: async () => { return await agentQueryService.Params({}); }, @@ -55,12 +27,27 @@ export function setupAgentExtension(base: QueryClient): AgentExtension { sessionRequest: async (id: string) => { return await agentQueryService.SessionRequest({ id }); }, - sessionByAgentRequest: async (account: string, status: SessionStatus, limit: Long, orderDesc: boolean, key: Uint8Array, expireTime?: Date) => { - return await agentQueryService.SessionByAgentRequest({ account, status, expireTime, limit, orderDesc, key }); + sessionByAgentRequest: async (account: string, status: SessionStatus | undefined,expireTime: Date, limit: Long, orderDesc: boolean, key: Uint8Array) => { + return await agentQueryService.SessionByAgentRequest({ account, status, expireTime: toTimestamp(expireTime), limit, orderDesc, key }); }, VRFSeedRequest: async (account: string) => { return await agentQueryService.VRFSeedRequest({ account }); } } } -} \ No newline at end of file +} + +export function setupDHTExtension(base: QueryClient) { + const rpc = createProtobufRpcClient(base); + const dhtQueryService = new DHTClientQuery(rpc); + + return { + dht: { + getModel: async (modelName: string) => { + return await dhtQueryService.GetModel({ + modelName + }); + }, + } + } +} diff --git a/src/walletOperation.ts b/src/walletOperation.ts index d2da383..34380e7 100644 --- a/src/walletOperation.ts +++ b/src/walletOperation.ts @@ -5,6 +5,7 @@ import { ChainInfo } from "@keplr-wallet/types"; import EncryptUtils from "./encryptUtils"; import Long from "long"; import type { CosmjsOfflineSigner } from "@leapwallet/cosmos-snap-provider"; +import { QueryGetModelResponse } from "./codec/dht/v1/query"; class WalletOperation { static async getNesaClient( @@ -46,8 +47,11 @@ class WalletOperation { ) { EncryptUtils.generateKey(recordId); - const res = await EncryptUtils.requestVrf(recordId, client, offlineSigner); - + const [resVrf, resModel] = await Promise.all([ + EncryptUtils.requestVrf(recordId, client, offlineSigner), + this.requestModel(client, modelName) + ]) + const fee = { amount: [ { denom: chainInfo.feeCurrencies[0].coinMinimalDenom, amount: "6" }, @@ -55,17 +59,15 @@ class WalletOperation { gas: "200000", }; - if (res?.vrf && res?.sessionId) { - return client.signRegisterSession( - res.sessionId, - modelName, - fee, - { denom: denom, amount: lockAmount }, - res.vrf - ); - } + const lockBalance = { denom: denom, amount: lockAmount }; - throw new Error("Vrf seed is null"); + if (!(resVrf?.vrf && resVrf?.sessionId)) { + throw new Error('Vrf seed is null') + } else if (!(resModel?.model && resModel.model?.tokenPrice)) { + throw new Error('Model tokenPrice is null') + } else { + return client.signRegisterSession(resVrf.sessionId, modelName, fee, lockBalance, resVrf.vrf, resModel.model.tokenPrice); + } } static requestAgentInfo( @@ -102,6 +104,10 @@ class WalletOperation { const account: AccountData = (await offlineSigner.getAccounts())[0]; return client.getVRFSeed(account.address); } + + static requestModel(client: NesaClient, modelName: string): Promise { + return client.getModel(modelName); + } } export default WalletOperation; From 452070e9ff14af24b4d229d080a3cc0fbb8a762a Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Tue, 10 Sep 2024 11:06:01 +0800 Subject: [PATCH 02/16] update agentQuery and dhtQuery --- src/client.ts | 93 +++++++++++++++++++++++++++++++++++++++++++++++--- src/queries.ts | 88 +++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 174 insertions(+), 7 deletions(-) diff --git a/src/client.ts b/src/client.ts index 2c11330..6de1b69 100644 --- a/src/client.ts +++ b/src/client.ts @@ -19,15 +19,16 @@ import { MsgSubmitPayment, VRF, } from "./codec/agent/v1/tx"; -import { Payment, Params, SessionStatus,TokenPrice } from "./codec/agent/v1/agent"; +import { Payment, Params, SessionStatus,TokenPrice, AgentModelStatus } from "./codec/agent/v1/agent"; import { Coin } from "./codec/cosmos/base/v1beta1/coin"; import { setupAgentExtension,setupDHTExtension } from "./queries"; import { StdFee } from "@cosmjs/amino"; import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx"; import { sha256 } from "@cosmjs/crypto"; import { toHex } from "@cosmjs/encoding"; -import { QueryGetModelResponse } from "./codec/dht/v1/query"; import { MsgRegisterModel, MsgUpdateModel } from "./codec/dht/v1/tx"; +import { PageRequest } from "./codec/cosmos/base/query/v1beta1/pagination"; +import { Availability, InferenceType } from "./codec/dht/v1/orchestrator"; export type NesaClientOptions = SigningStargateClientOptions & { logger?: Logger; @@ -434,6 +435,17 @@ export class NesaClient { return result; } + public async getAgentByModel( + modelName: string, + status: AgentModelStatus + ) { + const result = await this.query.agent.agentByModelRequest( + modelName, + status + ); + return result; + } + public async getSession(sessionId: string) { const result = await this.query.agent.sessionRequest(sessionId); return result; @@ -448,7 +460,25 @@ export class NesaClient { key: Uint8Array ) { const result = await this.query.agent.sessionByAgentRequest( - account, status, expireTime,limit, orderDesc, key + account, + status, + expireTime, + limit, + orderDesc, + key + ); + return result; + } + + public async getSessionByChallenge( + account: string, + limit: Long, + key: Uint8Array + ) { + const result = await this.query.agent.sessionByChallengeRequest( + account, + limit, + key ); return result; } @@ -458,8 +488,63 @@ export class NesaClient { return result; } - public async getModel(modelName: string): Promise { + public async getDhtParams() { + const result = await this.query.dht.params(); + return result; + } + + public async getModel(modelName: string) { const result = await this.query.dht.getModel(modelName); return result; } + + public async getModelBlocks(modelName: string, pagination?: PageRequest) { + const result = await this.query.dht.getModelBlocks(modelName,pagination); + return result; + } + + public async getNode(nodeId: string) { + const result = await this.query.dht.getNode(nodeId); + return result; + } + + public async getMiner(nodeId: string) { + const result = await this.query.dht.getMiner(nodeId); + return result; + } + + public async getOrchestrator(nodeId: string) { + const result = await this.query.dht.getOrchestrator(nodeId); + return result; + } + + public async getAllOrchestrator(pagination?: PageRequest) { + const result = await this.query.dht.getAllOrchestrator(pagination); + return result; + } + + public async getOrchestratorsByParams( + inferenceType: InferenceType, + availability: Availability, + limit: number, + key: Uint8Array + ) { + const result = await this.query.dht.getOrchestratorsByParams( + inferenceType, + availability, + limit, + key + ); + return result; + } + + public async getOrchestratorHeartbeat(nodeId: string) { + const result = await this.query.dht.getOrchestratorHeartbeat(nodeId); + return result; + } + + public async getMinerHeartbeat(nodeId: string) { + const result = await this.query.dht.getMinerHeartbeat(nodeId); + return result; + } } diff --git a/src/queries.ts b/src/queries.ts index 1d1772a..b59371a 100644 --- a/src/queries.ts +++ b/src/queries.ts @@ -5,11 +5,13 @@ import { import { QueryClientImpl as ClientQuery, } from "./codec/agent/v1/query"; -import { SessionStatus } from "./codec/agent/v1/agent"; +import { AgentModelStatus, SessionStatus } from "./codec/agent/v1/agent"; import { toTimestamp } from "./codec/helpers"; import { QueryClientImpl as DHTClientQuery, } from "./codec/dht/v1/query"; +import { PageRequest } from "./codec/cosmos/base/query/v1beta1/pagination"; +import { Availability, InferenceType } from "./codec/dht/v1/orchestrator"; export function setupAgentExtension(base: QueryClient) { @@ -21,15 +23,40 @@ export function setupAgentExtension(base: QueryClient) { params: async () => { return await agentQueryService.Params({}); }, - inferenceAgentRequest: async (account: string, modelName: string, limit: Long, key: Uint8Array) => { + inferenceAgentRequest: async ( + account: string, + modelName: string, + limit: Long, + key: Uint8Array + ) => { return await agentQueryService.InferenceAgentRequest({ account, modelName, limit, key }); }, + agentByModelRequest: async ( + modelName: string, + status: AgentModelStatus + ) => { + return await agentQueryService.AgentByModelRequest({ modelName, status }); + }, sessionRequest: async (id: string) => { return await agentQueryService.SessionRequest({ id }); }, - sessionByAgentRequest: async (account: string, status: SessionStatus | undefined,expireTime: Date, limit: Long, orderDesc: boolean, key: Uint8Array) => { + sessionByAgentRequest: async ( + account: string, + status: SessionStatus | undefined, + expireTime: Date, + limit: Long, + orderDesc: boolean, + key: Uint8Array + ) => { return await agentQueryService.SessionByAgentRequest({ account, status, expireTime: toTimestamp(expireTime), limit, orderDesc, key }); }, + sessionByChallengeRequest: async ( + account: string, + limit: Long, + key: Uint8Array + ) => { + return await agentQueryService.SessionByChallengeRequest({ account, limit, key }); + }, VRFSeedRequest: async (account: string) => { return await agentQueryService.VRFSeedRequest({ account }); } @@ -43,11 +70,66 @@ export function setupDHTExtension(base: QueryClient) { return { dht: { + params: async () => { + return await dhtQueryService.Params({}); + }, getModel: async (modelName: string) => { return await dhtQueryService.GetModel({ modelName }); }, + getModelBlocks: async ( + modelName: string, + pagination?: PageRequest + ) => { + return await dhtQueryService.GetModelBlocks({ + modelName, + pagination + }); + }, + getNode: async (nodeId: string) => { + return await dhtQueryService.GetNode({ + nodeId + }); + }, + getMiner: async (nodeId: string) => { + return await dhtQueryService.GetMiner({ + nodeId + }); + }, + getOrchestrator: async (nodeId: string) => { + return await dhtQueryService.GetOrchestrator({ + nodeId + }); + }, + getAllOrchestrator: async (pagination?: PageRequest) => { + return await dhtQueryService.GetAllOrchestrator({ + pagination + }); + }, + getOrchestratorsByParams: async ( + inferenceType: InferenceType, + availability: Availability, + limit: number, + key: Uint8Array + ) => { + return await dhtQueryService.GetOrchestratorsByParams({ + inferenceType, + availability, + limit, + key + }); + }, + getOrchestratorHeartbeat: async (nodeId: string) => { + return await dhtQueryService.GetOrchestratorHeartbeat({ + nodeId + }); + }, + getMinerHeartbeat: async (nodeId: string) => { + return await dhtQueryService.GetMinerHeartbeat({ + nodeId + }); + }, } } } From b9d84d83fe865b8faf74183ca7be1720038d71e2 Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Tue, 10 Sep 2024 11:15:26 +0800 Subject: [PATCH 03/16] build update dist --- build/.tsbuildinfo | 2 +- dist/client.d.ts | 30 +- dist/client.js | 112 +- dist/codec/agent/module/v1/module.d.ts | 20 +- dist/codec/agent/module/v1/module.js | 55 +- dist/codec/agent/v1/agent.d.ts | 827 ++- dist/codec/agent/v1/agent.js | 1138 ++-- dist/codec/agent/v1/genesis.d.ts | 2226 +++---- dist/codec/agent/v1/genesis.js | 124 +- dist/codec/agent/v1/query.d.ts | 1457 +++-- dist/codec/agent/v1/query.js | 711 ++- dist/codec/agent/v1/tx.d.ts | 444 +- dist/codec/agent/v1/tx.js | 834 +-- dist/codec/amino/amino.d.ts | 2 +- dist/codec/amino/amino.js | 5 +- dist/codec/cosmos/app/v1alpha1/module.d.ts | 38 +- dist/codec/cosmos/app/v1alpha1/module.js | 120 +- dist/codec/cosmos/bank/v1beta1/authz.d.ts | 38 + dist/codec/cosmos/bank/v1beta1/authz.js | 83 + dist/codec/cosmos/bank/v1beta1/bank.d.ts | 263 + dist/codec/cosmos/bank/v1beta1/bank.js | 512 ++ dist/codec/cosmos/bank/v1beta1/genesis.d.ts | 224 + dist/codec/cosmos/bank/v1beta1/genesis.js | 193 + dist/codec/cosmos/bank/v1beta1/query.d.ts | 1083 ++++ dist/codec/cosmos/bank/v1beta1/query.js | 822 +++ dist/codec/cosmos/bank/v1beta1/tx.d.ts | 175 + dist/codec/cosmos/bank/v1beta1/tx.js | 263 + .../cosmos/base/query/v1beta1/pagination.d.ts | 39 +- .../cosmos/base/query/v1beta1/pagination.js | 165 +- dist/codec/cosmos/base/v1beta1/coin.d.ts | 61 +- dist/codec/cosmos/base/v1beta1/coin.js | 169 +- dist/codec/cosmos/msg/v1/msg.d.ts | 2 +- dist/codec/cosmos/msg/v1/msg.js | 5 +- dist/codec/cosmos_proto/cosmos.d.ts | 98 - dist/codec/cosmos_proto/cosmos.js | 188 +- dist/codec/dht/module/v1/module.d.ts | 23 + dist/codec/dht/module/v1/module.js | 78 + dist/codec/dht/v1/deposit.d.ts | 120 + dist/codec/dht/v1/deposit.js | 167 + dist/codec/dht/v1/genesis.d.ts | 1619 +++++ dist/codec/dht/v1/genesis.js | 305 + dist/codec/dht/v1/miner.d.ts | 376 ++ dist/codec/dht/v1/miner.js | 218 + dist/codec/dht/v1/model.d.ts | 97 + dist/codec/dht/v1/model.js | 181 + dist/codec/dht/v1/model_block.d.ts | 27 + dist/codec/dht/v1/model_block.js | 111 + dist/codec/dht/v1/node.d.ts | 104 + dist/codec/dht/v1/node.js | 189 + dist/codec/dht/v1/orchestrator.d.ts | 270 + dist/codec/dht/v1/orchestrator.js | 268 + dist/codec/dht/v1/params.d.ts | 368 ++ dist/codec/dht/v1/params.js | 210 + dist/codec/dht/v1/query.d.ts | 2668 +++++++++ dist/codec/dht/v1/query.js | 1170 ++++ dist/codec/dht/v1/reputation.d.ts | 80 + dist/codec/dht/v1/reputation.js | 91 + dist/codec/dht/v1/tx.d.ts | 1649 +++++ dist/codec/dht/v1/tx.js | 2405 ++++++++ dist/codec/gogoproto/gogo.d.ts | 2 +- dist/codec/gogoproto/gogo.js | 5 +- dist/codec/google/api/annotations.d.ts | 2 +- dist/codec/google/api/annotations.js | 5 +- dist/codec/google/api/http.d.ts | 172 +- dist/codec/google/api/http.js | 164 +- dist/codec/google/protobuf/descriptor.d.ts | 5325 +++++++---------- dist/codec/google/protobuf/descriptor.js | 1480 +++-- dist/codec/google/protobuf/duration.d.ts | 24 +- dist/codec/google/protobuf/duration.js | 71 +- dist/codec/google/protobuf/timestamp.d.ts | 35 +- dist/codec/google/protobuf/timestamp.js | 71 +- dist/codec/helpers.d.ts | 82 + dist/codec/helpers.js | 182 + dist/codec/index.d.ts | 0 dist/codec/index.js | 3 + dist/codec/json-safe.d.ts | 8 + dist/codec/json-safe.js | 9 + dist/queries.d.ts | 39 +- dist/queries.js | 87 +- dist/walletOperation.d.ts | 2 + dist/walletOperation.js | 22 +- 81 files changed, 24901 insertions(+), 8211 deletions(-) create mode 100644 dist/codec/cosmos/bank/v1beta1/authz.d.ts create mode 100644 dist/codec/cosmos/bank/v1beta1/authz.js create mode 100644 dist/codec/cosmos/bank/v1beta1/bank.d.ts create mode 100644 dist/codec/cosmos/bank/v1beta1/bank.js create mode 100644 dist/codec/cosmos/bank/v1beta1/genesis.d.ts create mode 100644 dist/codec/cosmos/bank/v1beta1/genesis.js create mode 100644 dist/codec/cosmos/bank/v1beta1/query.d.ts create mode 100644 dist/codec/cosmos/bank/v1beta1/query.js create mode 100644 dist/codec/cosmos/bank/v1beta1/tx.d.ts create mode 100644 dist/codec/cosmos/bank/v1beta1/tx.js create mode 100644 dist/codec/dht/module/v1/module.d.ts create mode 100644 dist/codec/dht/module/v1/module.js create mode 100644 dist/codec/dht/v1/deposit.d.ts create mode 100644 dist/codec/dht/v1/deposit.js create mode 100644 dist/codec/dht/v1/genesis.d.ts create mode 100644 dist/codec/dht/v1/genesis.js create mode 100644 dist/codec/dht/v1/miner.d.ts create mode 100644 dist/codec/dht/v1/miner.js create mode 100644 dist/codec/dht/v1/model.d.ts create mode 100644 dist/codec/dht/v1/model.js create mode 100644 dist/codec/dht/v1/model_block.d.ts create mode 100644 dist/codec/dht/v1/model_block.js create mode 100644 dist/codec/dht/v1/node.d.ts create mode 100644 dist/codec/dht/v1/node.js create mode 100644 dist/codec/dht/v1/orchestrator.d.ts create mode 100644 dist/codec/dht/v1/orchestrator.js create mode 100644 dist/codec/dht/v1/params.d.ts create mode 100644 dist/codec/dht/v1/params.js create mode 100644 dist/codec/dht/v1/query.d.ts create mode 100644 dist/codec/dht/v1/query.js create mode 100644 dist/codec/dht/v1/reputation.d.ts create mode 100644 dist/codec/dht/v1/reputation.js create mode 100644 dist/codec/dht/v1/tx.d.ts create mode 100644 dist/codec/dht/v1/tx.js create mode 100644 dist/codec/helpers.d.ts create mode 100644 dist/codec/helpers.js create mode 100644 dist/codec/index.d.ts create mode 100644 dist/codec/index.js create mode 100644 dist/codec/json-safe.d.ts create mode 100644 dist/codec/json-safe.js diff --git a/build/.tsbuildinfo b/build/.tsbuildinfo index 6227501..1d6b53a 100644 --- a/build/.tsbuildinfo +++ b/build/.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/@types/long/index.d.ts","../node_modules/protobufjs/minimal.d.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70","932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200",{"version":"10ea2ca8bd2cc91d49be2d0db635741d9fdff4d80693544f8e84db9c6ea7494a","signature":"0b5afef6bd6dff56ff8a450cd776016686025d29cd05e89102394f24f22113cf"},{"version":"bf772bad2889fef52a13c4f18472e811e73fcaf5dc8b065053d7d3c31e61dbf0","signature":"78966b29fb36c9d8255fb6aa143384b8f79fb0d49a13f60f2d7c9d676e75cc59"},{"version":"8857c839b414a5b7d93d28ef6e8df12569810e06ca9435bece4af3674dc05f9f","signature":"c53d81b45fcca5d77e6c83fc052442d287a6717a70ec8f7569cf3951b120b224"},{"version":"b599d621d255d1bd478cc3b3af972d88bd54f546f2823d3a52370a3303bafbf6","signature":"b539409ee006827f4ce6bef47d210f18b6ab1ec7dad6c20cc0bc974ef7c6d212"},{"version":"92df5e16259a02ba4b8a412122204de067ea377d2d19c4d3d6d2f1a1adf674bd","signature":"0f45e81a682a12a088b53eda7e6303a340370580886b503f32b9b6c91da9b047"},{"version":"ec30821f00de282961f6175736e6dcbc94fded41c880801f420ff6833e2def2e","signature":"932307bedfba47798fa2b138e1dda1f50791d9d7f9e4cf83a3f018b810efdac4"},{"version":"081311a94497112e4259f6069b9df6f581270752575a0bddef7e78880d937dde","signature":"67ad9fe9b0b81a7e2749ea52c9c0d5f5e6e80c237cf047185eb80e6d68c4bc81"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"446d3b8914127a8891cf1d9b4b693688de1902d841d17f78f11c4bbd2dc234c5","signature":"9109dd9e7ed3a704ed5e02800dd1115413a0e0793ba364993b2ea75e5c2626fa"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"3ec2fc05dca9c94723681bd455bc8fd6d99c05806314d9b9df700f3d5c599d59","signature":"27db5f9a1499455fbc72ad4de9684f9f5ba09784ad888f1b9e476f9968ca1785"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"71fb46c506006f1967e7f4bf80e48939a943245876026508be5d695b41411bed","signature":"90a17908ba188b01a64b3d563a6a206145fbf196dfd351b569b7b30a398d183c"},{"version":"69b66496eaea7649272c5793b2835bdd5214a170af0edc451be6b7e6e7de43ba","signature":"9d15c9f74a05da1c82370bb4967ce3cfb9fe4cbcd67432a4326e4faf3d569e94"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"5cdd6f0d3cf68909f968efa357a521efdf604b654e9f3cd9ea87b0efd5f62f53","signature":"37992ec0c6d7b8b3b0ab87ec3e695cbccbc9abfa1530bbef699b4355b81c4c15"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"738f65f67fe0500163d0df149b5cd0fcb924483b58c88d25b4538c0815219dd5","signature":"474d1a3428a5354bd3a2841453d3196a69d6475144486fe46af31213bf775f32"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"dc10907e5d2cd07e38adef0928d8ec2c3a9212f9ace1ae38f5b3c705a60c4a54","signature":"f438e918876ce08248eeea3147fc9cafd454b5e6731e37c36bed9542ed0a8075"},{"version":"30492db5e1b5d7958cea7d730caad25adee113a7f53ea365e9314f5a83d39758","signature":"338d143a7a62a20217d97fb70baa0ad9d5d263459ace32add41e284421afd60e"},{"version":"8deadf5c8d72fb9bd02564f8c00ca8529be2fd154c565f54e02b7c4c46c44993","signature":"6f3ee38e05fe88caea9a40c807987a2b6ab4d38d849a652cacd6c0fb6d7db837"},{"version":"1b4571c2aac162e8471e396005472ef6cd7754077799f8160931c910cd2a4362","signature":"a8bc0ccd0039ff0f896edef9322dc04fc7d4052133028d966807c5ac29c6c405"},{"version":"063e11d2e1bc14639f77344346a92feba03bb4e2d428750abb800d05136946ba","signature":"168b69a3c938bd3f94d77cda810d4b9dbf2de8867ced3aacf1407f6eb502d6fb"},{"version":"2d20ec78b1c5bd778f38e2aa7393dedcda16c69e0d9802b4c4228f5a0ea7dc7b","signature":"09958393fb4cee70234ead6e3ec16470e718819d2f54b42fe9d41a32783e2796"},{"version":"062058cd642c230bcf6091456399da5e07553b1d5c20f178b961759122a3c787","signature":"b4ee715a7bfa69433b68402b2a9b0814b584b20ca7538b4288cf27eaa61a847d"},{"version":"c418d9e00b3365127a80294bd16ff23fa3bfa44aa7bb7dc4bdee7c869c08723a","signature":"be70b50dffa564b1c506e069a28973b2fa9ead1abceb21010b1525d5d0364f72"},{"version":"66fb8cb099fdc23e9d12a78bce777c6c3e66e584eada5644fe0eb91e0e6f1559","signature":"5f724f08eeeea186ac1a42c477dafe68f70585670f2daa65a019d6d0e9fcd5ca"},{"version":"37c1e398768e380a6796e08c7bac8cb79dbccb9fd26da3e21661533e34810cdd","signature":"f07c6a628410ae9d4c455907710a54c988ecce5d114dd1fa29c474760cb5f955"},{"version":"6fb56fa1b85e88c507181d08e4d23a974e18743fb2111c81aa3df81af460fb92","signature":"f8e0e5339074148a9ac34ef3c643b30524336a66c79a18a7c7104852dc81957f"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc"],"root":[218,219,[222,228],236,[256,259],[261,276]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[229,230,231,232,233,234],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[237,238,239],[220,242],[220],[237,238,239,240,241,242,243,244,245,247,248],[246],[220,240,241,242,243,244,245],[242,243,247],[77,84,95,252],[252,253,254],[77,84,252],[77,251],[250],[277],[312],[313,318,347],[314,325,326,333,344,355],[314,315,325,333],[316,356],[317,318,326,334],[318,344,352],[319,321,325,333],[312,320],[321,322],[325],[323,325],[312,325],[325,326,327,344,355],[325,326,327,340,344,347],[310,313,360],[321,325,328,333,344,355],[325,326,328,329,333,344,352,355],[328,330,344,352,355],[277,278,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362],[325,331],[332,355,360],[321,325,333,344],[334],[335],[312,336],[337,354,360],[338],[339],[325,340,341],[340,342,356,358],[313,325,344,345,346,347],[313,344,346],[344,345],[347],[348],[312,344],[325,350,351],[350,351],[318,333,344,352],[353],[333,354],[313,328,339,355],[318,356],[344,357],[332,358],[359],[313,318,325,327,336,344,355,358,360],[344,361],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[287,291,355],[287,344,355],[282],[284,287,352,355],[333,352],[363],[282,363],[284,287,333,355],[279,280,283,286,313,325,344,355],[279,285],[283,287,313,347,355,363],[313,363],[303,313,363],[281,282,363],[287],[281,282,283,284,285,286,287,288,289,291,292,293,294,295,296,297,298,299,300,301,302,304,305,306,307,308,309],[287,294,295],[285,287,295,296],[286],[279,282,287],[287,291,295,296],[291],[285,287,290,355],[279,284,285,287,291,294],[313,344],[282,287,303,313,360,363],[68,95,236,249,255,256,257,258,259,260,261,262,276],[68,77,84,95,126,217,218,219,222,225,226,228,235],[220,221],[220,221,222,223,224],[220,221,225],[220,221,224,225],[220,221,222,225],[249],[47,218,226,236,255,256,276],[225],[255],[256,263],[217,225,227],[257],[68,217,276],[95,217,220,236,249,255,257],[236,249],[77,95,126,217,219,222,225,226,227,228],[220,221,222,223],[220,221,222,223,225],[226,236,255],[217],[227,236,249,255]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[235,12],[233,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[240,75],[245,76],[242,77],[249,78],[247,79],[246,80],[248,81],[254,82],[255,83],[253,84],[252,85],[251,86],[277,87],[278,87],[312,88],[313,89],[314,90],[315,91],[316,92],[317,93],[318,94],[319,95],[320,96],[321,97],[322,97],[324,98],[323,99],[325,100],[326,101],[327,102],[311,103],[328,104],[329,105],[330,106],[363,107],[331,108],[332,109],[333,110],[334,111],[335,112],[336,113],[337,114],[338,115],[339,116],[340,117],[341,117],[342,118],[344,119],[346,120],[345,121],[347,122],[348,123],[349,124],[350,125],[351,126],[352,127],[353,128],[354,129],[355,130],[356,131],[357,132],[358,133],[359,134],[360,135],[361,136],[139,137],[141,138],[144,139],[147,140],[145,141],[205,142],[132,143],[83,143],[81,143],[151,139],[154,144],[152,145],[160,146],[161,147],[164,146],[167,148],[165,149],[181,143],[191,143],[195,150],[194,151],[203,152],[200,153],[201,154],[82,155],[208,156],[84,157],[172,137],[79,143],[159,143],[138,143],[177,158],[176,143],[174,159],[178,160],[179,161],[173,162],[180,163],[182,164],[183,165],[184,166],[189,167],[199,168],[186,143],[130,143],[207,169],[206,170],[198,171],[188,172],[187,173],[185,143],[221,174],[294,175],[301,176],[293,175],[308,177],[285,178],[284,179],[307,180],[302,181],[305,182],[287,183],[286,184],[282,185],[281,186],[304,187],[283,188],[288,189],[292,189],[310,190],[309,189],[296,191],[297,192],[299,193],[295,194],[298,195],[303,180],[290,196],[291,197],[300,198],[280,199],[306,200],[263,201],[236,202],[265,203],[225,204],[266,205],[227,206],[226,207],[268,203],[269,203],[222,203],[271,203],[274,203],[275,203],[223,203],[224,203],[258,208],[257,209],[261,210],[262,211],[264,212],[228,213],[259,214],[218,215],[256,216]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[235,12],[233,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[240,75],[245,76],[242,77],[249,78],[247,79],[246,80],[248,81],[254,82],[255,83],[253,84],[252,85],[251,86],[277,87],[278,87],[312,88],[313,89],[314,90],[315,91],[316,92],[317,93],[318,94],[319,95],[320,96],[321,97],[322,97],[324,98],[323,99],[325,100],[326,101],[327,102],[311,103],[328,104],[329,105],[330,106],[363,107],[331,108],[332,109],[333,110],[334,111],[335,112],[336,113],[337,114],[338,115],[339,116],[340,117],[341,117],[342,118],[344,119],[346,120],[345,121],[347,122],[348,123],[349,124],[350,125],[351,126],[352,127],[353,128],[354,129],[355,130],[356,131],[357,132],[358,133],[359,134],[360,135],[361,136],[139,137],[141,138],[144,139],[147,140],[145,141],[205,142],[132,143],[83,143],[81,143],[151,139],[154,144],[152,145],[160,146],[161,147],[164,146],[167,148],[165,149],[181,143],[191,143],[195,150],[194,151],[203,152],[200,153],[201,154],[82,155],[208,156],[84,157],[172,137],[79,143],[159,143],[138,143],[177,158],[176,143],[174,159],[178,160],[179,161],[173,162],[180,163],[182,164],[183,165],[184,166],[189,167],[199,168],[186,143],[130,143],[207,169],[206,170],[198,171],[188,172],[187,173],[185,143],[221,174],[294,175],[301,176],[293,175],[308,177],[285,178],[284,179],[307,180],[302,181],[305,182],[287,183],[286,184],[282,185],[281,186],[304,187],[283,188],[288,189],[292,189],[310,190],[309,189],[296,191],[297,192],[299,193],[295,194],[298,195],[303,180],[290,196],[291,197],[300,198],[280,199],[306,200],[263,217],[236,218],[265,203],[225,219],[266,220],[227,220],[226,220],[268,203],[269,203],[222,203],[271,203],[274,203],[275,203],[223,203],[224,203],[258,208],[257,221],[261,210],[262,211],[264,212],[228,213],[218,222],[256,223]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,229,230,231,232,235,233,234,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,238,239,240,245,242,237,241,249,243,244,247,246,248,254,255,253,252,250,251,47,220,277,278,312,313,314,315,316,317,318,319,320,321,322,324,323,325,326,327,311,362,328,329,330,363,331,332,333,334,335,336,337,338,339,340,341,342,343,344,346,345,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,260,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,221,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,294,301,293,308,285,284,307,302,305,287,286,282,281,304,283,288,289,292,279,310,309,296,297,299,295,298,303,290,291,300,280,306,100,263,236,265,225,266,227,226,267,268,269,222,270,271,272,273,274,275,223,224,258,257,261,262,264,219,228,259,276,218,256]},"version":"5.4.5"} \ No newline at end of file +{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"89d5c71600191bf39281855f60620ee6a74554babbc6566b555612281bb1a40f","signature":"320ab7fcc4c4beddde59aceebe26136aeeeede6b695f9fa5cdcf54e4965b18d3"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"7a0b78230e1475dfe816390a8ac8307f443191a16a47e7d66c5c1b842af40049","signature":"fe525a4018ce2e4d24852a1c4b00ef11e3d05b274c596e822c42436345f692ca"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"71fb46c506006f1967e7f4bf80e48939a943245876026508be5d695b41411bed","signature":"90a17908ba188b01a64b3d563a6a206145fbf196dfd351b569b7b30a398d183c"},{"version":"69b66496eaea7649272c5793b2835bdd5214a170af0edc451be6b7e6e7de43ba","signature":"9d15c9f74a05da1c82370bb4967ce3cfb9fe4cbcd67432a4326e4faf3d569e94"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"5cdd6f0d3cf68909f968efa357a521efdf604b654e9f3cd9ea87b0efd5f62f53","signature":"37992ec0c6d7b8b3b0ab87ec3e695cbccbc9abfa1530bbef699b4355b81c4c15"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"738f65f67fe0500163d0df149b5cd0fcb924483b58c88d25b4538c0815219dd5","signature":"474d1a3428a5354bd3a2841453d3196a69d6475144486fe46af31213bf775f32"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file diff --git a/dist/client.d.ts b/dist/client.d.ts index 0b132a3..e4e6775 100644 --- a/dist/client.d.ts +++ b/dist/client.d.ts @@ -4,10 +4,12 @@ import { SigningStargateClient, SigningStargateClientOptions, GasPrice, Event, Q import { CometClient } from "@cosmjs/tendermint-rpc"; import { Logger } from "./logger"; import { VRF } from "./codec/agent/v1/tx"; -import { Payment, Params, SessionStatus } from "./codec/agent/v1/agent"; +import { Payment, Params, SessionStatus, TokenPrice, AgentModelStatus } from "./codec/agent/v1/agent"; import { Coin } from "./codec/cosmos/base/v1beta1/coin"; -import { AgentExtension } from "./queries"; +import { setupAgentExtension, setupDHTExtension } from "./queries"; import { StdFee } from "@cosmjs/amino"; +import { PageRequest } from "./codec/cosmos/base/query/v1beta1/pagination"; +import { Availability, InferenceType } from "./codec/dht/v1/orchestrator"; export type NesaClientOptions = SigningStargateClientOptions & { logger?: Logger; gasPrice: GasPrice; @@ -30,9 +32,9 @@ export declare class NesaClient { readonly signByModel: { [modelName: string]: SigningStargateClient; }; - readonly query: QueryClient & AgentExtension; + readonly query: QueryClient & ReturnType & ReturnType; readonly queryByModel: { - [modelName: string]: QueryClient & AgentExtension; + [modelName: string]: QueryClient & ReturnType & ReturnType; }; readonly tm: CometClient; readonly tmByModel: { @@ -53,15 +55,29 @@ export declare class NesaClient { updateParams(authority: string, params: Params): Promise; registerInferenceAgent(url: string, version: Long): Promise; broadcastRegisterSession(): any; - signRegisterSession(sessionId: string, modelName: string, fee: StdFee, lockBalance?: Coin, vrf?: VRF): Promise<{ + signRegisterSession(sessionId: string, modelName: string, fee: StdFee, lockBalance: Coin, vrf: VRF, tokenPrice: TokenPrice): Promise<{ sessionId: string; transactionHash: string; }>; - registerSession(sessionId: string, modelName: string, lockBalance?: Coin, vrf?: VRF): Promise; + registerSession(sessionId: string, modelName: string, lockBalance: Coin, vrf: VRF, tokenPrice: TokenPrice): Promise; submitPayment(sessionId: string, signature: Uint8Array, payment?: Payment): Promise; + registerModel(creator: string, modelName: string, blockCids: string[], allowList: string[], tokenPrice?: TokenPrice): Promise; + updateModel(modelName: string, allowList: string[], tokenPrice: TokenPrice): Promise; getParams(): Promise; getInferenceAgent(account: string, modelName: string, limit: Long, key: Uint8Array): Promise; + getAgentByModel(modelName: string, status: AgentModelStatus): Promise; getSession(sessionId: string): Promise; - getSessionByAgent(account: string, status: SessionStatus, limit: Long, orderDesc: boolean, key: Uint8Array, expireTime?: Date): Promise; + getSessionByAgent(account: string, status: SessionStatus | undefined, expireTime: Date, limit: Long, orderDesc: boolean, key: Uint8Array): Promise; + getSessionByChallenge(account: string, limit: Long, key: Uint8Array): Promise; getVRFSeed(account: string): Promise; + getDhtParams(): Promise; + getModel(modelName: string): Promise; + getModelBlocks(modelName: string, pagination?: PageRequest): Promise; + getNode(nodeId: string): Promise; + getMiner(nodeId: string): Promise; + getOrchestrator(nodeId: string): Promise; + getAllOrchestrator(pagination?: PageRequest): Promise; + getOrchestratorsByParams(inferenceType: InferenceType, availability: Availability, limit: number, key: Uint8Array): Promise; + getOrchestratorHeartbeat(nodeId: string): Promise; + getMinerHeartbeat(nodeId: string): Promise; } diff --git a/dist/client.js b/dist/client.js index a0605b1..6ad61d6 100644 --- a/dist/client.js +++ b/dist/client.js @@ -11,6 +11,7 @@ const queries_1 = require("./queries"); const tx_2 = require("cosmjs-types/cosmos/tx/v1beta1/tx"); const crypto_1 = require("@cosmjs/crypto"); const encoding_1 = require("@cosmjs/encoding"); +const tx_3 = require("./codec/dht/v1/tx"); function nesaRegistry() { return new proto_signing_1.Registry([ ...stargate_1.defaultRegistryTypes, @@ -20,6 +21,8 @@ function nesaRegistry() { ["/agent.v1.MsgRegisterSession", tx_1.MsgRegisterSession], ["/agent.v1.MsgSubmitPayment", tx_1.MsgSubmitPayment], ["/agent.v1.VRF", tx_1.VRF], + ["/dht.v1.MsgRegisterModel", tx_3.MsgRegisterModel], + ["/dht.v1.MsgUpdateModel", tx_3.MsgUpdateModel], ]); } class NesaClient { @@ -42,7 +45,7 @@ class NesaClient { this.senderAddressByModel = {}; this.sign = signingClient; this.tm = tmClient; - this.query = stargate_1.QueryClient.withExtensions(tmClient, queries_1.setupAgentExtension); + this.query = stargate_1.QueryClient.withExtensions(tmClient, queries_1.setupAgentExtension, queries_1.setupDHTExtension); this.senderAddress = senderAddress; this.chainId = chainId; this.gasPrice = options.gasPrice; @@ -121,7 +124,7 @@ class NesaClient { }); }); } - async signRegisterSession(sessionId, modelName, fee, lockBalance, vrf) { + async signRegisterSession(sessionId, modelName, fee, lockBalance, vrf, tokenPrice) { this.logger.verbose(`Register Session`); const senderAddress = this.senderAddress; const registerSessionMsg = { @@ -132,6 +135,7 @@ class NesaClient { modelName, lockBalance, vrf, + tokenPrice }), }; const signResult = await this.sign.sign(senderAddress, [registerSessionMsg], fee, ""); @@ -144,7 +148,7 @@ class NesaClient { transactionHash: (0, encoding_1.toHex)((0, crypto_1.sha256)(Buffer.from(hex, "hex"))).toUpperCase(), }; } - async registerSession(sessionId, modelName, lockBalance, vrf) { + async registerSession(sessionId, modelName, lockBalance, vrf, tokenPrice) { this.logger.verbose(`Register Session`); const senderAddress = this.senderAddress; const registerSessionMsg = { @@ -155,6 +159,7 @@ class NesaClient { modelName, lockBalance, vrf, + tokenPrice }), }; this.logger.debug("Register Session Message: ", registerSessionMsg); @@ -193,6 +198,53 @@ class NesaClient { height: result.height, }; } + async registerModel(creator, modelName, blockCids, allowList, tokenPrice) { + this.logger.verbose(`Register Model`); + const senderAddress = this.senderAddress; + const registerModelMsg = { + typeUrl: '/dht.v1.MsgRegisterModel', + value: tx_3.MsgRegisterModel.fromPartial({ + creator, + modelName, + blockCids, + allowList, + tokenPrice + }), + }; + this.logger.debug('Register Model Message: ', registerModelMsg); + const result = await this.sign.signAndBroadcast(senderAddress, [registerModelMsg], "auto"); + if ((0, stargate_1.isDeliverTxFailure)(result)) { + throw new Error((0, utils_1.createDeliverTxFailureMessage)(result)); + } + return { + events: result.events, + transactionHash: result.transactionHash, + height: result.height, + }; + } + async updateModel(modelName, allowList, tokenPrice) { + this.logger.verbose(`Update Model`); + const senderAddress = this.senderAddress; + const updateModelMsg = { + typeUrl: '/dht.v1.MsgUpdateModel', + value: tx_3.MsgUpdateModel.fromPartial({ + account: senderAddress, + modelName, + allowList, + tokenPrice + }), + }; + this.logger.debug('Update Model Message: ', updateModelMsg); + const result = await this.sign.signAndBroadcast(senderAddress, [updateModelMsg], "auto"); + if ((0, stargate_1.isDeliverTxFailure)(result)) { + throw new Error((0, utils_1.createDeliverTxFailureMessage)(result)); + } + return { + events: result.events, + transactionHash: result.transactionHash, + height: result.height, + }; + } async getParams() { const result = await this.query.agent.params(); return result; @@ -201,18 +253,66 @@ class NesaClient { const result = await this.query.agent.inferenceAgentRequest(account, modelName, limit, key); return result; } + async getAgentByModel(modelName, status) { + const result = await this.query.agent.agentByModelRequest(modelName, status); + return result; + } async getSession(sessionId) { const result = await this.query.agent.sessionRequest(sessionId); return result; } - async getSessionByAgent(account, status, limit, orderDesc, key, expireTime) { - const result = await this.query.agent.sessionByAgentRequest(account, status, limit, orderDesc, key, expireTime); + async getSessionByAgent(account, status, expireTime, limit, orderDesc, key) { + const result = await this.query.agent.sessionByAgentRequest(account, status, expireTime, limit, orderDesc, key); + return result; + } + async getSessionByChallenge(account, limit, key) { + const result = await this.query.agent.sessionByChallengeRequest(account, limit, key); return result; } async getVRFSeed(account) { const result = await this.query.agent.VRFSeedRequest(account); return result; } + async getDhtParams() { + const result = await this.query.dht.params(); + return result; + } + async getModel(modelName) { + const result = await this.query.dht.getModel(modelName); + return result; + } + async getModelBlocks(modelName, pagination) { + const result = await this.query.dht.getModelBlocks(modelName, pagination); + return result; + } + async getNode(nodeId) { + const result = await this.query.dht.getNode(nodeId); + return result; + } + async getMiner(nodeId) { + const result = await this.query.dht.getMiner(nodeId); + return result; + } + async getOrchestrator(nodeId) { + const result = await this.query.dht.getOrchestrator(nodeId); + return result; + } + async getAllOrchestrator(pagination) { + const result = await this.query.dht.getAllOrchestrator(pagination); + return result; + } + async getOrchestratorsByParams(inferenceType, availability, limit, key) { + const result = await this.query.dht.getOrchestratorsByParams(inferenceType, availability, limit, key); + return result; + } + async getOrchestratorHeartbeat(nodeId) { + const result = await this.query.dht.getOrchestratorHeartbeat(nodeId); + return result; + } + async getMinerHeartbeat(nodeId) { + const result = await this.query.dht.getMinerHeartbeat(nodeId); + return result; + } } exports.NesaClient = NesaClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5REFBZ0U7QUFDaEUsK0NBUTBCO0FBQzFCLDJEQUFtRTtBQUNuRSxxQ0FBOEM7QUFDOUMsbUNBQXdEO0FBQ3hELDRDQU82QjtBQUc3Qix1Q0FBZ0U7QUFFaEUsMERBQTBEO0FBQzFELDJDQUF3QztBQUN4QywrQ0FBeUM7QUFTekMsU0FBUyxZQUFZO0lBQ25CLE9BQU8sSUFBSSx3QkFBUSxDQUFDO1FBQ2xCLEdBQUcsK0JBQW9CO1FBQ3ZCLENBQUMsMkJBQTJCLEVBQUUsb0JBQWUsQ0FBQztRQUM5QyxvREFBb0Q7UUFDcEQsQ0FBQyxxQ0FBcUMsRUFBRSw4QkFBeUIsQ0FBQztRQUNsRSxDQUFDLDhCQUE4QixFQUFFLHVCQUFrQixDQUFDO1FBQ3BELENBQUMsNEJBQTRCLEVBQUUscUJBQWdCLENBQUM7UUFDaEQsQ0FBQyxlQUFlLEVBQUUsUUFBRyxDQUFDO0tBQ3ZCLENBQUMsQ0FBQztBQUNMLENBQUM7QUFlRCxNQUFhLFVBQVU7SUFzQmQsTUFBTSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FDbkMsUUFBZ0IsRUFDaEIsTUFBcUIsRUFDckIsYUFBcUIsRUFDckIsT0FBMkIsRUFDM0IsT0FBMEI7UUFFMUIsTUFBTSxhQUFhLEdBQUc7WUFDcEIsR0FBRyxPQUFPO1lBQ1YsUUFBUSxFQUFFLFlBQVksRUFBRTtTQUN6QixDQUFDO1FBQ0YsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFBLDZCQUFZLEVBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxnQ0FBcUIsQ0FBQyxnQkFBZ0IsQ0FDaEUsUUFBUSxFQUNSLE1BQU0sRUFDTixhQUFhLENBQ2QsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE9BQU8sR0FBRyxNQUFNLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FB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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5REFBZ0U7QUFDaEUsK0NBUTBCO0FBQzFCLDJEQUFtRTtBQUNuRSxxQ0FBOEM7QUFDOUMsbUNBQXdEO0FBQ3hELDRDQU82QjtBQUc3Qix1Q0FBa0U7QUFFbEUsMERBQTBEO0FBQzFELDJDQUF3QztBQUN4QywrQ0FBeUM7QUFDekMsMENBQXFFO0FBV3JFLFNBQVMsWUFBWTtJQUNuQixPQUFPLElBQUksd0JBQVEsQ0FBQztRQUNsQixHQUFHLCtCQUFvQjtRQUN2QixDQUFDLDJCQUEyQixFQUFFLG9CQUFlLENBQUM7UUFDOUMsb0RBQW9EO1FBQ3BELENBQUMscUNBQXFDLEVBQUUsOEJBQXlCLENBQUM7UUFDbEUsQ0FBQyw4QkFBOEIsRUFBRSx1QkFBa0IsQ0FBQztRQUNwRCxDQUFDLDRCQUE0QixFQUFFLHFCQUFnQixDQUFDO1FBQ2hELENBQUMsZUFBZSxFQUFFLFFBQUcsQ0FBQztRQUN0QixDQUFDLDBCQUEwQixFQUFFLHFCQUFnQixDQUFDO1FBQzlDLENBQUMsd0JBQXdCLEVBQUUsbUJBQWMsQ0FBQztLQUMzQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBZUQsTUFBYSxVQUFVO0lBc0JkLE1BQU0sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQ25DLFFBQWdCLEVBQ2hCLE1BQXFCLEVBQ3JCLGFBQXFCLEVBQ3JCLE9BQTJCLEVBQzNCLE9BQTBCO1FBRTFCLE1BQU0sYUFBYSxHQUFHO1lBQ3BCLEdBQUcsT0FBTztZQUNWLFFBQVEsRUFBRSxZQUFZLEVBQUU7U0FDekIsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBQSw2QkFBWSxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sYUFBYSxHQUFHLE1BQU0sZ0NBQXFCLENBQUMsZ0JBQWdCLENBQ2hFLFFBQVEsRUFDUixNQUFNLEVBQ04sYUFBYSxDQUNkLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixPQUFPLEdBQUcsTUFBTSxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0MsQ0FBQztRQUVELE9BQU8sSUFBSSxVQUFVLENBQ25CLGFBQWEsRUFDYixRQUFRLEVBQ1IsYUFBYSxFQUNiLE9BQU8sRUFDUCxPQUFPLENBQ1IsQ0FBQztJQUNKLENBQUM7SUFFRCxZQUNFLGFBQW9DLEVBQ3BDLFFBQXFCLEVBQ3JCLGFBQXFCLEVBQ3JCLE9BQWUsRUFDZixPQUEwQjtRQXZEWixnQkFBVyxHQUN6QixFQUFFLENBQUM7UUFFVyxpQkFBWSxHQUV4QixFQUFFLENBQUM7UUFFUyxjQUFTLEdBQXlDLEVBQUUsQ0FBQztRQUVyRCx5QkFBb0IsR0FBb0MsRUFBRSxDQUFDO1FBZ0R6RSxJQUFJLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQztRQUUxQixJQUFJLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQztRQUVuQixJQUFJLENBQUMsS0FBSyxHQUFHLHNCQUFXLENBQUMsY0FBYyxDQUNyQyxRQUFRLEVBQ1IsNkJBQW1CLEVBQ25CLDJCQUFpQixDQUNsQixDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFFbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLG1CQUFVLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDO1FBQ3JELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxPQUFPLENBQUMsb0JBQW9CLENBQUM7SUFDM0QsQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFZLENBQ3ZCLFNBQWlCLEVBQ2pCLE1BQWM7UUFFZCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNyQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3pDLE1BQU0sZUFBZSxHQUFHO1lBQ3RCLE9BQU8sRUFBRSwyQkFBMkI7WUFDcEMsS0FBSyxFQUFFLG9CQUFlLENBQUMsV0FBVyxDQUFDO2dCQUNqQyxTQUFTO2dCQUNULE1BQU07YUFDUCxDQUFDO1NBQ0gsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQzlELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FDN0MsYUFBYSxFQUNiLENBQUMsZUFBZSxDQUFDLEVBQ2pCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFBLDZCQUFrQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUNELE9BQU87WUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtTQUN0QixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxzQkFBc0IsQ0FDakMsR0FBVyxFQUNYLE9BQWE7UUFFYixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDekMsTUFBTSx5QkFBeUIsR0FBRztZQUNoQyxPQUFPLEVBQUUscUNBQXFDO1lBQzlDLEtBQUssRUFBRSw4QkFBeUIsQ0FBQyxXQUFXLENBQUM7Z0JBQzNDLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixHQUFHO2dCQUNILE9BQU87YUFDUixDQUFDO1NBQ0gsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDBCQUEwQixFQUFFLHlCQUF5QixDQUFDLENBQUM7UUFDekUsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUM3QyxhQUFhLEVBQ2IsQ0FBQyx5QkFBeUIsQ0FBQyxFQUMzQixNQUFNLENBQ1AsQ0FBQztRQUNGLElBQUksSUFBQSw2QkFBa0IsRUFBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsSUFBQSxxQ0FBNkIsRUFBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFFRCxPQUFPO1lBQ0wsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1lBQ3JCLGVBQWUsRUFBRSxNQUFNLENBQUMsZUFBZTtZQUN2QyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07U0FDdEIsQ0FBQztJQUNKLENBQUM7SUFFTSx3QkFBd0I7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQixPQUFPLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDMUIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDL0IsQ0FBQztRQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUN0RCxJQUFJLENBQUMsSUFBSTtpQkFDTixXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO2lCQUNwRSxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDZixJQUFJLElBQUEsNkJBQWtCLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztvQkFDL0IsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLElBQUEscUNBQTZCLEVBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzRCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sT0FBTyxDQUFDO3dCQUNOLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTt3QkFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO3dCQUN2QyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07d0JBQ3JCLE9BQU8sRUFBRSwrQkFBMEIsQ0FBQyxNQUFNLENBQ3hDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUM5QixDQUFDLE9BQU87cUJBQ1YsQ0FBQyxDQUFDO2dCQUNMLENBQUM7WUFDSCxDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sS0FBSyxDQUFDLG1CQUFtQixDQUM5QixTQUFpQixFQUNqQixTQUFpQixFQUNqQixHQUFXLEVBQ1gsV0FBaUIsRUFDakIsR0FBUSxFQUNSLFVBQXNCO1FBRXRCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDeEMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN6QyxNQUFNLGtCQUFrQixHQUFHO1lBQ3pCLE9BQU8sRUFBRSw4QkFBOEI7WUFDdkMsS0FBSyxFQUFFLHVCQUFrQixDQUFDLFdBQVcsQ0FBQztnQkFDcEMsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFNBQVM7Z0JBQ1QsU0FBUztnQkFDVCxXQUFXO2dCQUNYLEdBQUc7Z0JBQ0gsVUFBVTthQUNYLENBQUM7U0FDSCxDQUFDO1FBQ0YsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDckMsYUFBYSxFQUNiLENBQUMsa0JBQWtCLENBQUMsRUFDcEIsR0FBRyxFQUNILEVBQUUsQ0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFFN0IsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FDckIsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUN4RCxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBRWhDLE9BQU87WUFDTCxTQUFTO1lBQ1QsZUFBZSxFQUFFLElBQUEsZ0JBQUssRUFBQyxJQUFBLGVBQU0sRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFO1NBQ3RFLENBQUM7SUFDSixDQUFDO0lBRU0sS0FBSyxDQUFDLGVBQWUsQ0FDMUIsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsV0FBaUIsRUFDakIsR0FBUSxFQUNSLFVBQXNCO1FBRXRCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDeEMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN6QyxNQUFNLGtCQUFrQixHQUFHO1lBQ3pCLE9BQU8sRUFBRSw4QkFBOEI7WUFDdkMsS0FBSyxFQUFFLHVCQUFrQixDQUFDLFdBQVcsQ0FBQztnQkFDcEMsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFNBQVM7Z0JBQ1QsU0FBUztnQkFDVCxXQUFXO2dCQUNYLEdBQUc7Z0JBQ0gsVUFBVTthQUNYLENBQUM7U0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUNwRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQzdDLGFBQWEsRUFDYixDQUFDLGtCQUFrQixDQUFDLEVBQ3BCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFBLDZCQUFrQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixPQUFPLEVBQUUsK0JBQTBCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDO2lCQUN0RSxPQUFPO1NBQ1gsQ0FBQztJQUNKLENBQUM7SUFFTSxLQUFLLENBQUMsYUFBYSxDQUN4QixTQUFpQixFQUNqQixTQUFxQixFQUNyQixPQUFpQjtRQUVqQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRztZQUN2QixPQUFPLEVBQUUsNEJBQTRCO1lBQ3JDLEtBQUssRUFBRSxxQkFBZ0IsQ0FBQyxXQUFXLENBQUM7Z0JBQ2xDLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixTQUFTO2dCQUNULFNBQVM7Z0JBQ1QsT0FBTzthQUNSLENBQUM7U0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUNoRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQzdDLGFBQWEsRUFDYixDQUFDLGdCQUFnQixDQUFDLEVBQ2xCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFBLDZCQUFrQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtTQUN0QixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxhQUFhLENBQ3hCLE9BQWUsRUFDZixTQUFpQixFQUNqQixTQUFtQixFQUNuQixTQUFtQixFQUNuQixVQUF1QjtRQUV2QixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRztZQUN2QixPQUFPLEVBQUUsMEJBQTBCO1lBQ25DLEtBQUssRUFBRSxxQkFBZ0IsQ0FBQyxXQUFXLENBQUM7Z0JBQ2xDLE9BQU87Z0JBQ1AsU0FBUztnQkFDVCxTQUFTO2dCQUNULFNBQVM7Z0JBQ1QsVUFBVTthQUNYLENBQUM7U0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUNoRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQzdDLGFBQWEsRUFDYixDQUFDLGdCQUFnQixDQUFDLEVBQ2xCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFBLDZCQUFrQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtTQUN0QixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxXQUFXLENBQ3RCLFNBQWlCLEVBQ2pCLFNBQW1CLEVBQ25CLFVBQXNCO1FBRXRCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3BDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDekMsTUFBTSxjQUFjLEdBQUc7WUFDckIsT0FBTyxFQUFFLHdCQUF3QjtZQUNqQyxLQUFLLEVBQUUsbUJBQWMsQ0FBQyxXQUFXLENBQUM7Z0JBQ2hDLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixTQUFTO2dCQUNULFNBQVM7Z0JBQ1QsVUFBVTthQUNYLENBQUM7U0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDNUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUM3QyxhQUFhLEVBQ2IsQ0FBQyxjQUFjLENBQUMsRUFDaEIsTUFBTSxDQUNQLENBQUM7UUFDRixJQUFJLElBQUEsNkJBQWtCLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLElBQUEscUNBQTZCLEVBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBRUQsT0FBTztZQUNMLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixlQUFlLEVBQUUsTUFBTSxDQUFDLGVBQWU7WUFDdkMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1NBQ3RCLENBQUM7SUFDSixDQUFDO0lBRU0sS0FBSyxDQUFDLFNBQVM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvQyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLGlCQUFpQixDQUM1QixPQUFlLEVBQ2YsU0FBaUIsRUFDakIsS0FBVyxFQUNYLEdBQWU7UUFFZixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUN6RCxPQUFPLEVBQ1AsU0FBUyxFQUNULEtBQUssRUFDTCxHQUFHLENBQ0osQ0FBQztRQUNGLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZSxDQUMxQixTQUFpQixFQUNqQixNQUF3QjtRQUV4QixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUN2RCxTQUFTLEVBQ1QsTUFBTSxDQUNQLENBQUM7UUFDRixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFpQjtRQUN2QyxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoRSxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLGlCQUFpQixDQUM1QixPQUFlLEVBQ2YsTUFBaUMsRUFDakMsVUFBZ0IsRUFDaEIsS0FBVyxFQUNYLFNBQWtCLEVBQ2xCLEdBQWU7UUFFZixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUN6RCxPQUFPLEVBQ1AsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULEdBQUcsQ0FDSixDQUFDO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxxQkFBcUIsQ0FDaEMsT0FBZSxFQUNmLEtBQVcsRUFDWCxHQUFlO1FBRWYsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FDN0QsT0FBTyxFQUNQLEtBQUssRUFDTCxHQUFHLENBQ0osQ0FBQztRQUNGLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQWU7UUFDckMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFZO1FBQ3ZCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDN0MsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBaUI7UUFDckMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDeEQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxjQUFjLENBQUMsU0FBaUIsRUFBRSxVQUF3QjtRQUNyRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUMsVUFBVSxDQUFDLENBQUM7UUFDekUsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBYztRQUNqQyxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFjO1FBQ2xDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZSxDQUFDLE1BQWM7UUFDekMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxVQUF3QjtRQUN0RCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25FLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsd0JBQXdCLENBQ25DLGFBQTRCLEVBQzVCLFlBQTBCLEVBQzFCLEtBQWEsRUFDYixHQUFlO1FBRWYsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FDMUQsYUFBYSxFQUNiLFlBQVksRUFDWixLQUFLLEVBQ0wsR0FBRyxDQUNKLENBQUM7UUFDRixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLHdCQUF3QixDQUFDLE1BQWM7UUFDbEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRSxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQWM7UUFDM0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5RCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0Y7QUFuZUQsZ0NBbWVDIn0= \ No newline at end of file diff --git a/dist/codec/agent/module/v1/module.d.ts b/dist/codec/agent/module/v1/module.d.ts index c73d7fa..8276ac3 100644 --- a/dist/codec/agent/module/v1/module.d.ts +++ b/dist/codec/agent/module/v1/module.d.ts @@ -1,28 +1,18 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../../json-safe"; export declare const protobufPackage = "nesaorg.nesachain.agent.module.v1"; export interface Module { authority: string; } export declare const Module: { + typeUrl: string; encode(message: Module, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Module; fromJSON(object: any): Module; - toJSON(message: Module): unknown; + toJSON(message: Module): JsonSafe; fromPartial]: never; }>(object: I): Module; + } & Record, never>>(object: I): Module; }; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; -}; -export {}; diff --git a/dist/codec/agent/module/v1/module.js b/dist/codec/agent/module/v1/module.js index a4c79a5..bd77d8a 100644 --- a/dist/codec/agent/module/v1/module.js +++ b/dist/codec/agent/module/v1/module.js @@ -1,25 +1,48 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Module = exports.protobufPackage = void 0; /* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../../helpers"); exports.protobufPackage = "nesaorg.nesachain.agent.module.v1"; function createBaseModule() { - return { authority: "" }; + return { + authority: "" + }; } exports.Module = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/nesaorg.nesachain.agent.module.v1.Module", + encode(message, writer = _m0.Writer.create()) { if (message.authority !== "") { writer.uint32(10).string(message.authority); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseModule(); while (reader.pos < end) { @@ -36,9 +59,10 @@ exports.Module = { return message; }, fromJSON(object) { - return { - authority: isSet(object.authority) ? String(object.authority) : "", - }; + const obj = createBaseModule(); + if ((0, helpers_1.isSet)(object.authority)) + obj.authority = String(object.authority); + return obj; }, toJSON(message) { const obj = {}; @@ -49,13 +73,6 @@ exports.Module = { const message = createBaseModule(); message.authority = object.authority ?? ""; return message; - }, + } }; -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2FnZW50L21vZHVsZS92MS9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QixpRUFBcUM7QUFFeEIsUUFBQSxlQUFlLEdBQUcsbUNBQW1DLENBQUM7QUFNbkUsU0FBUyxnQkFBZ0I7SUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQztBQUMzQixDQUFDO0FBRVksUUFBQSxNQUFNLEdBQUc7SUFDcEIsTUFBTSxDQUNKLE9BQWUsRUFDZixTQUFxQixpQkFBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFFeEMsSUFBSSxPQUFPLENBQUMsU0FBUyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUE4QixFQUFFLE1BQWU7UUFDcEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxZQUFZLGlCQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksaUJBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0UsSUFBSSxHQUFHLEdBQUcsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUM7UUFDbEUsTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQyxPQUFPLE1BQU0sQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUM7WUFDeEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzVCLFFBQVEsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNsQixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3BDLE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBVztRQUNsQixPQUFPO1lBQ0wsU0FBUyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDbkUsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBZTtRQUNwQixNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUM7UUFDcEIsT0FBTyxDQUFDLFNBQVMsS0FBSyxTQUFTLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2RSxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxXQUFXLENBQTBDLE1BQVM7UUFDNUQsTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQyxPQUFPLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1FBQzNDLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRixDQUFDO0FBOEJGLElBQUksaUJBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLGNBQUksRUFBRSxDQUFDO0lBQzNCLGlCQUFHLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxjQUFXLENBQUM7SUFDNUIsaUJBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztBQUNsQixDQUFDO0FBRUQsU0FBUyxLQUFLLENBQUMsS0FBVTtJQUN2QixPQUFPLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLFNBQVMsQ0FBQztBQUMvQyxDQUFDIn0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2FnZW50L21vZHVsZS92MS9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsd0RBQTBDO0FBQzFDLDhDQUE2RDtBQUVoRCxRQUFBLGVBQWUsR0FBRyxtQ0FBbUMsQ0FBQztBQUluRSxTQUFTLGdCQUFnQjtJQUN2QixPQUFPO1FBQ0wsU0FBUyxFQUFFLEVBQUU7S0FDZCxDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsTUFBTSxHQUFHO0lBQ3BCLE9BQU8sRUFBRSwyQ0FBMkM7SUFDcEQsTUFBTSxDQUFDLE9BQWUsRUFBRSxTQUFxQixHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUM5RCxJQUFJLE9BQU8sQ0FBQyxTQUFTLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0sR0FBRyxLQUFLLFlBQVksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0UsSUFBSSxHQUFHLEdBQUcsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUM7UUFDbEUsTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQyxPQUFPLE1BQU0sQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUM7WUFDeEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzVCLFFBQVEsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNsQixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3BDLE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFDRCxRQUFRLENBQUMsTUFBVztRQUNsQixNQUFNLEdBQUcsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBQy9CLElBQUksSUFBQSxlQUFLLEVBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztZQUFFLEdBQUcsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN0RSxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFDRCxNQUFNLENBQUMsT0FBZTtRQUNwQixNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUM7UUFDcEIsT0FBTyxDQUFDLFNBQVMsS0FBSyxTQUFTLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2RSxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFDRCxXQUFXLENBQTBDLE1BQVM7UUFDNUQsTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQyxPQUFPLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1FBQzNDLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRixDQUFDIn0= \ No newline at end of file diff --git a/dist/codec/agent/v1/agent.d.ts b/dist/codec/agent/v1/agent.d.ts index 19521df..8160f53 100644 --- a/dist/codec/agent/v1/agent.d.ts +++ b/dist/codec/agent/v1/agent.d.ts @@ -1,106 +1,201 @@ +/// import { Coin } from "../../cosmos/base/v1beta1/coin"; import { Duration } from "../../google/protobuf/duration"; -import Long from "long"; -import _m0 from "protobufjs/minimal"; +import { Timestamp } from "../../google/protobuf/timestamp"; +import { Long } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; export declare const protobufPackage = "agent.v1"; +/** AgentStatus enumerates the inference agent status. */ export declare enum AgentStatus { + /** AGENT_STATUS_ACTIVE - AGENT_STATUS_ACTIVE represents the active status. */ AGENT_STATUS_ACTIVE = 0, + /** AGENT_STATUS_INACTIVE - AGENT_STATUS_INACTIVE represents the inactive status. */ AGENT_STATUS_INACTIVE = 1, UNRECOGNIZED = -1 } export declare function agentStatusFromJSON(object: any): AgentStatus; export declare function agentStatusToJSON(object: AgentStatus): string; +/** AgentModelStatus enumerates the each model status of inference agent. */ export declare enum AgentModelStatus { + /** AGENT_MODEL_STATUS_ACTIVE - AGENT_MODEL_STATUS_ACTIVE represents the active model status. */ AGENT_MODEL_STATUS_ACTIVE = 0, + /** AGENT_MODEL_STATUS_INACTIVE - AGENT_MODEL_STATUS_INACTIVE represents the inactive model status. */ AGENT_MODEL_STATUS_INACTIVE = 1, UNRECOGNIZED = -1 } export declare function agentModelStatusFromJSON(object: any): AgentModelStatus; export declare function agentModelStatusToJSON(object: AgentModelStatus): string; +/** ValidatorStatus enumerates the statuses of validators. */ export declare enum ValidatorStatus { + /** ValidatorStatusAbsent - ValidatorStatusAbsent indicates the validator is absent to submit info on chain. */ ValidatorStatusAbsent = 0, + /** ValidatorStatusSubmit - ValidatorStatusSubmit indicates the validator has submitted a response. */ ValidatorStatusSubmit = 1, + /** ValidatorStatusConsistent - ValidatorStatusConsistent indicates the validator's response is consistent to majority. */ ValidatorStatusConsistent = 2, + /** ValidatorStatusInconsistent - ValidatorStatusInconsistent indicates the validator's response is inconsistent to majority. */ ValidatorStatusInconsistent = 3, UNRECOGNIZED = -1 } export declare function validatorStatusFromJSON(object: any): ValidatorStatus; export declare function validatorStatusToJSON(object: ValidatorStatus): string; +/** SessionStatus enumerates the statuses of a session. */ export declare enum SessionStatus { + /** SESSION_STATUS_DEFAULT - SESSION_STATUS_DEFAULT is a placeholder and will not appear in session. */ SESSION_STATUS_DEFAULT = 0, + /** SESSION_STATUS_PENDING - SESSION_STATUS_PENDING indicates the session is pending. It's waiting for the payment to be submitted. */ SESSION_STATUS_PENDING = 1, + /** SESSION_STATUS_SUBMITTED - SESSION_STATUS_SUBMITTED indicates the payment has been submitted. */ SESSION_STATUS_SUBMITTED = 2, + /** SESSION_STATUS_CHALLENGE_SUBMIT_CID - SESSION_STATUS_CHALLENGE_SUBMIT_CID indicates the session is waiting challenged agent to submit CID. */ SESSION_STATUS_CHALLENGE_SUBMIT_CID = 3, + /** SESSION_STATUS_CHALLENGE_SUBMIT_REPLY - SESSION_STATUS_CHALLENGE_SUBMIT_REPLY indicates the session is waiting validator to submit reply hash. */ SESSION_STATUS_CHALLENGE_SUBMIT_REPLY = 4, + /** SESSION_STATUS_CHALLENGE_SUBMIT_MERKLE - SESSION_STATUS_CHALLENGE_SUBMIT_MERKLE indicates the session is waiting challenged agent to submit cut merkle tree. */ SESSION_STATUS_CHALLENGE_SUBMIT_MERKLE = 5, + /** SESSION_STATUS_CHALLENGE_SUBMIT_ORIGIN - SESSION_STATUS_CHALLENGE_SUBMIT_ORIGIN indicates the session is waiting validator to submit answer origin hash. */ SESSION_STATUS_CHALLENGE_SUBMIT_ORIGIN = 6, + /** SESSION_STATUS_CHALLENGE_ARBITRATION - SESSION_STATUS_CHALLENGE_ARBITRATION indicates the session is waiting admin to do arbitration. */ SESSION_STATUS_CHALLENGE_ARBITRATION = 7, UNRECOGNIZED = -1 } export declare function sessionStatusFromJSON(object: any): SessionStatus; export declare function sessionStatusToJSON(object: SessionStatus): string; +/** Params defines the agent module's global params. */ export interface Params { /** The minimum coins that needs to be locked when an inference agent registers */ - agentMinimumLock?: Coin; + agentMinimumLock: Coin; /** The minimum coins that needs to be locked when user registers a session */ - userMinimumLock?: Coin; + userMinimumLock: Coin; /** * When the session is created, the time period that inference agent can submit payment. * After this period, the session will be automatically canceled. */ - sessionTime?: Duration; + sessionTime: Duration; /** * When the payment is submitted, the time period can be challenged. * After this time window, the agent receives the reward specified by the session payment. */ - challengeTime?: Duration; + challengeTime: Duration; + /** Global vrf seed. Each user calculates their own vrf seed based on the global vrf seed when vrf is initialized. */ globalSeed: Uint8Array; + /** + * The minimum version number for agent registration/update, + * registration/update is not allowed if the version number is lower than this one + */ lowestAgentVersion: Long; + /** + * The highest version number of agent registration/update, + * registration/update is not allowed if the version number is higher than this + */ highestAgentVersion: Long; + /** + * The challenge rate. It increases by 0.1% for each unit increment, + * where 0 indicates no challenge and 1000 indicates a 100% challenge rate. + */ challengeRate: Long; + /** + * The number of validators during the challenge. + * When the number of agents with corresponding models is lower than this number, the challenge will not be triggered. + */ validatorCount: Long; + /** During the challenge, the number of times the agent’s uploaded answer has been hashed. */ challengeRound: Long; - challengeCidTime?: Duration; - challengeReplyTime?: Duration; - challengeMerkleTime?: Duration; - challengeOriginTime?: Duration; - agentValidTime?: Duration; - tokenPrice: Long; + /** + * The time window for the challenged agent to upload cid. + * If the problem cid is not uploaded beyond this time window, + * it will be judged as a breach of contract by the challenged agent. + */ + challengeCidTime: Duration; + /** + * The time window for the validator to upload reply hash. + * If the reply hash is not uploaded beyond this time window, + * validator will be marked as absent. + */ + challengeReplyTime: Duration; + /** + * The time window for the challenged agent to upload cut merkle tree. + * If the merkle root is not uploaded beyond this time window, + * it will be judged as a breach of contract by the challenged agent. + */ + challengeMerkleTime: Duration; + /** + * The time window for the validator to upload question origin hash. + * If the question origin hash is not uploaded beyond this time window, + * validator will be marked as absent. + */ + challengeOriginTime: Duration; + /** + * The time an agent is valid on the chain after registration/update. + * After this time is exceeded, the agent will be automatically marked as invalid. + */ + agentValidTime: Duration; } +/** InnerValues defines the values that changed by agent module. */ export interface InnerValues { + /** The seed used by the module for VRF. It changes with each block and each usage. */ seed: Uint8Array; } -export interface Model { - name: string; - repositoryUrl: string; -} +/** Prestige represents the prestige of inference agent. */ export interface Prestige { + /** The number of sessions successfully completed by the inference agent. */ count: Long; + /** The total number of unes obtained by the inference agent after completing the session. */ total: Long; } +/** The inference agent represents the registered entity on the chain that provides the inference service. */ export interface InferenceAgent { + /** The on-chain address of the inference agent */ account: string; + /** URL address that provides the inference service. */ url: string; + /** The version of the inference agent. */ version: Long; - prestige?: Prestige; + /** The prestige of the inference agent. */ + prestige: Prestige; + /** The status of the inference agent. */ status: AgentStatus; - validUntil?: Date; + /** The timestamp that agent becomes inactive. */ + validUntil: Timestamp; } +/** AgentModel defines the model that belongs to the inference agent. */ export interface AgentModel { + /** + * The on-chain address of the inference node's AgentModel. + * This field indicates which inference agent the model belongs to. + */ account: string; + /** The name of the model. */ modelName: string; + /** The lock amount of this agent model. */ lock: Long; + /** The status of this agent model. */ status: AgentModelStatus; } +/** TokenPrice defines the price of the token used for payment. */ +export interface TokenPrice { + inputPrice: Coin; + outputPrice: Coin; +} +/** PaymentContribution defines the participation ratio and amount obtained by each chain account during inference. */ export interface PaymentContribution { + /** The chain account that participates in the inference. */ account: string; + /** The participation ratio of the chain account. */ rate: Long; + /** The amount gained by the chain account. */ amount?: Coin; } +/** Payment represents the payment information of a session. */ export interface Payment { - tokens: Long[]; - totalPayment?: Coin; + /** The number of tokens used for input. */ + inputTokens: Long[]; + /** The number of tokens used for output. */ + outputTokens: Long[]; + /** The merkle root of answer hash array. */ merkleRoot: Uint8Array; + /** The contributions of each participating account. */ contributions: PaymentContribution[]; } /** Challenge validator information */ @@ -114,37 +209,59 @@ export interface ChallengeValidator { /** validator’s submit status */ status: ValidatorStatus; } +/** ChallengeInfo contains information about session challenge. */ export interface ChallengeInfo { + /** The ID of the question being challenged. */ questionId: Long; + /** The location where the challenged question is stored */ cid: string; + /** The hash of the answer. It is submitted by the challenged agent. */ answerHash: Uint8Array; + /** The cut merkle tree of the challenged question. */ cutMerkle: Uint8Array[]; - /** validators */ + /** The validators of the challenge. */ validators: ChallengeValidator[]; + /** The number of times the answer hash has been hashed. */ hashCount: Long; } +/** Session represents an inference session. */ export interface Session { + /** The ID of the session. It's compressed secp256k1 pubkey. */ sessionId: string; + /** The account of the user who created and pay for the session. */ account: string; + /** The name of the model used in the session */ modelName: string; + /** The account of the agent providing the model's inference service. */ agentAccount: string; - userLock?: Coin; - minerLock?: Coin; - tokenPrice: Long; - expirationAt?: Date; + /** The amount of coins locked by the user to do inference. */ + userLock: Coin; + /** The amount of coins locked by the inference agent. */ + minerLock: Coin; + /** the price of each token in session. */ + tokenPrice: TokenPrice; + /** The expiration timestamp of the session. */ + expirationAt: Timestamp; + /** The payment information for the session. */ payment?: Payment; + /** The status of the session. */ status: SessionStatus; + /** The challenge information for the session. */ challengeInfo: ChallengeInfo[]; } +/** VrfSeed represents the VRF seed for each user. */ export interface VrfSeed { + /** The account of the user. */ account: string; + /** The VRF seed for the user. */ seed: Uint8Array; } export declare const Params: { + typeUrl: string; encode(message: Params, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Params; fromJSON(object: any): Params; - toJSON(message: Params): unknown; + toJSON(message: Params): JsonSafe; fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; userMinimumLock?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; sessionTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -265,9 +381,9 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -329,9 +445,9 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_4 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; globalSeed?: Uint8Array | undefined; lowestAgentVersion?: string | number | (Long.Long & { high: number; @@ -390,7 +506,7 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; highestAgentVersion?: string | number | (Long.Long & { high: number; low: number; @@ -448,7 +564,7 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_7 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeRate?: string | number | (Long.Long & { high: number; low: number; @@ -506,7 +622,7 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_8 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; validatorCount?: string | number | (Long.Long & { high: number; low: number; @@ -564,7 +680,7 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_9 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeRound?: string | number | (Long.Long & { high: number; low: number; @@ -622,7 +738,7 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_10 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeCidTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -684,9 +800,9 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_12 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeReplyTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -748,9 +864,9 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_13 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_14 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeMerkleTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -812,9 +928,9 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_15 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_16 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeOriginTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -876,9 +992,9 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_17 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_18 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; agentValidTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -940,98 +1056,29 @@ export declare const Params: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_19 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_20 in Exclude]: never; }) | undefined; - tokenPrice?: string | number | (Long.Long & { - high: number; - low: number; - unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; - getHighBits: () => number; - getHighBitsUnsigned: () => number; - getLowBits: () => number; - getLowBitsUnsigned: () => number; - getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; - isEven: () => boolean; - isNegative: () => boolean; - isOdd: () => boolean; - isPositive: () => boolean; - isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; - toInt: () => number; - toNumber: () => number; - toBytes: (le?: boolean | undefined) => number[]; - toBytesLE: () => number[]; - toBytesBE: () => number[]; - toSigned: () => Long.Long; - toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_21 in Exclude]: never; }) | undefined; - } & { [K_22 in Exclude]: never; }>(object: I): Params; + } & Record, never>) | undefined; + } & Record, never>>(object: I): Params; }; export declare const InnerValues: { + typeUrl: string; encode(message: InnerValues, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): InnerValues; fromJSON(object: any): InnerValues; - toJSON(message: InnerValues): unknown; + toJSON(message: InnerValues): JsonSafe; fromPartial]: never; }>(object: I): InnerValues; -}; -export declare const Model: { - encode(message: Model, writer?: _m0.Writer): _m0.Writer; - decode(input: _m0.Reader | Uint8Array, length?: number): Model; - fromJSON(object: any): Model; - toJSON(message: Model): unknown; - fromPartial]: never; }>(object: I): Model; + } & Record, never>>(object: I): InnerValues; }; export declare const Prestige: { + typeUrl: string; encode(message: Prestige, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Prestige; fromJSON(object: any): Prestige; - toJSON(message: Prestige): unknown; + toJSON(message: Prestige): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; total?: string | number | (Long.Long & { high: number; low: number; @@ -1151,14 +1198,15 @@ export declare const Prestige: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }) | undefined; - } & { [K_2 in Exclude]: never; }>(object: I): Prestige; + } & Record, never>) | undefined; + } & Record, never>>(object: I): Prestige; }; export declare const InferenceAgent: { + typeUrl: string; encode(message: InferenceAgent, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): InferenceAgent; fromJSON(object: any): InferenceAgent; - toJSON(message: InferenceAgent): unknown; + toJSON(message: InferenceAgent): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; prestige?: ({ count?: string | number | Long.Long | undefined; total?: string | number | Long.Long | undefined; @@ -1291,7 +1342,7 @@ export declare const InferenceAgent: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; total?: string | number | (Long.Long & { high: number; low: number; @@ -1349,17 +1400,81 @@ export declare const InferenceAgent: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; status?: AgentStatus | undefined; - validUntil?: Date | undefined; - } & { [K_4 in Exclude]: never; }>(object: I): InferenceAgent; + validUntil?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): InferenceAgent; }; export declare const AgentModel: { + typeUrl: string; encode(message: AgentModel, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): AgentModel; fromJSON(object: any): AgentModel; - toJSON(message: AgentModel): unknown; + toJSON(message: AgentModel): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; status?: AgentModelStatus | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): AgentModel; + } & Record, never>>(object: I): AgentModel; +}; +export declare const TokenPrice: { + typeUrl: string; + encode(message: TokenPrice, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): TokenPrice; + fromJSON(object: any): TokenPrice; + toJSON(message: TokenPrice): JsonSafe; + fromPartial, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): TokenPrice; }; export declare const PaymentContribution: { + typeUrl: string; encode(message: PaymentContribution, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PaymentContribution; fromJSON(object: any): PaymentContribution; - toJSON(message: PaymentContribution): unknown; + toJSON(message: PaymentContribution): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; amount?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; - } & { [K_2 in Exclude]: never; }>(object: I): PaymentContribution; + } & Record, never>) | undefined; + } & Record, never>>(object: I): PaymentContribution; }; export declare const Payment: { + typeUrl: string; encode(message: Payment, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Payment; fromJSON(object: any): Payment; - toJSON(message: Payment): unknown; + toJSON(message: Payment): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }))[] & { [K_1 in Exclude]: never; }) | undefined; - totalPayment?: ({ - denom?: string | undefined; - amount?: string | undefined; - } & { - denom?: string | undefined; - amount?: string | undefined; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>))[] & Record, never>) | undefined; + outputTokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>))[] & Record, never>) | undefined; merkleRoot?: Uint8Array | undefined; contributions?: ({ account?: string | undefined; @@ -1670,29 +1867,30 @@ export declare const Payment: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; amount?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_4 in Exclude]: never; }) | undefined; - } & { [K_5 in Exclude]: never; })[] & { [K_6 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_7 in Exclude]: never; }>(object: I): Payment; + }[]>, never>) | undefined; + } & Record, never>>(object: I): Payment; }; export declare const ChallengeValidator: { + typeUrl: string; encode(message: ChallengeValidator, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ChallengeValidator; fromJSON(object: any): ChallengeValidator; - toJSON(message: ChallengeValidator): unknown; + toJSON(message: ChallengeValidator): JsonSafe; fromPartial]: never; }>(object: I): ChallengeValidator; + } & Record, never>>(object: I): ChallengeValidator; }; export declare const ChallengeInfo: { + typeUrl: string; encode(message: ChallengeInfo, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ChallengeInfo; fromJSON(object: any): ChallengeInfo; - toJSON(message: ChallengeInfo): unknown; + toJSON(message: ChallengeInfo): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; - cutMerkle?: (Uint8Array[] & Uint8Array[] & { [K_1 in Exclude]: never; }) | undefined; + cutMerkle?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; validators?: ({ account?: string | undefined; hash?: Uint8Array | undefined; @@ -1799,12 +1998,12 @@ export declare const ChallengeInfo: { hash?: Uint8Array | undefined; originHash?: Uint8Array | undefined; status?: ValidatorStatus | undefined; - } & { [K_2 in Exclude]: never; })[] & { [K_3 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; hashCount?: string | number | (Long.Long & { high: number; low: number; @@ -1862,14 +2061,15 @@ export declare const ChallengeInfo: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_4 in Exclude]: never; }) | undefined; - } & { [K_5 in Exclude]: never; }>(object: I): ChallengeInfo; + } & Record, never>) | undefined; + } & Record, never>>(object: I): ChallengeInfo; }; export declare const Session: { + typeUrl: string; encode(message: Session, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Session; fromJSON(object: any): Session; - toJSON(message: Session): unknown; + toJSON(message: Session): JsonSafe; fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; minerLock?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; - tokenPrice?: string | number | (Long.Long & { - high: number; - low: number; - unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; - getHighBits: () => number; - getHighBitsUnsigned: () => number; - getLowBits: () => number; - getLowBitsUnsigned: () => number; - getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; - isEven: () => boolean; - isNegative: () => boolean; - isOdd: () => boolean; - isPositive: () => boolean; - isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; - toInt: () => number; - toNumber: () => number; - toBytes: (le?: boolean | undefined) => number[]; - toBytesLE: () => number[]; - toBytesBE: () => number[]; - toSigned: () => Long.Long; - toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; - expirationAt?: Date | undefined; - payment?: ({ - tokens?: (string | number | Long.Long)[] | undefined; - totalPayment?: { + } & Record, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { denom?: string | undefined; amount?: string | undefined; } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + expirationAt?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + payment?: ({ + inputTokens?: (string | number | Long.Long)[] | undefined; + outputTokens?: (string | number | Long.Long)[] | undefined; merkleRoot?: Uint8Array | undefined; contributions?: { account?: string | undefined; @@ -2009,7 +2245,7 @@ export declare const Session: { } | undefined; }[] | undefined; } & { - tokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + inputTokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { high: number; low: number; unsigned: boolean; @@ -2066,14 +2302,65 @@ export declare const Session: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }))[] & { [K_4 in Exclude]: never; }) | undefined; - totalPayment?: ({ - denom?: string | undefined; - amount?: string | undefined; - } & { - denom?: string | undefined; - amount?: string | undefined; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>))[] & Record, never>) | undefined; + outputTokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>))[] & Record, never>) | undefined; merkleRoot?: Uint8Array | undefined; contributions?: ({ account?: string | undefined; @@ -2148,23 +2435,23 @@ export declare const Session: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; amount?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_7 in Exclude]: never; }) | undefined; - } & { [K_8 in Exclude]: never; })[] & { [K_9 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_10 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; status?: SessionStatus | undefined; challengeInfo?: ({ questionId?: string | number | Long.Long | undefined; @@ -2248,10 +2535,10 @@ export declare const Session: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; - cutMerkle?: (Uint8Array[] & Uint8Array[] & { [K_12 in Exclude]: never; }) | undefined; + cutMerkle?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; validators?: ({ account?: string | undefined; hash?: Uint8Array | undefined; @@ -2267,12 +2554,12 @@ export declare const Session: { hash?: Uint8Array | undefined; originHash?: Uint8Array | undefined; status?: ValidatorStatus | undefined; - } & { [K_13 in Exclude]: never; })[] & { [K_14 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; hashCount?: string | number | (Long.Long & { high: number; low: number; @@ -2330,8 +2617,8 @@ export declare const Session: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_15 in Exclude]: never; }) | undefined; - } & { [K_16 in Exclude]: never; })[] & { [K_17 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_18 in Exclude]: never; }>(object: I): Session; + }[]>, never>) | undefined; + } & Record, never>>(object: I): Session; }; export declare const VrfSeed: { + typeUrl: string; encode(message: VrfSeed, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): VrfSeed; fromJSON(object: any): VrfSeed; - toJSON(message: VrfSeed): unknown; + toJSON(message: VrfSeed): JsonSafe; fromPartial]: never; }>(object: I): VrfSeed; -}; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; + } & Record, never>>(object: I): VrfSeed; }; -export {}; diff --git a/dist/codec/agent/v1/agent.js b/dist/codec/agent/v1/agent.js index c76e841..a2556cc 100644 --- a/dist/codec/agent/v1/agent.js +++ b/dist/codec/agent/v1/agent.js @@ -1,19 +1,42 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.VrfSeed = exports.Session = exports.ChallengeInfo = exports.ChallengeValidator = exports.Payment = exports.PaymentContribution = exports.AgentModel = exports.InferenceAgent = exports.Prestige = exports.Model = exports.InnerValues = exports.Params = exports.sessionStatusToJSON = exports.sessionStatusFromJSON = exports.SessionStatus = exports.validatorStatusToJSON = exports.validatorStatusFromJSON = exports.ValidatorStatus = exports.agentModelStatusToJSON = exports.agentModelStatusFromJSON = exports.AgentModelStatus = exports.agentStatusToJSON = exports.agentStatusFromJSON = exports.AgentStatus = exports.protobufPackage = void 0; +exports.VrfSeed = exports.Session = exports.ChallengeInfo = exports.ChallengeValidator = exports.Payment = exports.PaymentContribution = exports.TokenPrice = exports.AgentModel = exports.InferenceAgent = exports.Prestige = exports.InnerValues = exports.Params = exports.sessionStatusToJSON = exports.sessionStatusFromJSON = exports.SessionStatus = exports.validatorStatusToJSON = exports.validatorStatusFromJSON = exports.ValidatorStatus = exports.agentModelStatusToJSON = exports.agentModelStatusFromJSON = exports.AgentModelStatus = exports.agentStatusToJSON = exports.agentStatusFromJSON = exports.AgentStatus = exports.protobufPackage = void 0; /* eslint-disable */ const coin_1 = require("../../cosmos/base/v1beta1/coin"); const duration_1 = require("../../google/protobuf/duration"); const timestamp_1 = require("../../google/protobuf/timestamp"); -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); exports.protobufPackage = "agent.v1"; +/** AgentStatus enumerates the inference agent status. */ var AgentStatus; (function (AgentStatus) { + /** AGENT_STATUS_ACTIVE - AGENT_STATUS_ACTIVE represents the active status. */ AgentStatus[AgentStatus["AGENT_STATUS_ACTIVE"] = 0] = "AGENT_STATUS_ACTIVE"; + /** AGENT_STATUS_INACTIVE - AGENT_STATUS_INACTIVE represents the inactive status. */ AgentStatus[AgentStatus["AGENT_STATUS_INACTIVE"] = 1] = "AGENT_STATUS_INACTIVE"; AgentStatus[AgentStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; })(AgentStatus || (exports.AgentStatus = AgentStatus = {})); @@ -44,9 +67,12 @@ function agentStatusToJSON(object) { } } exports.agentStatusToJSON = agentStatusToJSON; +/** AgentModelStatus enumerates the each model status of inference agent. */ var AgentModelStatus; (function (AgentModelStatus) { + /** AGENT_MODEL_STATUS_ACTIVE - AGENT_MODEL_STATUS_ACTIVE represents the active model status. */ AgentModelStatus[AgentModelStatus["AGENT_MODEL_STATUS_ACTIVE"] = 0] = "AGENT_MODEL_STATUS_ACTIVE"; + /** AGENT_MODEL_STATUS_INACTIVE - AGENT_MODEL_STATUS_INACTIVE represents the inactive model status. */ AgentModelStatus[AgentModelStatus["AGENT_MODEL_STATUS_INACTIVE"] = 1] = "AGENT_MODEL_STATUS_INACTIVE"; AgentModelStatus[AgentModelStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; })(AgentModelStatus || (exports.AgentModelStatus = AgentModelStatus = {})); @@ -77,11 +103,16 @@ function agentModelStatusToJSON(object) { } } exports.agentModelStatusToJSON = agentModelStatusToJSON; +/** ValidatorStatus enumerates the statuses of validators. */ var ValidatorStatus; (function (ValidatorStatus) { + /** ValidatorStatusAbsent - ValidatorStatusAbsent indicates the validator is absent to submit info on chain. */ ValidatorStatus[ValidatorStatus["ValidatorStatusAbsent"] = 0] = "ValidatorStatusAbsent"; + /** ValidatorStatusSubmit - ValidatorStatusSubmit indicates the validator has submitted a response. */ ValidatorStatus[ValidatorStatus["ValidatorStatusSubmit"] = 1] = "ValidatorStatusSubmit"; + /** ValidatorStatusConsistent - ValidatorStatusConsistent indicates the validator's response is consistent to majority. */ ValidatorStatus[ValidatorStatus["ValidatorStatusConsistent"] = 2] = "ValidatorStatusConsistent"; + /** ValidatorStatusInconsistent - ValidatorStatusInconsistent indicates the validator's response is inconsistent to majority. */ ValidatorStatus[ValidatorStatus["ValidatorStatusInconsistent"] = 3] = "ValidatorStatusInconsistent"; ValidatorStatus[ValidatorStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; })(ValidatorStatus || (exports.ValidatorStatus = ValidatorStatus = {})); @@ -122,15 +153,24 @@ function validatorStatusToJSON(object) { } } exports.validatorStatusToJSON = validatorStatusToJSON; +/** SessionStatus enumerates the statuses of a session. */ var SessionStatus; (function (SessionStatus) { + /** SESSION_STATUS_DEFAULT - SESSION_STATUS_DEFAULT is a placeholder and will not appear in session. */ SessionStatus[SessionStatus["SESSION_STATUS_DEFAULT"] = 0] = "SESSION_STATUS_DEFAULT"; + /** SESSION_STATUS_PENDING - SESSION_STATUS_PENDING indicates the session is pending. It's waiting for the payment to be submitted. */ SessionStatus[SessionStatus["SESSION_STATUS_PENDING"] = 1] = "SESSION_STATUS_PENDING"; + /** SESSION_STATUS_SUBMITTED - SESSION_STATUS_SUBMITTED indicates the payment has been submitted. */ SessionStatus[SessionStatus["SESSION_STATUS_SUBMITTED"] = 2] = "SESSION_STATUS_SUBMITTED"; + /** SESSION_STATUS_CHALLENGE_SUBMIT_CID - SESSION_STATUS_CHALLENGE_SUBMIT_CID indicates the session is waiting challenged agent to submit CID. */ SessionStatus[SessionStatus["SESSION_STATUS_CHALLENGE_SUBMIT_CID"] = 3] = "SESSION_STATUS_CHALLENGE_SUBMIT_CID"; + /** SESSION_STATUS_CHALLENGE_SUBMIT_REPLY - SESSION_STATUS_CHALLENGE_SUBMIT_REPLY indicates the session is waiting validator to submit reply hash. */ SessionStatus[SessionStatus["SESSION_STATUS_CHALLENGE_SUBMIT_REPLY"] = 4] = "SESSION_STATUS_CHALLENGE_SUBMIT_REPLY"; + /** SESSION_STATUS_CHALLENGE_SUBMIT_MERKLE - SESSION_STATUS_CHALLENGE_SUBMIT_MERKLE indicates the session is waiting challenged agent to submit cut merkle tree. */ SessionStatus[SessionStatus["SESSION_STATUS_CHALLENGE_SUBMIT_MERKLE"] = 5] = "SESSION_STATUS_CHALLENGE_SUBMIT_MERKLE"; + /** SESSION_STATUS_CHALLENGE_SUBMIT_ORIGIN - SESSION_STATUS_CHALLENGE_SUBMIT_ORIGIN indicates the session is waiting validator to submit answer origin hash. */ SessionStatus[SessionStatus["SESSION_STATUS_CHALLENGE_SUBMIT_ORIGIN"] = 6] = "SESSION_STATUS_CHALLENGE_SUBMIT_ORIGIN"; + /** SESSION_STATUS_CHALLENGE_ARBITRATION - SESSION_STATUS_CHALLENGE_ARBITRATION indicates the session is waiting admin to do arbitration. */ SessionStatus[SessionStatus["SESSION_STATUS_CHALLENGE_ARBITRATION"] = 7] = "SESSION_STATUS_CHALLENGE_ARBITRATION"; SessionStatus[SessionStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; })(SessionStatus || (exports.SessionStatus = SessionStatus = {})); @@ -193,26 +233,26 @@ function sessionStatusToJSON(object) { exports.sessionStatusToJSON = sessionStatusToJSON; function createBaseParams() { return { - agentMinimumLock: undefined, - userMinimumLock: undefined, - sessionTime: undefined, - challengeTime: undefined, + agentMinimumLock: coin_1.Coin.fromPartial({}), + userMinimumLock: coin_1.Coin.fromPartial({}), + sessionTime: duration_1.Duration.fromPartial({}), + challengeTime: duration_1.Duration.fromPartial({}), globalSeed: new Uint8Array(), - lowestAgentVersion: long_1.default.UZERO, - highestAgentVersion: long_1.default.UZERO, - challengeRate: long_1.default.UZERO, - validatorCount: long_1.default.UZERO, - challengeRound: long_1.default.UZERO, - challengeCidTime: undefined, - challengeReplyTime: undefined, - challengeMerkleTime: undefined, - challengeOriginTime: undefined, - agentValidTime: undefined, - tokenPrice: long_1.default.UZERO, + lowestAgentVersion: helpers_1.Long.UZERO, + highestAgentVersion: helpers_1.Long.UZERO, + challengeRate: helpers_1.Long.UZERO, + validatorCount: helpers_1.Long.UZERO, + challengeRound: helpers_1.Long.UZERO, + challengeCidTime: duration_1.Duration.fromPartial({}), + challengeReplyTime: duration_1.Duration.fromPartial({}), + challengeMerkleTime: duration_1.Duration.fromPartial({}), + challengeOriginTime: duration_1.Duration.fromPartial({}), + agentValidTime: duration_1.Duration.fromPartial({}) }; } exports.Params = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.Params", + encode(message, writer = _m0.Writer.create()) { if (message.agentMinimumLock !== undefined) { coin_1.Coin.encode(message.agentMinimumLock, writer.uint32(10).fork()).ldelim(); } @@ -258,13 +298,10 @@ exports.Params = { if (message.agentValidTime !== undefined) { duration_1.Duration.encode(message.agentValidTime, writer.uint32(122).fork()).ldelim(); } - if (!message.tokenPrice.isZero()) { - writer.uint32(128).uint64(message.tokenPrice); - } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseParams(); while (reader.pos < end) { @@ -315,9 +352,6 @@ exports.Params = { case 15: message.agentValidTime = duration_1.Duration.decode(reader, reader.uint32()); break; - case 16: - message.tokenPrice = reader.uint64(); - break; default: reader.skipType(tag & 7); break; @@ -326,194 +360,121 @@ exports.Params = { return message; }, fromJSON(object) { - return { - agentMinimumLock: isSet(object.agentMinimumLock) - ? coin_1.Coin.fromJSON(object.agentMinimumLock) - : undefined, - userMinimumLock: isSet(object.userMinimumLock) - ? coin_1.Coin.fromJSON(object.userMinimumLock) - : undefined, - sessionTime: isSet(object.sessionTime) - ? duration_1.Duration.fromJSON(object.sessionTime) - : undefined, - challengeTime: isSet(object.challengeTime) - ? duration_1.Duration.fromJSON(object.challengeTime) - : undefined, - globalSeed: isSet(object.globalSeed) - ? bytesFromBase64(object.globalSeed) - : new Uint8Array(), - lowestAgentVersion: isSet(object.lowestAgentVersion) - ? long_1.default.fromValue(object.lowestAgentVersion) - : long_1.default.UZERO, - highestAgentVersion: isSet(object.highestAgentVersion) - ? long_1.default.fromValue(object.highestAgentVersion) - : long_1.default.UZERO, - challengeRate: isSet(object.challengeRate) - ? long_1.default.fromValue(object.challengeRate) - : long_1.default.UZERO, - validatorCount: isSet(object.validatorCount) - ? long_1.default.fromValue(object.validatorCount) - : long_1.default.UZERO, - challengeRound: isSet(object.challengeRound) - ? long_1.default.fromValue(object.challengeRound) - : long_1.default.UZERO, - challengeCidTime: isSet(object.challengeCidTime) - ? duration_1.Duration.fromJSON(object.challengeCidTime) - : undefined, - challengeReplyTime: isSet(object.challengeReplyTime) - ? duration_1.Duration.fromJSON(object.challengeReplyTime) - : undefined, - challengeMerkleTime: isSet(object.challengeMerkleTime) - ? duration_1.Duration.fromJSON(object.challengeMerkleTime) - : undefined, - challengeOriginTime: isSet(object.challengeOriginTime) - ? duration_1.Duration.fromJSON(object.challengeOriginTime) - : undefined, - agentValidTime: isSet(object.agentValidTime) - ? duration_1.Duration.fromJSON(object.agentValidTime) - : undefined, - tokenPrice: isSet(object.tokenPrice) - ? long_1.default.fromValue(object.tokenPrice) - : long_1.default.UZERO, - }; + const obj = createBaseParams(); + if ((0, helpers_1.isSet)(object.agentMinimumLock)) + obj.agentMinimumLock = coin_1.Coin.fromJSON(object.agentMinimumLock); + if ((0, helpers_1.isSet)(object.userMinimumLock)) + obj.userMinimumLock = coin_1.Coin.fromJSON(object.userMinimumLock); + if ((0, helpers_1.isSet)(object.sessionTime)) + obj.sessionTime = duration_1.Duration.fromJSON(object.sessionTime); + if ((0, helpers_1.isSet)(object.challengeTime)) + obj.challengeTime = duration_1.Duration.fromJSON(object.challengeTime); + if ((0, helpers_1.isSet)(object.globalSeed)) + obj.globalSeed = (0, helpers_1.bytesFromBase64)(object.globalSeed); + if ((0, helpers_1.isSet)(object.lowestAgentVersion)) + obj.lowestAgentVersion = helpers_1.Long.fromValue(object.lowestAgentVersion); + if ((0, helpers_1.isSet)(object.highestAgentVersion)) + obj.highestAgentVersion = helpers_1.Long.fromValue(object.highestAgentVersion); + if ((0, helpers_1.isSet)(object.challengeRate)) + obj.challengeRate = helpers_1.Long.fromValue(object.challengeRate); + if ((0, helpers_1.isSet)(object.validatorCount)) + obj.validatorCount = helpers_1.Long.fromValue(object.validatorCount); + if ((0, helpers_1.isSet)(object.challengeRound)) + obj.challengeRound = helpers_1.Long.fromValue(object.challengeRound); + if ((0, helpers_1.isSet)(object.challengeCidTime)) + obj.challengeCidTime = duration_1.Duration.fromJSON(object.challengeCidTime); + if ((0, helpers_1.isSet)(object.challengeReplyTime)) + obj.challengeReplyTime = duration_1.Duration.fromJSON(object.challengeReplyTime); + if ((0, helpers_1.isSet)(object.challengeMerkleTime)) + obj.challengeMerkleTime = duration_1.Duration.fromJSON(object.challengeMerkleTime); + if ((0, helpers_1.isSet)(object.challengeOriginTime)) + obj.challengeOriginTime = duration_1.Duration.fromJSON(object.challengeOriginTime); + if ((0, helpers_1.isSet)(object.agentValidTime)) + obj.agentValidTime = duration_1.Duration.fromJSON(object.agentValidTime); + return obj; }, toJSON(message) { const obj = {}; - message.agentMinimumLock !== undefined && - (obj.agentMinimumLock = message.agentMinimumLock - ? coin_1.Coin.toJSON(message.agentMinimumLock) - : undefined); - message.userMinimumLock !== undefined && - (obj.userMinimumLock = message.userMinimumLock - ? coin_1.Coin.toJSON(message.userMinimumLock) - : undefined); - message.sessionTime !== undefined && - (obj.sessionTime = message.sessionTime - ? duration_1.Duration.toJSON(message.sessionTime) - : undefined); - message.challengeTime !== undefined && - (obj.challengeTime = message.challengeTime - ? duration_1.Duration.toJSON(message.challengeTime) - : undefined); - message.globalSeed !== undefined && - (obj.globalSeed = base64FromBytes(message.globalSeed !== undefined ? message.globalSeed : new Uint8Array())); - message.lowestAgentVersion !== undefined && - (obj.lowestAgentVersion = (message.lowestAgentVersion || long_1.default.UZERO).toString()); - message.highestAgentVersion !== undefined && - (obj.highestAgentVersion = (message.highestAgentVersion || long_1.default.UZERO).toString()); - message.challengeRate !== undefined && - (obj.challengeRate = (message.challengeRate || long_1.default.UZERO).toString()); - message.validatorCount !== undefined && - (obj.validatorCount = (message.validatorCount || long_1.default.UZERO).toString()); - message.challengeRound !== undefined && - (obj.challengeRound = (message.challengeRound || long_1.default.UZERO).toString()); - message.challengeCidTime !== undefined && - (obj.challengeCidTime = message.challengeCidTime - ? duration_1.Duration.toJSON(message.challengeCidTime) - : undefined); - message.challengeReplyTime !== undefined && - (obj.challengeReplyTime = message.challengeReplyTime - ? duration_1.Duration.toJSON(message.challengeReplyTime) - : undefined); - message.challengeMerkleTime !== undefined && - (obj.challengeMerkleTime = message.challengeMerkleTime - ? duration_1.Duration.toJSON(message.challengeMerkleTime) - : undefined); - message.challengeOriginTime !== undefined && - (obj.challengeOriginTime = message.challengeOriginTime - ? duration_1.Duration.toJSON(message.challengeOriginTime) - : undefined); - message.agentValidTime !== undefined && - (obj.agentValidTime = message.agentValidTime - ? duration_1.Duration.toJSON(message.agentValidTime) - : undefined); - message.tokenPrice !== undefined && - (obj.tokenPrice = (message.tokenPrice || long_1.default.UZERO).toString()); + message.agentMinimumLock !== undefined && (obj.agentMinimumLock = message.agentMinimumLock ? coin_1.Coin.toJSON(message.agentMinimumLock) : undefined); + message.userMinimumLock !== undefined && (obj.userMinimumLock = message.userMinimumLock ? coin_1.Coin.toJSON(message.userMinimumLock) : undefined); + message.sessionTime !== undefined && (obj.sessionTime = message.sessionTime ? duration_1.Duration.toJSON(message.sessionTime) : undefined); + message.challengeTime !== undefined && (obj.challengeTime = message.challengeTime ? duration_1.Duration.toJSON(message.challengeTime) : undefined); + message.globalSeed !== undefined && (obj.globalSeed = (0, helpers_1.base64FromBytes)(message.globalSeed !== undefined ? message.globalSeed : new Uint8Array())); + message.lowestAgentVersion !== undefined && (obj.lowestAgentVersion = (message.lowestAgentVersion || helpers_1.Long.UZERO).toString()); + message.highestAgentVersion !== undefined && (obj.highestAgentVersion = (message.highestAgentVersion || helpers_1.Long.UZERO).toString()); + message.challengeRate !== undefined && (obj.challengeRate = (message.challengeRate || helpers_1.Long.UZERO).toString()); + message.validatorCount !== undefined && (obj.validatorCount = (message.validatorCount || helpers_1.Long.UZERO).toString()); + message.challengeRound !== undefined && (obj.challengeRound = (message.challengeRound || helpers_1.Long.UZERO).toString()); + message.challengeCidTime !== undefined && (obj.challengeCidTime = message.challengeCidTime ? duration_1.Duration.toJSON(message.challengeCidTime) : undefined); + message.challengeReplyTime !== undefined && (obj.challengeReplyTime = message.challengeReplyTime ? duration_1.Duration.toJSON(message.challengeReplyTime) : undefined); + message.challengeMerkleTime !== undefined && (obj.challengeMerkleTime = message.challengeMerkleTime ? duration_1.Duration.toJSON(message.challengeMerkleTime) : undefined); + message.challengeOriginTime !== undefined && (obj.challengeOriginTime = message.challengeOriginTime ? duration_1.Duration.toJSON(message.challengeOriginTime) : undefined); + message.agentValidTime !== undefined && (obj.agentValidTime = message.agentValidTime ? duration_1.Duration.toJSON(message.agentValidTime) : undefined); return obj; }, fromPartial(object) { const message = createBaseParams(); - message.agentMinimumLock = - object.agentMinimumLock !== undefined && object.agentMinimumLock !== null - ? coin_1.Coin.fromPartial(object.agentMinimumLock) - : undefined; - message.userMinimumLock = - object.userMinimumLock !== undefined && object.userMinimumLock !== null - ? coin_1.Coin.fromPartial(object.userMinimumLock) - : undefined; - message.sessionTime = - object.sessionTime !== undefined && object.sessionTime !== null - ? duration_1.Duration.fromPartial(object.sessionTime) - : undefined; - message.challengeTime = - object.challengeTime !== undefined && object.challengeTime !== null - ? duration_1.Duration.fromPartial(object.challengeTime) - : undefined; + if (object.agentMinimumLock !== undefined && object.agentMinimumLock !== null) { + message.agentMinimumLock = coin_1.Coin.fromPartial(object.agentMinimumLock); + } + if (object.userMinimumLock !== undefined && object.userMinimumLock !== null) { + message.userMinimumLock = coin_1.Coin.fromPartial(object.userMinimumLock); + } + if (object.sessionTime !== undefined && object.sessionTime !== null) { + message.sessionTime = duration_1.Duration.fromPartial(object.sessionTime); + } + if (object.challengeTime !== undefined && object.challengeTime !== null) { + message.challengeTime = duration_1.Duration.fromPartial(object.challengeTime); + } message.globalSeed = object.globalSeed ?? new Uint8Array(); - message.lowestAgentVersion = - object.lowestAgentVersion !== undefined && - object.lowestAgentVersion !== null - ? long_1.default.fromValue(object.lowestAgentVersion) - : long_1.default.UZERO; - message.highestAgentVersion = - object.highestAgentVersion !== undefined && - object.highestAgentVersion !== null - ? long_1.default.fromValue(object.highestAgentVersion) - : long_1.default.UZERO; - message.challengeRate = - object.challengeRate !== undefined && object.challengeRate !== null - ? long_1.default.fromValue(object.challengeRate) - : long_1.default.UZERO; - message.validatorCount = - object.validatorCount !== undefined && object.validatorCount !== null - ? long_1.default.fromValue(object.validatorCount) - : long_1.default.UZERO; - message.challengeRound = - object.challengeRound !== undefined && object.challengeRound !== null - ? long_1.default.fromValue(object.challengeRound) - : long_1.default.UZERO; - message.challengeCidTime = - object.challengeCidTime !== undefined && object.challengeCidTime !== null - ? duration_1.Duration.fromPartial(object.challengeCidTime) - : undefined; - message.challengeReplyTime = - object.challengeReplyTime !== undefined && - object.challengeReplyTime !== null - ? duration_1.Duration.fromPartial(object.challengeReplyTime) - : undefined; - message.challengeMerkleTime = - object.challengeMerkleTime !== undefined && - object.challengeMerkleTime !== null - ? duration_1.Duration.fromPartial(object.challengeMerkleTime) - : undefined; - message.challengeOriginTime = - object.challengeOriginTime !== undefined && - object.challengeOriginTime !== null - ? duration_1.Duration.fromPartial(object.challengeOriginTime) - : undefined; - message.agentValidTime = - object.agentValidTime !== undefined && object.agentValidTime !== null - ? duration_1.Duration.fromPartial(object.agentValidTime) - : undefined; - message.tokenPrice = - object.tokenPrice !== undefined && object.tokenPrice !== null - ? long_1.default.fromValue(object.tokenPrice) - : long_1.default.UZERO; + if (object.lowestAgentVersion !== undefined && object.lowestAgentVersion !== null) { + message.lowestAgentVersion = helpers_1.Long.fromValue(object.lowestAgentVersion); + } + if (object.highestAgentVersion !== undefined && object.highestAgentVersion !== null) { + message.highestAgentVersion = helpers_1.Long.fromValue(object.highestAgentVersion); + } + if (object.challengeRate !== undefined && object.challengeRate !== null) { + message.challengeRate = helpers_1.Long.fromValue(object.challengeRate); + } + if (object.validatorCount !== undefined && object.validatorCount !== null) { + message.validatorCount = helpers_1.Long.fromValue(object.validatorCount); + } + if (object.challengeRound !== undefined && object.challengeRound !== null) { + message.challengeRound = helpers_1.Long.fromValue(object.challengeRound); + } + if (object.challengeCidTime !== undefined && object.challengeCidTime !== null) { + message.challengeCidTime = duration_1.Duration.fromPartial(object.challengeCidTime); + } + if (object.challengeReplyTime !== undefined && object.challengeReplyTime !== null) { + message.challengeReplyTime = duration_1.Duration.fromPartial(object.challengeReplyTime); + } + if (object.challengeMerkleTime !== undefined && object.challengeMerkleTime !== null) { + message.challengeMerkleTime = duration_1.Duration.fromPartial(object.challengeMerkleTime); + } + if (object.challengeOriginTime !== undefined && object.challengeOriginTime !== null) { + message.challengeOriginTime = duration_1.Duration.fromPartial(object.challengeOriginTime); + } + if (object.agentValidTime !== undefined && object.agentValidTime !== null) { + message.agentValidTime = duration_1.Duration.fromPartial(object.agentValidTime); + } return message; - }, + } }; function createBaseInnerValues() { - return { seed: new Uint8Array() }; + return { + seed: new Uint8Array() + }; } exports.InnerValues = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.InnerValues", + encode(message, writer = _m0.Writer.create()) { if (message.seed.length !== 0) { writer.uint32(10).bytes(message.seed); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseInnerValues(); while (reader.pos < end) { @@ -530,84 +491,31 @@ exports.InnerValues = { return message; }, fromJSON(object) { - return { - seed: isSet(object.seed) - ? bytesFromBase64(object.seed) - : new Uint8Array(), - }; + const obj = createBaseInnerValues(); + if ((0, helpers_1.isSet)(object.seed)) + obj.seed = (0, helpers_1.bytesFromBase64)(object.seed); + return obj; }, toJSON(message) { const obj = {}; - message.seed !== undefined && - (obj.seed = base64FromBytes(message.seed !== undefined ? message.seed : new Uint8Array())); + message.seed !== undefined && (obj.seed = (0, helpers_1.base64FromBytes)(message.seed !== undefined ? message.seed : new Uint8Array())); return obj; }, fromPartial(object) { const message = createBaseInnerValues(); message.seed = object.seed ?? new Uint8Array(); return message; - }, -}; -function createBaseModel() { - return { name: "", repositoryUrl: "" }; -} -exports.Model = { - encode(message, writer = minimal_1.default.Writer.create()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.repositoryUrl !== "") { - writer.uint32(18).string(message.repositoryUrl); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); - let end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseModel(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.repositoryUrl = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }, - fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - repositoryUrl: isSet(object.repositoryUrl) - ? String(object.repositoryUrl) - : "", - }; - }, - toJSON(message) { - const obj = {}; - message.name !== undefined && (obj.name = message.name); - message.repositoryUrl !== undefined && - (obj.repositoryUrl = message.repositoryUrl); - return obj; - }, - fromPartial(object) { - const message = createBaseModel(); - message.name = object.name ?? ""; - message.repositoryUrl = object.repositoryUrl ?? ""; - return message; - }, + } }; function createBasePrestige() { - return { count: long_1.default.UZERO, total: long_1.default.UZERO }; + return { + count: helpers_1.Long.UZERO, + total: helpers_1.Long.UZERO + }; } exports.Prestige = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.Prestige", + encode(message, writer = _m0.Writer.create()) { if (!message.count.isZero()) { writer.uint32(8).uint64(message.count); } @@ -617,7 +525,7 @@ exports.Prestige = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePrestige(); while (reader.pos < end) { @@ -637,44 +545,43 @@ exports.Prestige = { return message; }, fromJSON(object) { - return { - count: isSet(object.count) ? long_1.default.fromValue(object.count) : long_1.default.UZERO, - total: isSet(object.total) ? long_1.default.fromValue(object.total) : long_1.default.UZERO, - }; + const obj = createBasePrestige(); + if ((0, helpers_1.isSet)(object.count)) + obj.count = helpers_1.Long.fromValue(object.count); + if ((0, helpers_1.isSet)(object.total)) + obj.total = helpers_1.Long.fromValue(object.total); + return obj; }, toJSON(message) { const obj = {}; - message.count !== undefined && - (obj.count = (message.count || long_1.default.UZERO).toString()); - message.total !== undefined && - (obj.total = (message.total || long_1.default.UZERO).toString()); + message.count !== undefined && (obj.count = (message.count || helpers_1.Long.UZERO).toString()); + message.total !== undefined && (obj.total = (message.total || helpers_1.Long.UZERO).toString()); return obj; }, fromPartial(object) { const message = createBasePrestige(); - message.count = - object.count !== undefined && object.count !== null - ? long_1.default.fromValue(object.count) - : long_1.default.UZERO; - message.total = - object.total !== undefined && object.total !== null - ? long_1.default.fromValue(object.total) - : long_1.default.UZERO; + if (object.count !== undefined && object.count !== null) { + message.count = helpers_1.Long.fromValue(object.count); + } + if (object.total !== undefined && object.total !== null) { + message.total = helpers_1.Long.fromValue(object.total); + } return message; - }, + } }; function createBaseInferenceAgent() { return { account: "", url: "", - version: long_1.default.UZERO, - prestige: undefined, + version: helpers_1.Long.UZERO, + prestige: exports.Prestige.fromPartial({}), status: 0, - validUntil: undefined, + validUntil: timestamp_1.Timestamp.fromPartial({}) }; } exports.InferenceAgent = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.InferenceAgent", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -691,12 +598,12 @@ exports.InferenceAgent = { writer.uint32(40).int32(message.status); } if (message.validUntil !== undefined) { - timestamp_1.Timestamp.encode(toTimestamp(message.validUntil), writer.uint32(50).fork()).ldelim(); + timestamp_1.Timestamp.encode(message.validUntil, writer.uint32(50).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseInferenceAgent(); while (reader.pos < end) { @@ -718,7 +625,7 @@ exports.InferenceAgent = { message.status = reader.int32(); break; case 6: - message.validUntil = fromTimestamp(timestamp_1.Timestamp.decode(reader, reader.uint32())); + message.validUntil = timestamp_1.Timestamp.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); @@ -728,59 +635,59 @@ exports.InferenceAgent = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - url: isSet(object.url) ? String(object.url) : "", - version: isSet(object.version) - ? long_1.default.fromValue(object.version) - : long_1.default.UZERO, - prestige: isSet(object.prestige) - ? exports.Prestige.fromJSON(object.prestige) - : undefined, - status: isSet(object.status) ? agentStatusFromJSON(object.status) : 0, - validUntil: isSet(object.validUntil) - ? fromJsonTimestamp(object.validUntil) - : undefined, - }; + const obj = createBaseInferenceAgent(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.url)) + obj.url = String(object.url); + if ((0, helpers_1.isSet)(object.version)) + obj.version = helpers_1.Long.fromValue(object.version); + if ((0, helpers_1.isSet)(object.prestige)) + obj.prestige = exports.Prestige.fromJSON(object.prestige); + if ((0, helpers_1.isSet)(object.status)) + obj.status = agentStatusFromJSON(object.status); + if ((0, helpers_1.isSet)(object.validUntil)) + obj.validUntil = (0, helpers_1.fromJsonTimestamp)(object.validUntil); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.url !== undefined && (obj.url = message.url); - message.version !== undefined && - (obj.version = (message.version || long_1.default.UZERO).toString()); - message.prestige !== undefined && - (obj.prestige = message.prestige - ? exports.Prestige.toJSON(message.prestige) - : undefined); - message.status !== undefined && - (obj.status = agentStatusToJSON(message.status)); - message.validUntil !== undefined && - (obj.validUntil = message.validUntil.toISOString()); + message.version !== undefined && (obj.version = (message.version || helpers_1.Long.UZERO).toString()); + message.prestige !== undefined && (obj.prestige = message.prestige ? exports.Prestige.toJSON(message.prestige) : undefined); + message.status !== undefined && (obj.status = agentStatusToJSON(message.status)); + message.validUntil !== undefined && (obj.validUntil = (0, helpers_1.fromTimestamp)(message.validUntil).toISOString()); return obj; }, fromPartial(object) { const message = createBaseInferenceAgent(); message.account = object.account ?? ""; message.url = object.url ?? ""; - message.version = - object.version !== undefined && object.version !== null - ? long_1.default.fromValue(object.version) - : long_1.default.UZERO; - message.prestige = - object.prestige !== undefined && object.prestige !== null - ? exports.Prestige.fromPartial(object.prestige) - : undefined; + if (object.version !== undefined && object.version !== null) { + message.version = helpers_1.Long.fromValue(object.version); + } + if (object.prestige !== undefined && object.prestige !== null) { + message.prestige = exports.Prestige.fromPartial(object.prestige); + } message.status = object.status ?? 0; - message.validUntil = object.validUntil ?? undefined; + if (object.validUntil !== undefined && object.validUntil !== null) { + message.validUntil = timestamp_1.Timestamp.fromPartial(object.validUntil); + } return message; - }, + } }; function createBaseAgentModel() { - return { account: "", modelName: "", lock: long_1.default.UZERO, status: 0 }; + return { + account: "", + modelName: "", + lock: helpers_1.Long.UZERO, + status: 0 + }; } exports.AgentModel = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.AgentModel", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -796,7 +703,7 @@ exports.AgentModel = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseAgentModel(); while (reader.pos < end) { @@ -822,42 +729,108 @@ exports.AgentModel = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - modelName: isSet(object.modelName) ? String(object.modelName) : "", - lock: isSet(object.lock) ? long_1.default.fromValue(object.lock) : long_1.default.UZERO, - status: isSet(object.status) - ? agentModelStatusFromJSON(object.status) - : 0, - }; + const obj = createBaseAgentModel(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.lock)) + obj.lock = helpers_1.Long.fromValue(object.lock); + if ((0, helpers_1.isSet)(object.status)) + obj.status = agentModelStatusFromJSON(object.status); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.modelName !== undefined && (obj.modelName = message.modelName); - message.lock !== undefined && - (obj.lock = (message.lock || long_1.default.UZERO).toString()); - message.status !== undefined && - (obj.status = agentModelStatusToJSON(message.status)); + message.lock !== undefined && (obj.lock = (message.lock || helpers_1.Long.UZERO).toString()); + message.status !== undefined && (obj.status = agentModelStatusToJSON(message.status)); return obj; }, fromPartial(object) { const message = createBaseAgentModel(); message.account = object.account ?? ""; message.modelName = object.modelName ?? ""; - message.lock = - object.lock !== undefined && object.lock !== null - ? long_1.default.fromValue(object.lock) - : long_1.default.UZERO; + if (object.lock !== undefined && object.lock !== null) { + message.lock = helpers_1.Long.fromValue(object.lock); + } message.status = object.status ?? 0; return message; + } +}; +function createBaseTokenPrice() { + return { + inputPrice: coin_1.Coin.fromPartial({}), + outputPrice: coin_1.Coin.fromPartial({}) + }; +} +exports.TokenPrice = { + typeUrl: "/agent.v1.TokenPrice", + encode(message, writer = _m0.Writer.create()) { + if (message.inputPrice !== undefined) { + coin_1.Coin.encode(message.inputPrice, writer.uint32(10).fork()).ldelim(); + } + if (message.outputPrice !== undefined) { + coin_1.Coin.encode(message.outputPrice, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTokenPrice(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.inputPrice = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 2: + message.outputPrice = coin_1.Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseTokenPrice(); + if ((0, helpers_1.isSet)(object.inputPrice)) + obj.inputPrice = coin_1.Coin.fromJSON(object.inputPrice); + if ((0, helpers_1.isSet)(object.outputPrice)) + obj.outputPrice = coin_1.Coin.fromJSON(object.outputPrice); + return obj; }, + toJSON(message) { + const obj = {}; + message.inputPrice !== undefined && (obj.inputPrice = message.inputPrice ? coin_1.Coin.toJSON(message.inputPrice) : undefined); + message.outputPrice !== undefined && (obj.outputPrice = message.outputPrice ? coin_1.Coin.toJSON(message.outputPrice) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseTokenPrice(); + if (object.inputPrice !== undefined && object.inputPrice !== null) { + message.inputPrice = coin_1.Coin.fromPartial(object.inputPrice); + } + if (object.outputPrice !== undefined && object.outputPrice !== null) { + message.outputPrice = coin_1.Coin.fromPartial(object.outputPrice); + } + return message; + } }; function createBasePaymentContribution() { - return { account: "", rate: long_1.default.UZERO, amount: undefined }; + return { + account: "", + rate: helpers_1.Long.UZERO, + amount: undefined + }; } exports.PaymentContribution = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.PaymentContribution", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -870,7 +843,7 @@ exports.PaymentContribution = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePaymentContribution(); while (reader.pos < end) { @@ -893,53 +866,55 @@ exports.PaymentContribution = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - rate: isSet(object.rate) ? long_1.default.fromValue(object.rate) : long_1.default.UZERO, - amount: isSet(object.amount) ? coin_1.Coin.fromJSON(object.amount) : undefined, - }; + const obj = createBasePaymentContribution(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.rate)) + obj.rate = helpers_1.Long.fromValue(object.rate); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = coin_1.Coin.fromJSON(object.amount); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); - message.rate !== undefined && - (obj.rate = (message.rate || long_1.default.UZERO).toString()); - message.amount !== undefined && - (obj.amount = message.amount ? coin_1.Coin.toJSON(message.amount) : undefined); + message.rate !== undefined && (obj.rate = (message.rate || helpers_1.Long.UZERO).toString()); + message.amount !== undefined && (obj.amount = message.amount ? coin_1.Coin.toJSON(message.amount) : undefined); return obj; }, fromPartial(object) { const message = createBasePaymentContribution(); message.account = object.account ?? ""; - message.rate = - object.rate !== undefined && object.rate !== null - ? long_1.default.fromValue(object.rate) - : long_1.default.UZERO; - message.amount = - object.amount !== undefined && object.amount !== null - ? coin_1.Coin.fromPartial(object.amount) - : undefined; + if (object.rate !== undefined && object.rate !== null) { + message.rate = helpers_1.Long.fromValue(object.rate); + } + if (object.amount !== undefined && object.amount !== null) { + message.amount = coin_1.Coin.fromPartial(object.amount); + } return message; - }, + } }; function createBasePayment() { return { - tokens: [], - totalPayment: undefined, + inputTokens: [], + outputTokens: [], merkleRoot: new Uint8Array(), - contributions: [], + contributions: [] }; } exports.Payment = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.Payment", + encode(message, writer = _m0.Writer.create()) { writer.uint32(10).fork(); - for (const v of message.tokens) { + for (const v of message.inputTokens) { writer.uint64(v); } writer.ldelim(); - if (message.totalPayment !== undefined) { - coin_1.Coin.encode(message.totalPayment, writer.uint32(18).fork()).ldelim(); + writer.uint32(18).fork(); + for (const v of message.outputTokens) { + writer.uint64(v); } + writer.ldelim(); if (message.merkleRoot.length !== 0) { writer.uint32(26).bytes(message.merkleRoot); } @@ -949,7 +924,7 @@ exports.Payment = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePayment(); while (reader.pos < end) { @@ -959,15 +934,23 @@ exports.Payment = { if ((tag & 7) === 2) { const end2 = reader.uint32() + reader.pos; while (reader.pos < end2) { - message.tokens.push(reader.uint64()); + message.inputTokens.push(reader.uint64()); } } else { - message.tokens.push(reader.uint64()); + message.inputTokens.push(reader.uint64()); } break; case 2: - message.totalPayment = coin_1.Coin.decode(reader, reader.uint32()); + if ((tag & 7) === 2) { + const end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) { + message.outputTokens.push(reader.uint64()); + } + } + else { + message.outputTokens.push(reader.uint64()); + } break; case 3: message.merkleRoot = reader.bytes(); @@ -983,37 +966,34 @@ exports.Payment = { return message; }, fromJSON(object) { - return { - tokens: Array.isArray(object?.tokens) - ? object.tokens.map((e) => long_1.default.fromValue(e)) - : [], - totalPayment: isSet(object.totalPayment) - ? coin_1.Coin.fromJSON(object.totalPayment) - : undefined, - merkleRoot: isSet(object.merkleRoot) - ? bytesFromBase64(object.merkleRoot) - : new Uint8Array(), - contributions: Array.isArray(object?.contributions) - ? object.contributions.map((e) => exports.PaymentContribution.fromJSON(e)) - : [], - }; + const obj = createBasePayment(); + if (Array.isArray(object?.inputTokens)) + obj.inputTokens = object.inputTokens.map((e) => helpers_1.Long.fromValue(e)); + if (Array.isArray(object?.outputTokens)) + obj.outputTokens = object.outputTokens.map((e) => helpers_1.Long.fromValue(e)); + if ((0, helpers_1.isSet)(object.merkleRoot)) + obj.merkleRoot = (0, helpers_1.bytesFromBase64)(object.merkleRoot); + if (Array.isArray(object?.contributions)) + obj.contributions = object.contributions.map((e) => exports.PaymentContribution.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; - if (message.tokens) { - obj.tokens = message.tokens.map((e) => (e || long_1.default.UZERO).toString()); + if (message.inputTokens) { + obj.inputTokens = message.inputTokens.map(e => (e || helpers_1.Long.UZERO).toString()); } else { - obj.tokens = []; - } - message.totalPayment !== undefined && - (obj.totalPayment = message.totalPayment - ? coin_1.Coin.toJSON(message.totalPayment) - : undefined); - message.merkleRoot !== undefined && - (obj.merkleRoot = base64FromBytes(message.merkleRoot !== undefined ? message.merkleRoot : new Uint8Array())); + obj.inputTokens = []; + } + if (message.outputTokens) { + obj.outputTokens = message.outputTokens.map(e => (e || helpers_1.Long.UZERO).toString()); + } + else { + obj.outputTokens = []; + } + message.merkleRoot !== undefined && (obj.merkleRoot = (0, helpers_1.base64FromBytes)(message.merkleRoot !== undefined ? message.merkleRoot : new Uint8Array())); if (message.contributions) { - obj.contributions = message.contributions.map((e) => e ? exports.PaymentContribution.toJSON(e) : undefined); + obj.contributions = message.contributions.map(e => e ? exports.PaymentContribution.toJSON(e) : undefined); } else { obj.contributions = []; @@ -1022,28 +1002,24 @@ exports.Payment = { }, fromPartial(object) { const message = createBasePayment(); - message.tokens = object.tokens?.map((e) => long_1.default.fromValue(e)) || []; - message.totalPayment = - object.totalPayment !== undefined && object.totalPayment !== null - ? coin_1.Coin.fromPartial(object.totalPayment) - : undefined; + message.inputTokens = object.inputTokens?.map(e => helpers_1.Long.fromValue(e)) || []; + message.outputTokens = object.outputTokens?.map(e => helpers_1.Long.fromValue(e)) || []; message.merkleRoot = object.merkleRoot ?? new Uint8Array(); - message.contributions = - object.contributions?.map((e) => exports.PaymentContribution.fromPartial(e)) || - []; + message.contributions = object.contributions?.map(e => exports.PaymentContribution.fromPartial(e)) || []; return message; - }, + } }; function createBaseChallengeValidator() { return { account: "", hash: new Uint8Array(), originHash: new Uint8Array(), - status: 0, + status: 0 }; } exports.ChallengeValidator = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.ChallengeValidator", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -1059,7 +1035,7 @@ exports.ChallengeValidator = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallengeValidator(); while (reader.pos < end) { @@ -1085,26 +1061,23 @@ exports.ChallengeValidator = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - hash: isSet(object.hash) - ? bytesFromBase64(object.hash) - : new Uint8Array(), - originHash: isSet(object.originHash) - ? bytesFromBase64(object.originHash) - : new Uint8Array(), - status: isSet(object.status) ? validatorStatusFromJSON(object.status) : 0, - }; + const obj = createBaseChallengeValidator(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.hash)) + obj.hash = (0, helpers_1.bytesFromBase64)(object.hash); + if ((0, helpers_1.isSet)(object.originHash)) + obj.originHash = (0, helpers_1.bytesFromBase64)(object.originHash); + if ((0, helpers_1.isSet)(object.status)) + obj.status = validatorStatusFromJSON(object.status); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); - message.hash !== undefined && - (obj.hash = base64FromBytes(message.hash !== undefined ? message.hash : new Uint8Array())); - message.originHash !== undefined && - (obj.originHash = base64FromBytes(message.originHash !== undefined ? message.originHash : new Uint8Array())); - message.status !== undefined && - (obj.status = validatorStatusToJSON(message.status)); + message.hash !== undefined && (obj.hash = (0, helpers_1.base64FromBytes)(message.hash !== undefined ? message.hash : new Uint8Array())); + message.originHash !== undefined && (obj.originHash = (0, helpers_1.base64FromBytes)(message.originHash !== undefined ? message.originHash : new Uint8Array())); + message.status !== undefined && (obj.status = validatorStatusToJSON(message.status)); return obj; }, fromPartial(object) { @@ -1114,20 +1087,21 @@ exports.ChallengeValidator = { message.originHash = object.originHash ?? new Uint8Array(); message.status = object.status ?? 0; return message; - }, + } }; function createBaseChallengeInfo() { return { - questionId: long_1.default.UZERO, + questionId: helpers_1.Long.UZERO, cid: "", answerHash: new Uint8Array(), cutMerkle: [], validators: [], - hashCount: long_1.default.UZERO, + hashCount: helpers_1.Long.UZERO }; } exports.ChallengeInfo = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.ChallengeInfo", + encode(message, writer = _m0.Writer.create()) { if (!message.questionId.isZero()) { writer.uint32(8).uint64(message.questionId); } @@ -1149,7 +1123,7 @@ exports.ChallengeInfo = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallengeInfo(); while (reader.pos < end) { @@ -1181,65 +1155,55 @@ exports.ChallengeInfo = { return message; }, fromJSON(object) { - return { - questionId: isSet(object.questionId) - ? long_1.default.fromValue(object.questionId) - : long_1.default.UZERO, - cid: isSet(object.cid) ? String(object.cid) : "", - answerHash: isSet(object.answerHash) - ? bytesFromBase64(object.answerHash) - : new Uint8Array(), - cutMerkle: Array.isArray(object?.cutMerkle) - ? object.cutMerkle.map((e) => bytesFromBase64(e)) - : [], - validators: Array.isArray(object?.validators) - ? object.validators.map((e) => exports.ChallengeValidator.fromJSON(e)) - : [], - hashCount: isSet(object.hashCount) - ? long_1.default.fromValue(object.hashCount) - : long_1.default.UZERO, - }; + const obj = createBaseChallengeInfo(); + if ((0, helpers_1.isSet)(object.questionId)) + obj.questionId = helpers_1.Long.fromValue(object.questionId); + if ((0, helpers_1.isSet)(object.cid)) + obj.cid = String(object.cid); + if ((0, helpers_1.isSet)(object.answerHash)) + obj.answerHash = (0, helpers_1.bytesFromBase64)(object.answerHash); + if (Array.isArray(object?.cutMerkle)) + obj.cutMerkle = object.cutMerkle.map((e) => (0, helpers_1.bytesFromBase64)(e)); + if (Array.isArray(object?.validators)) + obj.validators = object.validators.map((e) => exports.ChallengeValidator.fromJSON(e)); + if ((0, helpers_1.isSet)(object.hashCount)) + obj.hashCount = helpers_1.Long.fromValue(object.hashCount); + return obj; }, toJSON(message) { const obj = {}; - message.questionId !== undefined && - (obj.questionId = (message.questionId || long_1.default.UZERO).toString()); + message.questionId !== undefined && (obj.questionId = (message.questionId || helpers_1.Long.UZERO).toString()); message.cid !== undefined && (obj.cid = message.cid); - message.answerHash !== undefined && - (obj.answerHash = base64FromBytes(message.answerHash !== undefined ? message.answerHash : new Uint8Array())); + message.answerHash !== undefined && (obj.answerHash = (0, helpers_1.base64FromBytes)(message.answerHash !== undefined ? message.answerHash : new Uint8Array())); if (message.cutMerkle) { - obj.cutMerkle = message.cutMerkle.map((e) => base64FromBytes(e !== undefined ? e : new Uint8Array())); + obj.cutMerkle = message.cutMerkle.map(e => (0, helpers_1.base64FromBytes)(e !== undefined ? e : new Uint8Array())); } else { obj.cutMerkle = []; } if (message.validators) { - obj.validators = message.validators.map((e) => e ? exports.ChallengeValidator.toJSON(e) : undefined); + obj.validators = message.validators.map(e => e ? exports.ChallengeValidator.toJSON(e) : undefined); } else { obj.validators = []; } - message.hashCount !== undefined && - (obj.hashCount = (message.hashCount || long_1.default.UZERO).toString()); + message.hashCount !== undefined && (obj.hashCount = (message.hashCount || helpers_1.Long.UZERO).toString()); return obj; }, fromPartial(object) { const message = createBaseChallengeInfo(); - message.questionId = - object.questionId !== undefined && object.questionId !== null - ? long_1.default.fromValue(object.questionId) - : long_1.default.UZERO; + if (object.questionId !== undefined && object.questionId !== null) { + message.questionId = helpers_1.Long.fromValue(object.questionId); + } message.cid = object.cid ?? ""; message.answerHash = object.answerHash ?? new Uint8Array(); - message.cutMerkle = object.cutMerkle?.map((e) => e) || []; - message.validators = - object.validators?.map((e) => exports.ChallengeValidator.fromPartial(e)) || []; - message.hashCount = - object.hashCount !== undefined && object.hashCount !== null - ? long_1.default.fromValue(object.hashCount) - : long_1.default.UZERO; + message.cutMerkle = object.cutMerkle?.map(e => e) || []; + message.validators = object.validators?.map(e => exports.ChallengeValidator.fromPartial(e)) || []; + if (object.hashCount !== undefined && object.hashCount !== null) { + message.hashCount = helpers_1.Long.fromValue(object.hashCount); + } return message; - }, + } }; function createBaseSession() { return { @@ -1247,17 +1211,18 @@ function createBaseSession() { account: "", modelName: "", agentAccount: "", - userLock: undefined, - minerLock: undefined, - tokenPrice: long_1.default.UZERO, - expirationAt: undefined, + userLock: coin_1.Coin.fromPartial({}), + minerLock: coin_1.Coin.fromPartial({}), + tokenPrice: exports.TokenPrice.fromPartial({}), + expirationAt: timestamp_1.Timestamp.fromPartial({}), payment: undefined, status: 0, - challengeInfo: [], + challengeInfo: [] }; } exports.Session = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.Session", + encode(message, writer = _m0.Writer.create()) { if (message.sessionId !== "") { writer.uint32(10).string(message.sessionId); } @@ -1276,11 +1241,11 @@ exports.Session = { if (message.minerLock !== undefined) { coin_1.Coin.encode(message.minerLock, writer.uint32(50).fork()).ldelim(); } - if (!message.tokenPrice.isZero()) { - writer.uint32(56).uint64(message.tokenPrice); + if (message.tokenPrice !== undefined) { + exports.TokenPrice.encode(message.tokenPrice, writer.uint32(58).fork()).ldelim(); } if (message.expirationAt !== undefined) { - timestamp_1.Timestamp.encode(toTimestamp(message.expirationAt), writer.uint32(66).fork()).ldelim(); + timestamp_1.Timestamp.encode(message.expirationAt, writer.uint32(66).fork()).ldelim(); } if (message.payment !== undefined) { exports.Payment.encode(message.payment, writer.uint32(74).fork()).ldelim(); @@ -1294,7 +1259,7 @@ exports.Session = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseSession(); while (reader.pos < end) { @@ -1319,10 +1284,10 @@ exports.Session = { message.minerLock = coin_1.Coin.decode(reader, reader.uint32()); break; case 7: - message.tokenPrice = reader.uint64(); + message.tokenPrice = exports.TokenPrice.decode(reader, reader.uint32()); break; case 8: - message.expirationAt = fromTimestamp(timestamp_1.Timestamp.decode(reader, reader.uint32())); + message.expirationAt = timestamp_1.Timestamp.decode(reader, reader.uint32()); break; case 9: message.payment = exports.Payment.decode(reader, reader.uint32()); @@ -1341,61 +1306,45 @@ exports.Session = { return message; }, fromJSON(object) { - return { - sessionId: isSet(object.sessionId) ? String(object.sessionId) : "", - account: isSet(object.account) ? String(object.account) : "", - modelName: isSet(object.modelName) ? String(object.modelName) : "", - agentAccount: isSet(object.agentAccount) - ? String(object.agentAccount) - : "", - userLock: isSet(object.userLock) - ? coin_1.Coin.fromJSON(object.userLock) - : undefined, - minerLock: isSet(object.minerLock) - ? coin_1.Coin.fromJSON(object.minerLock) - : undefined, - tokenPrice: isSet(object.tokenPrice) - ? long_1.default.fromValue(object.tokenPrice) - : long_1.default.UZERO, - expirationAt: isSet(object.expirationAt) - ? fromJsonTimestamp(object.expirationAt) - : undefined, - payment: isSet(object.payment) - ? exports.Payment.fromJSON(object.payment) - : undefined, - status: isSet(object.status) ? sessionStatusFromJSON(object.status) : 0, - challengeInfo: Array.isArray(object?.challengeInfo) - ? object.challengeInfo.map((e) => exports.ChallengeInfo.fromJSON(e)) - : [], - }; + const obj = createBaseSession(); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.agentAccount)) + obj.agentAccount = String(object.agentAccount); + if ((0, helpers_1.isSet)(object.userLock)) + obj.userLock = coin_1.Coin.fromJSON(object.userLock); + if ((0, helpers_1.isSet)(object.minerLock)) + obj.minerLock = coin_1.Coin.fromJSON(object.minerLock); + if ((0, helpers_1.isSet)(object.tokenPrice)) + obj.tokenPrice = exports.TokenPrice.fromJSON(object.tokenPrice); + if ((0, helpers_1.isSet)(object.expirationAt)) + obj.expirationAt = (0, helpers_1.fromJsonTimestamp)(object.expirationAt); + if ((0, helpers_1.isSet)(object.payment)) + obj.payment = exports.Payment.fromJSON(object.payment); + if ((0, helpers_1.isSet)(object.status)) + obj.status = sessionStatusFromJSON(object.status); + if (Array.isArray(object?.challengeInfo)) + obj.challengeInfo = object.challengeInfo.map((e) => exports.ChallengeInfo.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; message.sessionId !== undefined && (obj.sessionId = message.sessionId); message.account !== undefined && (obj.account = message.account); message.modelName !== undefined && (obj.modelName = message.modelName); - message.agentAccount !== undefined && - (obj.agentAccount = message.agentAccount); - message.userLock !== undefined && - (obj.userLock = message.userLock - ? coin_1.Coin.toJSON(message.userLock) - : undefined); - message.minerLock !== undefined && - (obj.minerLock = message.minerLock - ? coin_1.Coin.toJSON(message.minerLock) - : undefined); - message.tokenPrice !== undefined && - (obj.tokenPrice = (message.tokenPrice || long_1.default.UZERO).toString()); - message.expirationAt !== undefined && - (obj.expirationAt = message.expirationAt.toISOString()); - message.payment !== undefined && - (obj.payment = message.payment - ? exports.Payment.toJSON(message.payment) - : undefined); - message.status !== undefined && - (obj.status = sessionStatusToJSON(message.status)); + message.agentAccount !== undefined && (obj.agentAccount = message.agentAccount); + message.userLock !== undefined && (obj.userLock = message.userLock ? coin_1.Coin.toJSON(message.userLock) : undefined); + message.minerLock !== undefined && (obj.minerLock = message.minerLock ? coin_1.Coin.toJSON(message.minerLock) : undefined); + message.tokenPrice !== undefined && (obj.tokenPrice = message.tokenPrice ? exports.TokenPrice.toJSON(message.tokenPrice) : undefined); + message.expirationAt !== undefined && (obj.expirationAt = (0, helpers_1.fromTimestamp)(message.expirationAt).toISOString()); + message.payment !== undefined && (obj.payment = message.payment ? exports.Payment.toJSON(message.payment) : undefined); + message.status !== undefined && (obj.status = sessionStatusToJSON(message.status)); if (message.challengeInfo) { - obj.challengeInfo = message.challengeInfo.map((e) => e ? exports.ChallengeInfo.toJSON(e) : undefined); + obj.challengeInfo = message.challengeInfo.map(e => e ? exports.ChallengeInfo.toJSON(e) : undefined); } else { obj.challengeInfo = []; @@ -1408,34 +1357,35 @@ exports.Session = { message.account = object.account ?? ""; message.modelName = object.modelName ?? ""; message.agentAccount = object.agentAccount ?? ""; - message.userLock = - object.userLock !== undefined && object.userLock !== null - ? coin_1.Coin.fromPartial(object.userLock) - : undefined; - message.minerLock = - object.minerLock !== undefined && object.minerLock !== null - ? coin_1.Coin.fromPartial(object.minerLock) - : undefined; - message.tokenPrice = - object.tokenPrice !== undefined && object.tokenPrice !== null - ? long_1.default.fromValue(object.tokenPrice) - : long_1.default.UZERO; - message.expirationAt = object.expirationAt ?? undefined; - message.payment = - object.payment !== undefined && object.payment !== null - ? exports.Payment.fromPartial(object.payment) - : undefined; + if (object.userLock !== undefined && object.userLock !== null) { + message.userLock = coin_1.Coin.fromPartial(object.userLock); + } + if (object.minerLock !== undefined && object.minerLock !== null) { + message.minerLock = coin_1.Coin.fromPartial(object.minerLock); + } + if (object.tokenPrice !== undefined && object.tokenPrice !== null) { + message.tokenPrice = exports.TokenPrice.fromPartial(object.tokenPrice); + } + if (object.expirationAt !== undefined && object.expirationAt !== null) { + message.expirationAt = timestamp_1.Timestamp.fromPartial(object.expirationAt); + } + if (object.payment !== undefined && object.payment !== null) { + message.payment = exports.Payment.fromPartial(object.payment); + } message.status = object.status ?? 0; - message.challengeInfo = - object.challengeInfo?.map((e) => exports.ChallengeInfo.fromPartial(e)) || []; + message.challengeInfo = object.challengeInfo?.map(e => exports.ChallengeInfo.fromPartial(e)) || []; return message; - }, + } }; function createBaseVrfSeed() { - return { account: "", seed: new Uint8Array() }; + return { + account: "", + seed: new Uint8Array() + }; } exports.VrfSeed = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.VrfSeed", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -1445,7 +1395,7 @@ exports.VrfSeed = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseVrfSeed(); while (reader.pos < end) { @@ -1465,18 +1415,17 @@ exports.VrfSeed = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - seed: isSet(object.seed) - ? bytesFromBase64(object.seed) - : new Uint8Array(), - }; + const obj = createBaseVrfSeed(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.seed)) + obj.seed = (0, helpers_1.bytesFromBase64)(object.seed); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); - message.seed !== undefined && - (obj.seed = base64FromBytes(message.seed !== undefined ? message.seed : new Uint8Array())); + message.seed !== undefined && (obj.seed = (0, helpers_1.base64FromBytes)(message.seed !== undefined ? message.seed : new Uint8Array())); return obj; }, fromPartial(object) { @@ -1484,73 +1433,6 @@ exports.VrfSeed = { message.account = object.account ?? ""; message.seed = object.seed ?? new Uint8Array(); return message; - }, -}; -var globalThis = (() => { - if (typeof globalThis !== "undefined") - return globalThis; - if (typeof self !== "undefined") - return self; - if (typeof window !== "undefined") - return window; - if (typeof global !== "undefined") - return global; - throw "Unable to locate global object"; -})(); -function bytesFromBase64(b64) { - if (globalThis.Buffer) { - return Uint8Array.from(globalThis.Buffer.from(b64, "base64")); } - else { - const bin = globalThis.atob(b64); - const arr = new Uint8Array(bin.length); - for (let i = 0; i < bin.length; ++i) { - arr[i] = bin.charCodeAt(i); - } - return arr; - } -} -function base64FromBytes(arr) { - if (globalThis.Buffer) { - return globalThis.Buffer.from(arr).toString("base64"); - } - else { - const bin = []; - arr.forEach((byte) => { - bin.push(String.fromCharCode(byte)); - }); - return globalThis.btoa(bin.join("")); - } -} -function toTimestamp(date) { - const seconds = numberToLong(date.getTime() / 1000); - const nanos = (date.getTime() % 1000) * 1000000; - return { seconds, nanos }; -} -function fromTimestamp(t) { - let millis = t.seconds.toNumber() * 1000; - millis += t.nanos / 1000000; - return new Date(millis); -} -function fromJsonTimestamp(o) { - if (o instanceof Date) { - return o; - } - else if (typeof o === "string") { - return new Date(o); - } - else { - return fromTimestamp(timestamp_1.Timestamp.fromJSON(o)); - } -} -function numberToLong(number) { - return long_1.default.fromNumber(number); -} -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvYWdlbnQvdjEvYWdlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLHlEQUFzRDtBQUN0RCw2REFBMEQ7QUFDMUQsK0RBQTREO0FBQzVELGdEQUF3QjtBQUN4QixpRUFBcUM7QUFFeEIsUUFBQSxlQUFlLEdBQUcsVUFBVSxDQUFDO0FBRTFDLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQiwyRUFBdUIsQ0FBQTtJQUN2QiwrRUFBeUIsQ0FBQTtJQUN6Qiw4REFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBSlcsV0FBVywyQkFBWCxXQUFXLFFBSXRCO0FBRUQsU0FBZ0IsbUJBQW1CLENBQUMsTUFBVztJQUM3QyxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxDQUFDLENBQUM7UUFDUCxLQUFLLHFCQUFxQjtZQUN4QixPQUFPLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQztRQUN6QyxLQUFLLENBQUMsQ0FBQztRQUNQLEtBQUssdUJBQXVCO1lBQzFCLE9BQU8sV0FBVyxDQUFDLHFCQUFxQixDQUFDO1FBQzNDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDUixLQUFLLGNBQWMsQ0FBQztRQUNwQjtZQUNFLE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FBQztJQUNwQyxDQUFDO0FBQ0gsQ0FBQztBQWJELGtEQWFDO0FBRUQsU0FBZ0IsaUJBQWlCLENBQUMsTUFBbUI7SUFDbkQsUUFBUSxNQUFNLEVBQUUsQ0FBQztRQUNmLEtBQUssV0FBVyxDQUFDLG1CQUFtQjtZQUNsQyxPQUFPLHFCQUFxQixDQUFDO1FBQy9CLEtBQUssV0FBVyxDQUFDLHFCQUFxQjtZQUNwQyxPQUFPLHVCQUF1QixDQUFDO1FBQ2pDLEtBQUssV0FBVyxDQUFDLFlBQVksQ0FBQztRQUM5QjtZQUNFLE9BQU8sY0FBYyxDQUFDO0lBQzFCLENBQUM7QUFDSCxD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 \ No newline at end of file +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvYWdlbnQvdjEvYWdlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIseURBQXNEO0FBQ3RELDZEQUEwRDtBQUMxRCwrREFBNEQ7QUFDNUQsMkNBQW9JO0FBQ3BJLHdEQUEwQztBQUU3QixRQUFBLGVBQWUsR0FBRyxVQUFVLENBQUM7QUFDMUMseURBQXlEO0FBQ3pELElBQVksV0FNWDtBQU5ELFdBQVksV0FBVztJQUNyQiw4RUFBOEU7SUFDOUUsMkVBQXVCLENBQUE7SUFDdkIsb0ZBQW9GO0lBQ3BGLCtFQUF5QixDQUFBO0lBQ3pCLDhEQUFpQixDQUFBO0FBQ25CLENBQUMsRUFOVyxXQUFXLDJCQUFYLFdBQVcsUUFNdEI7QUFDRCxTQUFnQixtQkFBbUIsQ0FBQyxNQUFXO0lBQzdDLFFBQVEsTUFBTSxFQUFFLENBQUM7UUFDZixLQUFLLENBQUMsQ0FBQztRQUNQLEtBQUsscUJBQXFCO1lBQ3hCLE9BQU8sV0FBVyxDQUFDLG1CQUFtQixDQUFDO1FBQ3pDLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyx1QkFBdUI7WUFDMUIsT0FBTyxXQUFXLENBQUMscUJBQXFCLENBQUM7UUFDM0MsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNSLEtBQUssY0FBYyxDQUFDO1FBQ3BCO1lBQ0UsT0FBTyxXQUFXLENBQUMsWUFBWSxDQUFDO0lBQ3BDLENBQUM7QUFDSCxDQUFDO0FBYkQsa0RBYUM7QUFDRCxTQUFnQixpQkFBaUIsQ0FBQyxNQUFtQjtJQUNuRCxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxXQUFXLENBQUMsbUJBQW1CO1lBQ2xDLE9BQU8scUJBQXFCLENBQUM7UUFDL0IsS0FBSyxXQUFXLENBQUMscUJBQXFCO1lBQ3BDLE9BQU8sdUJBQXVCLENBQUM7UUFDakMsS0FBSyxXQUFX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 \ No newline at end of file diff --git a/dist/codec/agent/v1/genesis.d.ts b/dist/codec/agent/v1/genesis.d.ts index 8dd3054..f0fc6b6 100644 --- a/dist/codec/agent/v1/genesis.d.ts +++ b/dist/codec/agent/v1/genesis.d.ts @@ -1,20 +1,22 @@ +/// import { Params, InnerValues, InferenceAgent, AgentModel, Session, VrfSeed } from "./agent"; -import Long from "long"; -import _m0 from "protobufjs/minimal"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; export declare const protobufPackage = "agent.v1"; export interface GenesisState { - params?: Params; - innerValues?: InnerValues; + params: Params; + innerValues: InnerValues; agents: InferenceAgent[]; agentModels: AgentModel[]; sessions: Session[]; vrfSeeds: VrfSeed[]; } export declare const GenesisState: { + typeUrl: string; encode(message: GenesisState, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GenesisState; fromJSON(object: any): GenesisState; - toJSON(message: GenesisState): unknown; + toJSON(message: GenesisState): JsonSafe; fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; userMinimumLock?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; sessionTime?: ({ - seconds?: string | number | Long.Long | undefined; + seconds?: string | number | import("long").Long | undefined; nanos?: number | undefined; } & { - seconds?: string | number | (Long.Long & { + seconds?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeTime?: ({ - seconds?: string | number | Long.Long | undefined; + seconds?: string | number | import("long").Long | undefined; nanos?: number | undefined; } & { - seconds?: string | number | (Long.Long & { + seconds?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_4 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; globalSeed?: Uint8Array | undefined; - lowestAgentVersion?: string | number | (Long.Long & { + lowestAgentVersion?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; - highestAgentVersion?: string | number | (Long.Long & { + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + highestAgentVersion?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_7 in Exclude]: never; }) | undefined; - challengeRate?: string | number | (Long.Long & { + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + challengeRate?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_8 in Exclude]: never; }) | undefined; - validatorCount?: string | number | (Long.Long & { + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + validatorCount?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_9 in Exclude]: never; }) | undefined; - challengeRound?: string | number | (Long.Long & { + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + challengeRound?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_10 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; challengeCidTime?: ({ - seconds?: string | number | Long.Long | undefined; + seconds?: string | number | import("long").Long | undefined; nanos?: number | undefined; } & { - seconds?: string | number | (Long.Long & { + seconds?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_12 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeReplyTime?: ({ - seconds?: string | number | Long.Long | undefined; + seconds?: string | number | import("long").Long | undefined; nanos?: number | undefined; } & { - seconds?: string | number | (Long.Long & { + seconds?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_13 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_14 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeMerkleTime?: ({ - seconds?: string | number | Long.Long | undefined; + seconds?: string | number | import("long").Long | undefined; nanos?: number | undefined; } & { - seconds?: string | number | (Long.Long & { + seconds?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_15 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_16 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeOriginTime?: ({ - seconds?: string | number | Long.Long | undefined; + seconds?: string | number | import("long").Long | undefined; nanos?: number | undefined; } & { - seconds?: string | number | (Long.Long & { + seconds?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_17 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_18 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; agentValidTime?: ({ - seconds?: string | number | Long.Long | undefined; + seconds?: string | number | import("long").Long | undefined; nanos?: number | undefined; } & { - seconds?: string | number | (Long.Long & { + seconds?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_19 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_20 in Exclude]: never; }) | undefined; - tokenPrice?: string | number | (Long.Long & { - high: number; - low: number; - unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; - getHighBits: () => number; - getHighBitsUnsigned: () => number; - getLowBits: () => number; - getLowBitsUnsigned: () => number; - getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; - isEven: () => boolean; - isNegative: () => boolean; - isOdd: () => boolean; - isPositive: () => boolean; - isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; - toInt: () => number; - toNumber: () => number; - toBytes: (le?: boolean | undefined) => number[]; - toBytesLE: () => number[]; - toBytesBE: () => number[]; - toSigned: () => Long.Long; - toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_21 in Exclude]: never; }) | undefined; - } & { [K_22 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; innerValues?: ({ seed?: Uint8Array | undefined; } & { seed?: Uint8Array | undefined; - } & { [K_23 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; agents?: ({ account?: string | undefined; url?: string | undefined; - version?: string | number | Long.Long | undefined; + version?: string | number | import("long").Long | undefined; prestige?: { - count?: string | number | Long.Long | undefined; - total?: string | number | Long.Long | undefined; + count?: string | number | import("long").Long | undefined; + total?: string | number | import("long").Long | undefined; } | undefined; status?: import("./agent").AgentStatus | undefined; - validUntil?: Date | undefined; + validUntil?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; }[] & ({ account?: string | undefined; url?: string | undefined; - version?: string | number | Long.Long | undefined; + version?: string | number | import("long").Long | undefined; prestige?: { - count?: string | number | Long.Long | undefined; - total?: string | number | Long.Long | undefined; + count?: string | number | import("long").Long | undefined; + total?: string | number | import("long").Long | undefined; } | undefined; status?: import("./agent").AgentStatus | undefined; - validUntil?: Date | undefined; + validUntil?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; } & { account?: string | undefined; url?: string | undefined; - version?: string | number | (Long.Long & { + version?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_24 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; prestige?: ({ - count?: string | number | Long.Long | undefined; - total?: string | number | Long.Long | undefined; + count?: string | number | import("long").Long | undefined; + total?: string | number | import("long").Long | undefined; } & { - count?: string | number | (Long.Long & { + count?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_25 in Exclude]: never; }) | undefined; - total?: string | number | (Long.Long & { + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + total?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_26 in Exclude]: never; }) | undefined; - } & { [K_27 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>) | undefined; status?: import("./agent").AgentStatus | undefined; - validUntil?: Date | undefined; - } & { [K_28 in Exclude]: never; })[] & { [K_29 in Exclude import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + validUntil?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + }[]>, never>) | undefined; agentModels?: ({ account?: string | undefined; modelName?: string | undefined; - lock?: string | number | Long.Long | undefined; + lock?: string | number | import("long").Long | undefined; status?: import("./agent").AgentModelStatus | undefined; }[] & ({ account?: string | undefined; modelName?: string | undefined; - lock?: string | number | Long.Long | undefined; + lock?: string | number | import("long").Long | undefined; status?: import("./agent").AgentModelStatus | undefined; } & { account?: string | undefined; modelName?: string | undefined; - lock?: string | number | (Long.Long & { + lock?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_30 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; status?: import("./agent").AgentModelStatus | undefined; - } & { [K_31 in Exclude]: never; })[] & { [K_32 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; sessions?: ({ sessionId?: string | undefined; account?: string | undefined; @@ -1300,18 +1326,27 @@ export declare const GenesisState: { denom?: string | undefined; amount?: string | undefined; } | undefined; - tokenPrice?: string | number | Long.Long | undefined; - expirationAt?: Date | undefined; - payment?: { - tokens?: (string | number | Long.Long)[] | undefined; - totalPayment?: { + tokenPrice?: { + inputPrice?: { denom?: string | undefined; amount?: string | undefined; } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } | undefined; + expirationAt?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + payment?: { + inputTokens?: (string | number | import("long").Long)[] | undefined; + outputTokens?: (string | number | import("long").Long)[] | undefined; merkleRoot?: Uint8Array | undefined; contributions?: { account?: string | undefined; - rate?: string | number | Long.Long | undefined; + rate?: string | number | import("long").Long | undefined; amount?: { denom?: string | undefined; amount?: string | undefined; @@ -1320,7 +1355,7 @@ export declare const GenesisState: { } | undefined; status?: import("./agent").SessionStatus | undefined; challengeInfo?: { - questionId?: string | number | Long.Long | undefined; + questionId?: string | number | import("long").Long | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; cutMerkle?: Uint8Array[] | undefined; @@ -1330,7 +1365,7 @@ export declare const GenesisState: { originHash?: Uint8Array | undefined; status?: import("./agent").ValidatorStatus | undefined; }[] | undefined; - hashCount?: string | number | Long.Long | undefined; + hashCount?: string | number | import("long").Long | undefined; }[] | undefined; }[] & ({ sessionId?: string | undefined; @@ -1345,18 +1380,27 @@ export declare const GenesisState: { denom?: string | undefined; amount?: string | undefined; } | undefined; - tokenPrice?: string | number | Long.Long | undefined; - expirationAt?: Date | undefined; - payment?: { - tokens?: (string | number | Long.Long)[] | undefined; - totalPayment?: { + tokenPrice?: { + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { denom?: string | undefined; amount?: string | undefined; } | undefined; + } | undefined; + expirationAt?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + payment?: { + inputTokens?: (string | number | import("long").Long)[] | undefined; + outputTokens?: (string | number | import("long").Long)[] | undefined; merkleRoot?: Uint8Array | undefined; contributions?: { account?: string | undefined; - rate?: string | number | Long.Long | undefined; + rate?: string | number | import("long").Long | undefined; amount?: { denom?: string | undefined; amount?: string | undefined; @@ -1365,7 +1409,7 @@ export declare const GenesisState: { } | undefined; status?: import("./agent").SessionStatus | undefined; challengeInfo?: { - questionId?: string | number | Long.Long | undefined; + questionId?: string | number | import("long").Long | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; cutMerkle?: Uint8Array[] | undefined; @@ -1375,7 +1419,7 @@ export declare const GenesisState: { originHash?: Uint8Array | undefined; status?: import("./agent").ValidatorStatus | undefined; }[] | undefined; - hashCount?: string | number | Long.Long | undefined; + hashCount?: string | number | import("long").Long | undefined; }[] | undefined; } & { sessionId?: string | undefined; @@ -1388,248 +1432,326 @@ export declare const GenesisState: { } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_33 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; minerLock?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_34 in Exclude]: never; }) | undefined; - tokenPrice?: string | number | (Long.Long & { - high: number; - low: number; - unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; - getHighBits: () => number; - getHighBitsUnsigned: () => number; - getLowBits: () => number; - getLowBitsUnsigned: () => number; - getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; - isEven: () => boolean; - isNegative: () => boolean; - isOdd: () => boolean; - isPositive: () => boolean; - isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; - toInt: () => number; - toNumber: () => number; - toBytes: (le?: boolean | undefined) => number[]; - toBytesLE: () => number[]; - toBytesBE: () => number[]; - toSigned: () => Long.Long; - toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_35 in Exclude]: never; }) | undefined; - expirationAt?: Date | undefined; - payment?: ({ - tokens?: (string | number | Long.Long)[] | undefined; - totalPayment?: { + } & Record, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { denom?: string | undefined; amount?: string | undefined; } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + expirationAt?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + payment?: ({ + inputTokens?: (string | number | import("long").Long)[] | undefined; + outputTokens?: (string | number | import("long").Long)[] | undefined; merkleRoot?: Uint8Array | undefined; contributions?: { account?: string | undefined; - rate?: string | number | Long.Long | undefined; + rate?: string | number | import("long").Long | undefined; amount?: { denom?: string | undefined; amount?: string | undefined; } | undefined; }[] | undefined; } & { - tokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + inputTokens?: ((string | number | import("long").Long)[] & (string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_36 in Exclude]: never; }))[] & { [K_37 in Exclude]: never; }) | undefined; - totalPayment?: ({ - denom?: string | undefined; - amount?: string | undefined; - } & { - denom?: string | undefined; - amount?: string | undefined; - } & { [K_38 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>))[] & Record, never>) | undefined; + outputTokens?: ((string | number | import("long").Long)[] & (string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>))[] & Record, never>) | undefined; merkleRoot?: Uint8Array | undefined; contributions?: ({ account?: string | undefined; - rate?: string | number | Long.Long | undefined; + rate?: string | number | import("long").Long | undefined; amount?: { denom?: string | undefined; amount?: string | undefined; } | undefined; }[] & ({ account?: string | undefined; - rate?: string | number | Long.Long | undefined; + rate?: string | number | import("long").Long | undefined; amount?: { denom?: string | undefined; amount?: string | undefined; } | undefined; } & { account?: string | undefined; - rate?: string | number | (Long.Long & { + rate?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_39 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; amount?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_40 in Exclude]: never; }) | undefined; - } & { [K_41 in Exclude]: never; })[] & { [K_42 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_43 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; status?: import("./agent").SessionStatus | undefined; challengeInfo?: ({ - questionId?: string | number | Long.Long | undefined; + questionId?: string | number | import("long").Long | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; cutMerkle?: Uint8Array[] | undefined; @@ -1639,9 +1761,9 @@ export declare const GenesisState: { originHash?: Uint8Array | undefined; status?: import("./agent").ValidatorStatus | undefined; }[] | undefined; - hashCount?: string | number | Long.Long | undefined; + hashCount?: string | number | import("long").Long | undefined; }[] & ({ - questionId?: string | number | Long.Long | undefined; + questionId?: string | number | import("long").Long | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; cutMerkle?: Uint8Array[] | undefined; @@ -1651,69 +1773,69 @@ export declare const GenesisState: { originHash?: Uint8Array | undefined; status?: import("./agent").ValidatorStatus | undefined; }[] | undefined; - hashCount?: string | number | Long.Long | undefined; + hashCount?: string | number | import("long").Long | undefined; } & { - questionId?: string | number | (Long.Long & { + questionId?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_44 in Exclude]: never; }) | undefined; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; - cutMerkle?: (Uint8Array[] & Uint8Array[] & { [K_45 in Exclude]: never; }) | undefined; + cutMerkle?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; validators?: ({ account?: string | undefined; hash?: Uint8Array | undefined; @@ -1729,72 +1851,72 @@ export declare const GenesisState: { hash?: Uint8Array | undefined; originHash?: Uint8Array | undefined; status?: import("./agent").ValidatorStatus | undefined; - } & { [K_46 in Exclude]: never; })[] & { [K_47 in Exclude, never>)[] & Record]: never; }) | undefined; - hashCount?: string | number | (Long.Long & { + }[]>, never>) | undefined; + hashCount?: string | number | (import("long").Long & { high: number; low: number; unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; getHighBits: () => number; getHighBitsUnsigned: () => number; getLowBits: () => number; getLowBitsUnsigned: () => number; getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; isEven: () => boolean; isNegative: () => boolean; isOdd: () => boolean; isPositive: () => boolean; isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; toInt: () => number; toNumber: () => number; toBytes: (le?: boolean | undefined) => number[]; toBytesLE: () => number[]; toBytesBE: () => number[]; - toSigned: () => Long.Long; + toSigned: () => import("long").Long; toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_48 in Exclude]: never; }) | undefined; - } & { [K_49 in Exclude]: never; })[] & { [K_50 in Exclude import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_51 in Exclude]: never; })[] & { [K_52 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; vrfSeeds?: ({ account?: string | undefined; seed?: Uint8Array | undefined; @@ -1861,20 +1992,9 @@ export declare const GenesisState: { } & { account?: string | undefined; seed?: Uint8Array | undefined; - } & { [K_53 in Exclude]: never; })[] & { [K_54 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_55 in Exclude]: never; }>(object: I): GenesisState; -}; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; + }[]>, never>) | undefined; + } & Record, never>>(object: I): GenesisState; }; -export {}; diff --git a/dist/codec/agent/v1/genesis.js b/dist/codec/agent/v1/genesis.js index 26098f7..7537002 100644 --- a/dist/codec/agent/v1/genesis.js +++ b/dist/codec/agent/v1/genesis.js @@ -1,26 +1,47 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GenesisState = exports.protobufPackage = void 0; /* eslint-disable */ const agent_1 = require("./agent"); -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); exports.protobufPackage = "agent.v1"; function createBaseGenesisState() { return { - params: undefined, - innerValues: undefined, + params: agent_1.Params.fromPartial({}), + innerValues: agent_1.InnerValues.fromPartial({}), agents: [], agentModels: [], sessions: [], - vrfSeeds: [], + vrfSeeds: [] }; } exports.GenesisState = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.GenesisState", + encode(message, writer = _m0.Writer.create()) { if (message.params !== undefined) { agent_1.Params.encode(message.params, writer.uint32(10).fork()).ldelim(); } @@ -42,7 +63,7 @@ exports.GenesisState = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGenesisState(); while (reader.pos < end) { @@ -74,53 +95,45 @@ exports.GenesisState = { return message; }, fromJSON(object) { - return { - params: isSet(object.params) ? agent_1.Params.fromJSON(object.params) : undefined, - innerValues: isSet(object.innerValues) - ? agent_1.InnerValues.fromJSON(object.innerValues) - : undefined, - agents: Array.isArray(object?.agents) - ? object.agents.map((e) => agent_1.InferenceAgent.fromJSON(e)) - : [], - agentModels: Array.isArray(object?.agentModels) - ? object.agentModels.map((e) => agent_1.AgentModel.fromJSON(e)) - : [], - sessions: Array.isArray(object?.sessions) - ? object.sessions.map((e) => agent_1.Session.fromJSON(e)) - : [], - vrfSeeds: Array.isArray(object?.vrfSeeds) - ? object.vrfSeeds.map((e) => agent_1.VrfSeed.fromJSON(e)) - : [], - }; + const obj = createBaseGenesisState(); + if ((0, helpers_1.isSet)(object.params)) + obj.params = agent_1.Params.fromJSON(object.params); + if ((0, helpers_1.isSet)(object.innerValues)) + obj.innerValues = agent_1.InnerValues.fromJSON(object.innerValues); + if (Array.isArray(object?.agents)) + obj.agents = object.agents.map((e) => agent_1.InferenceAgent.fromJSON(e)); + if (Array.isArray(object?.agentModels)) + obj.agentModels = object.agentModels.map((e) => agent_1.AgentModel.fromJSON(e)); + if (Array.isArray(object?.sessions)) + obj.sessions = object.sessions.map((e) => agent_1.Session.fromJSON(e)); + if (Array.isArray(object?.vrfSeeds)) + obj.vrfSeeds = object.vrfSeeds.map((e) => agent_1.VrfSeed.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; - message.params !== undefined && - (obj.params = message.params ? agent_1.Params.toJSON(message.params) : undefined); - message.innerValues !== undefined && - (obj.innerValues = message.innerValues - ? agent_1.InnerValues.toJSON(message.innerValues) - : undefined); + message.params !== undefined && (obj.params = message.params ? agent_1.Params.toJSON(message.params) : undefined); + message.innerValues !== undefined && (obj.innerValues = message.innerValues ? agent_1.InnerValues.toJSON(message.innerValues) : undefined); if (message.agents) { - obj.agents = message.agents.map((e) => e ? agent_1.InferenceAgent.toJSON(e) : undefined); + obj.agents = message.agents.map(e => e ? agent_1.InferenceAgent.toJSON(e) : undefined); } else { obj.agents = []; } if (message.agentModels) { - obj.agentModels = message.agentModels.map((e) => e ? agent_1.AgentModel.toJSON(e) : undefined); + obj.agentModels = message.agentModels.map(e => e ? agent_1.AgentModel.toJSON(e) : undefined); } else { obj.agentModels = []; } if (message.sessions) { - obj.sessions = message.sessions.map((e) => e ? agent_1.Session.toJSON(e) : undefined); + obj.sessions = message.sessions.map(e => e ? agent_1.Session.toJSON(e) : undefined); } else { obj.sessions = []; } if (message.vrfSeeds) { - obj.vrfSeeds = message.vrfSeeds.map((e) => e ? agent_1.VrfSeed.toJSON(e) : undefined); + obj.vrfSeeds = message.vrfSeeds.map(e => e ? agent_1.VrfSeed.toJSON(e) : undefined); } else { obj.vrfSeeds = []; @@ -129,30 +142,17 @@ exports.GenesisState = { }, fromPartial(object) { const message = createBaseGenesisState(); - message.params = - object.params !== undefined && object.params !== null - ? agent_1.Params.fromPartial(object.params) - : undefined; - message.innerValues = - object.innerValues !== undefined && object.innerValues !== null - ? agent_1.InnerValues.fromPartial(object.innerValues) - : undefined; - message.agents = - object.agents?.map((e) => agent_1.InferenceAgent.fromPartial(e)) || []; - message.agentModels = - object.agentModels?.map((e) => agent_1.AgentModel.fromPartial(e)) || []; - message.sessions = - object.sessions?.map((e) => agent_1.Session.fromPartial(e)) || []; - message.vrfSeeds = - object.vrfSeeds?.map((e) => agent_1.VrfSeed.fromPartial(e)) || []; + if (object.params !== undefined && object.params !== null) { + message.params = agent_1.Params.fromPartial(object.params); + } + if (object.innerValues !== undefined && object.innerValues !== null) { + message.innerValues = agent_1.InnerValues.fromPartial(object.innerValues); + } + message.agents = object.agents?.map(e => agent_1.InferenceAgent.fromPartial(e)) || []; + message.agentModels = object.agentModels?.map(e => agent_1.AgentModel.fromPartial(e)) || []; + message.sessions = object.sessions?.map(e => agent_1.Session.fromPartial(e)) || []; + message.vrfSeeds = object.vrfSeeds?.map(e => agent_1.VrfSeed.fromPartial(e)) || []; return message; - }, + } }; -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXNpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9hZ2VudC92MS9nZW5lc2lzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQixtQ0FPaUI7QUFDakIsZ0RBQXdCO0FBQ3hCLGlFQUFxQztBQUV4QixRQUFBLGVBQWUsR0FBRyxVQUFVLENBQUM7QUFXMUMsU0FBUyxzQkFBc0I7SUFDN0IsT0FBTztRQUNMLE1BQU0sRUFBRSxTQUFTO1FBQ2pCLFdBQVcsRUFBRSxTQUFTO1FBQ3RCLE1BQU0sRUFBRSxFQUFFO1FBQ1YsV0FBVyxFQUFFLEVBQUU7UUFDZixRQUFRLEVBQUUsRUFBRTtRQUNaLFFBQVEsRUFBRSxFQUFFO0tBQ2IsQ0FBQztBQUNKLENBQUM7QUFFWSxRQUFBLFlBQVksR0FBRztJQUMxQixNQUFNLENBQ0osT0FBcUIsRUFDckIsU0FBcUIsaUJBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBRXhDLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNqQyxjQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ25FLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxXQUFXLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdEMsbUJBQVcsQ0FBQyxNQUFNLENBQ2hCLE9BQU8sQ0FBQyxXQUFXLEVBQ25CLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQ3pCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDYixDQUFDO1FBQ0QsS0FBSyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDL0Isc0JBQWMsQ0FBQyxNQUFNLENBQUMsQ0FB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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXNpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9hZ2VudC92MS9nZW5lc2lzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLG1DQUE0RjtBQUM1Rix3REFBMEM7QUFDMUMsMkNBQTBEO0FBRTdDLFFBQUEsZUFBZSxHQUFHLFVBQVUsQ0FBQztBQVMxQyxTQUFTLHNCQUFzQjtJQUM3QixPQUFPO1FBQ0wsTUFBTSxFQUFFLGNBQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQzlCLFdBQVcsRUFBRSxtQkFBVyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7UUFDeEMsTUFBTSxFQUFFLEVBQUU7UUFDVixXQUFXLEVBQUUsRUFBRTtRQUNmLFFBQVEsRUFBRSxFQUFFO1FBQ1osUUFBUSxFQUFFLEVBQUU7S0FDYixDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsWUFBWSxHQUFHO0lBQzFCLE9BQU8sRUFBRSx3QkFBd0I7SUFDakMsTUFBTSxDQUFDLE9BQXFCLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDcEUsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLGNBQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbkUsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFdBQVcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QyxtQkFBVyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztR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 \ No newline at end of file diff --git a/dist/codec/agent/v1/query.d.ts b/dist/codec/agent/v1/query.d.ts index dc007d6..2d57907 100644 --- a/dist/codec/agent/v1/query.d.ts +++ b/dist/codec/agent/v1/query.d.ts @@ -1,6 +1,9 @@ -import { Params, InferenceAgent, AgentModelStatus, Session, SessionStatus, AgentModel } from "./agent"; -import Long from "long"; -import _m0 from "protobufjs/minimal"; +/// +import { AgentModelStatus, SessionStatus, Params, InferenceAgent, AgentModel, Session } from "./agent"; +import { Timestamp } from "../../google/protobuf/timestamp"; +import { Long, Rpc } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; export declare const protobufPackage = "agent.v1"; export interface QueryParamsRequest { } @@ -38,8 +41,8 @@ export interface QuerySessionResponse { } export interface QuerySessionByAgentRequest { account: string; - status: SessionStatus; - expireTime?: Date; + status?: SessionStatus; + expireTime: Timestamp; limit: Long; orderDesc: boolean; key: Uint8Array; @@ -48,6 +51,19 @@ export interface QuerySessionByAgentResponse { sessions: Session[]; nextKey: Uint8Array; } +export interface QuerySessionByChallengeRequest { + account: string; + limit: Long; + key: Uint8Array; +} +export interface SessionIdStatus { + sessionId: string; + status: SessionStatus; +} +export interface QuerySessionByChallengeResponse { + sesssionIdStatus: SessionIdStatus[]; + nextKey: Uint8Array; +} export interface QueryVRFSeedRequest { account: string; } @@ -55,17 +71,19 @@ export interface QueryVRFSeedResponse { seed: Uint8Array; } export declare const QueryParamsRequest: { + typeUrl: string; encode(_: QueryParamsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QueryParamsRequest; fromJSON(_: any): QueryParamsRequest; - toJSON(_: QueryParamsRequest): unknown; - fromPartial]: never; }>(_: I): QueryParamsRequest; + toJSON(_: QueryParamsRequest): JsonSafe; + fromPartial, never>>(_: I): QueryParamsRequest; }; export declare const QueryParamsResponse: { + typeUrl: string; encode(message: QueryParamsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QueryParamsResponse; fromJSON(object: any): QueryParamsResponse; - toJSON(message: QueryParamsResponse): unknown; + toJSON(message: QueryParamsResponse): JsonSafe; fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; userMinimumLock?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; sessionTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -233,9 +249,9 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -297,9 +313,9 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_4 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; globalSeed?: Uint8Array | undefined; lowestAgentVersion?: string | number | (Long.Long & { high: number; @@ -358,7 +374,7 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; highestAgentVersion?: string | number | (Long.Long & { high: number; low: number; @@ -416,7 +432,7 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_7 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeRate?: string | number | (Long.Long & { high: number; low: number; @@ -474,7 +490,7 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_8 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; validatorCount?: string | number | (Long.Long & { high: number; low: number; @@ -532,7 +548,7 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_9 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeRound?: string | number | (Long.Long & { high: number; low: number; @@ -590,7 +606,7 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_10 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeCidTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -652,9 +668,9 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_12 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeReplyTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -716,9 +732,9 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_13 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_14 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeMerkleTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -780,9 +796,9 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_15 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_16 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeOriginTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -844,9 +860,9 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_17 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_18 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; agentValidTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -908,75 +924,18 @@ export declare const QueryParamsResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_19 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_20 in Exclude]: never; }) | undefined; - tokenPrice?: string | number | (Long.Long & { - high: number; - low: number; - unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; - getHighBits: () => number; - getHighBitsUnsigned: () => number; - getLowBits: () => number; - getLowBitsUnsigned: () => number; - getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; - isEven: () => boolean; - isNegative: () => boolean; - isOdd: () => boolean; - isPositive: () => boolean; - isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; - toInt: () => number; - toNumber: () => number; - toBytes: (le?: boolean | undefined) => number[]; - toBytesLE: () => number[]; - toBytesBE: () => number[]; - toSigned: () => Long.Long; - toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_21 in Exclude]: never; }) | undefined; - } & { [K_22 in Exclude]: never; }) | undefined; - } & { [K_23 in Exclude]: never; }>(object: I): QueryParamsResponse; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryParamsResponse; }; export declare const QueryInferenceAgentRequest: { + typeUrl: string; encode(message: QueryInferenceAgentRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QueryInferenceAgentRequest; fromJSON(object: any): QueryInferenceAgentRequest; - toJSON(message: QueryInferenceAgentRequest): unknown; + toJSON(message: QueryInferenceAgentRequest): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; key?: Uint8Array | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): QueryInferenceAgentRequest; + } & Record, never>>(object: I): QueryInferenceAgentRequest; }; export declare const QueryInferenceAgentResponse: { + typeUrl: string; encode(message: QueryInferenceAgentResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QueryInferenceAgentResponse; fromJSON(object: any): QueryInferenceAgentResponse; - toJSON(message: QueryInferenceAgentResponse): unknown; + toJSON(message: QueryInferenceAgentResponse): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; prestige?: ({ count?: string | number | Long.Long | undefined; total?: string | number | Long.Long | undefined; @@ -1203,7 +1169,7 @@ export declare const QueryInferenceAgentResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; total?: string | number | (Long.Long & { high: number; low: number; @@ -1261,11 +1227,74 @@ export declare const QueryInferenceAgentResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; status?: import("./agent").AgentStatus | undefined; - validUntil?: Date | undefined; - } & { [K_4 in Exclude]: never; }) | undefined; + validUntil?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; agentModels?: ({ account?: string | undefined; modelName?: string | undefined; @@ -1336,35 +1365,37 @@ export declare const QueryInferenceAgentResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; status?: AgentModelStatus | undefined; - } & { [K_6 in Exclude]: never; })[] & { [K_7 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nextKey?: Uint8Array | undefined; - } & { [K_8 in Exclude]: never; }>(object: I): QueryInferenceAgentResponse; + } & Record, never>>(object: I): QueryInferenceAgentResponse; }; export declare const QueryAgentByModelRequest: { + typeUrl: string; encode(message: QueryAgentByModelRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QueryAgentByModelRequest; fromJSON(object: any): QueryAgentByModelRequest; - toJSON(message: QueryAgentByModelRequest): unknown; + toJSON(message: QueryAgentByModelRequest): JsonSafe; fromPartial]: never; }>(object: I): QueryAgentByModelRequest; + } & Record, never>>(object: I): QueryAgentByModelRequest; }; export declare const ModelAgents: { + typeUrl: string; encode(message: ModelAgents, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ModelAgents; fromJSON(object: any): ModelAgents; - toJSON(message: ModelAgents): unknown; + toJSON(message: ModelAgents): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; prestige?: ({ count?: string | number | Long.Long | undefined; total?: string | number | Long.Long | undefined; @@ -1522,7 +1562,7 @@ export declare const ModelAgents: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; total?: string | number | (Long.Long & { high: number; low: number; @@ -1580,11 +1620,74 @@ export declare const ModelAgents: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; status?: import("./agent").AgentStatus | undefined; - validUntil?: Date | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): ModelAgents; + validUntil?: { + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } | undefined; + }[]>, never>) | undefined; + } & Record, never>>(object: I): ModelAgents; }; export declare const QueryAgentByModelResponse: { + typeUrl: string; encode(message: QueryAgentByModelResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QueryAgentByModelResponse; fromJSON(object: any): QueryAgentByModelResponse; - toJSON(message: QueryAgentByModelResponse): unknown; + toJSON(message: QueryAgentByModelResponse): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; prestige?: ({ count?: string | number | Long.Long | undefined; total?: string | number | Long.Long | undefined; @@ -1788,7 +1910,7 @@ export declare const QueryAgentByModelResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; total?: string | number | (Long.Long & { high: number; low: number; @@ -1846,75 +1968,155 @@ export declare const QueryAgentByModelResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; - status?: import("./agent").AgentStatus | undefined; - validUntil?: Date | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude]: never; }) | undefined; - } & { [K_6 in Exclude]: never; })[] & { [K_7 in Exclude, never>) | undefined; + } & Record, never>) | undefined; status?: import("./agent").AgentStatus | undefined; - validUntil?: Date | undefined; - }[] | undefined; - }[]>]: never; }) | undefined; - } & { [K_8 in Exclude]: never; }>(object: I): QueryAgentByModelResponse; -}; -export declare const QuerySessionRequest: { - encode(message: QuerySessionRequest, writer?: _m0.Writer): _m0.Writer; - decode(input: _m0.Reader | Uint8Array, length?: number): QuerySessionRequest; - fromJSON(object: any): QuerySessionRequest; - toJSON(message: QuerySessionRequest): unknown; - fromPartial]: never; }>(object: I): QuerySessionRequest; -}; -export declare const QuerySessionResponse: { - encode(message: QuerySessionResponse, writer?: _m0.Writer): _m0.Writer; - decode(input: _m0.Reader | Uint8Array, length?: number): QuerySessionResponse; - fromJSON(object: any): QuerySessionResponse; - toJSON(message: QuerySessionResponse): unknown; - fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): QueryAgentByModelResponse; +}; +export declare const QuerySessionRequest: { + typeUrl: string; + encode(message: QuerySessionRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QuerySessionRequest; + fromJSON(object: any): QuerySessionRequest; + toJSON(message: QuerySessionRequest): JsonSafe; + fromPartial, never>>(object: I): QuerySessionRequest; +}; +export declare const QuerySessionResponse: { + typeUrl: string; + encode(message: QuerySessionResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QuerySessionResponse; + fromJSON(object: any): QuerySessionResponse; + toJSON(message: QuerySessionResponse): JsonSafe; + fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; minerLock?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; - tokenPrice?: string | number | (Long.Long & { - high: number; - low: number; - unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; - getHighBits: () => number; - getHighBitsUnsigned: () => number; - getLowBits: () => number; - getLowBitsUnsigned: () => number; - getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; - isEven: () => boolean; - isNegative: () => boolean; - isOdd: () => boolean; - isPositive: () => boolean; - isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; - toInt: () => number; - toNumber: () => number; - toBytes: (le?: boolean | undefined) => number[]; - toBytesLE: () => number[]; - toBytesBE: () => number[]; - toSigned: () => Long.Long; - toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; - expirationAt?: Date | undefined; - payment?: ({ - tokens?: (string | number | Long.Long)[] | undefined; - totalPayment?: { + } & Record, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { denom?: string | undefined; amount?: string | undefined; } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + expirationAt?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + payment?: ({ + inputTokens?: (string | number | Long.Long)[] | undefined; + outputTokens?: (string | number | Long.Long)[] | undefined; merkleRoot?: Uint8Array | undefined; contributions?: { account?: string | undefined; @@ -2080,7 +2318,7 @@ export declare const QuerySessionResponse: { } | undefined; }[] | undefined; } & { - tokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + inputTokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { high: number; low: number; unsigned: boolean; @@ -2137,14 +2375,65 @@ export declare const QuerySessionResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }))[] & { [K_4 in Exclude]: never; }) | undefined; - totalPayment?: ({ - denom?: string | undefined; - amount?: string | undefined; - } & { - denom?: string | undefined; - amount?: string | undefined; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>))[] & Record, never>) | undefined; + outputTokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>))[] & Record, never>) | undefined; merkleRoot?: Uint8Array | undefined; contributions?: ({ account?: string | undefined; @@ -2219,23 +2508,23 @@ export declare const QuerySessionResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; amount?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_7 in Exclude]: never; }) | undefined; - } & { [K_8 in Exclude]: never; })[] & { [K_9 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_10 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; status?: SessionStatus | undefined; challengeInfo?: ({ questionId?: string | number | Long.Long | undefined; @@ -2319,10 +2608,10 @@ export declare const QuerySessionResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; - cutMerkle?: (Uint8Array[] & Uint8Array[] & { [K_12 in Exclude]: never; }) | undefined; + cutMerkle?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; validators?: ({ account?: string | undefined; hash?: Uint8Array | undefined; @@ -2338,12 +2627,12 @@ export declare const QuerySessionResponse: { hash?: Uint8Array | undefined; originHash?: Uint8Array | undefined; status?: import("./agent").ValidatorStatus | undefined; - } & { [K_13 in Exclude]: never; })[] & { [K_14 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; hashCount?: string | number | (Long.Long & { high: number; low: number; @@ -2401,8 +2690,8 @@ export declare const QuerySessionResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_15 in Exclude]: never; }) | undefined; - } & { [K_16 in Exclude]: never; })[] & { [K_17 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_18 in Exclude]: never; }) | undefined; - } & { [K_19 in Exclude]: never; }>(object: I): QuerySessionResponse; + }[]>, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QuerySessionResponse; }; export declare const QuerySessionByAgentRequest: { + typeUrl: string; encode(message: QuerySessionByAgentRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QuerySessionByAgentRequest; fromJSON(object: any): QuerySessionByAgentRequest; - toJSON(message: QuerySessionByAgentRequest): unknown; + toJSON(message: QuerySessionByAgentRequest): JsonSafe; fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; limit?: string | number | (Long.Long & { high: number; low: number; @@ -2491,16 +2847,17 @@ export declare const QuerySessionByAgentRequest: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; orderDesc?: boolean | undefined; key?: Uint8Array | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): QuerySessionByAgentRequest; + } & Record, never>>(object: I): QuerySessionByAgentRequest; }; export declare const QuerySessionByAgentResponse: { + typeUrl: string; encode(message: QuerySessionByAgentResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QuerySessionByAgentResponse; fromJSON(object: any): QuerySessionByAgentResponse; - toJSON(message: QuerySessionByAgentResponse): unknown; + toJSON(message: QuerySessionByAgentResponse): JsonSafe; fromPartial]: never; }) | undefined; - minerLock?: ({ - denom?: string | undefined; - amount?: string | undefined; - } & { - denom?: string | undefined; - amount?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; - tokenPrice?: string | number | (Long.Long & { - high: number; - low: number; - unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; - getHighBits: () => number; - getHighBitsUnsigned: () => number; - getLowBits: () => number; - getLowBitsUnsigned: () => number; - getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; - isEven: () => boolean; - isNegative: () => boolean; - isOdd: () => boolean; - isPositive: () => boolean; - isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; - toInt: () => number; - toNumber: () => number; - toBytes: (le?: boolean | undefined) => number[]; - toBytesLE: () => number[]; - toBytesBE: () => number[]; - toSigned: () => Long.Long; - toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; - expirationAt?: Date | undefined; - payment?: ({ - tokens?: (string | number | Long.Long)[] | undefined; - totalPayment?: { + }[] | undefined; + hashCount?: string | number | Long.Long | undefined; + }[] | undefined; + } & { + sessionId?: string | undefined; + account?: string | undefined; + modelName?: string | undefined; + agentAccount?: string | undefined; + userLock?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + minerLock?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { denom?: string | undefined; amount?: string | undefined; } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + expirationAt?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + payment?: ({ + inputTokens?: (string | number | Long.Long)[] | undefined; + outputTokens?: (string | number | Long.Long)[] | undefined; merkleRoot?: Uint8Array | undefined; contributions?: { account?: string | undefined; @@ -2734,7 +3145,7 @@ export declare const QuerySessionByAgentResponse: { } | undefined; }[] | undefined; } & { - tokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + inputTokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { high: number; low: number; unsigned: boolean; @@ -2791,14 +3202,65 @@ export declare const QuerySessionByAgentResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }))[] & { [K_4 in Exclude]: never; }) | undefined; - totalPayment?: ({ - denom?: string | undefined; - amount?: string | undefined; - } & { - denom?: string | undefined; - amount?: string | undefined; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>))[] & Record, never>) | undefined; + outputTokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>))[] & Record, never>) | undefined; merkleRoot?: Uint8Array | undefined; contributions?: ({ account?: string | undefined; @@ -2873,23 +3335,23 @@ export declare const QuerySessionByAgentResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; amount?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_7 in Exclude]: never; }) | undefined; - } & { [K_8 in Exclude]: never; })[] & { [K_9 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_10 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; status?: SessionStatus | undefined; challengeInfo?: ({ questionId?: string | number | Long.Long | undefined; @@ -2973,10 +3435,10 @@ export declare const QuerySessionByAgentResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; cid?: string | undefined; answerHash?: Uint8Array | undefined; - cutMerkle?: (Uint8Array[] & Uint8Array[] & { [K_12 in Exclude]: never; }) | undefined; + cutMerkle?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; validators?: ({ account?: string | undefined; hash?: Uint8Array | undefined; @@ -2992,12 +3454,12 @@ export declare const QuerySessionByAgentResponse: { hash?: Uint8Array | undefined; originHash?: Uint8Array | undefined; status?: import("./agent").ValidatorStatus | undefined; - } & { [K_13 in Exclude]: never; })[] & { [K_14 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; hashCount?: string | number | (Long.Long & { high: number; low: number; @@ -3055,8 +3517,8 @@ export declare const QuerySessionByAgentResponse: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_15 in Exclude]: never; }) | undefined; - } & { [K_16 in Exclude]: never; })[] & { [K_17 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_18 in Exclude]: never; })[] & { [K_19 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; + nextKey?: Uint8Array | undefined; + } & Record, never>>(object: I): QuerySessionByAgentResponse; +}; +export declare const QuerySessionByChallengeRequest: { + typeUrl: string; + encode(message: QuerySessionByChallengeRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QuerySessionByChallengeRequest; + fromJSON(object: any): QuerySessionByChallengeRequest; + toJSON(message: QuerySessionByChallengeRequest): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + key?: Uint8Array | undefined; + } & Record, never>>(object: I): QuerySessionByChallengeRequest; +}; +export declare const SessionIdStatus: { + typeUrl: string; + encode(message: SessionIdStatus, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): SessionIdStatus; + fromJSON(object: any): SessionIdStatus; + toJSON(message: SessionIdStatus): JsonSafe; + fromPartial, never>>(object: I): SessionIdStatus; +}; +export declare const QuerySessionByChallengeResponse: { + typeUrl: string; + encode(message: QuerySessionByChallengeResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QuerySessionByChallengeResponse; + fromJSON(object: any): QuerySessionByChallengeResponse; + toJSON(message: QuerySessionByChallengeResponse): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; nextKey?: Uint8Array | undefined; - } & { [K_20 in Exclude]: never; }>(object: I): QuerySessionByAgentResponse; + } & Record, never>>(object: I): QuerySessionByChallengeResponse; }; export declare const QueryVRFSeedRequest: { + typeUrl: string; encode(message: QueryVRFSeedRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QueryVRFSeedRequest; fromJSON(object: any): QueryVRFSeedRequest; - toJSON(message: QueryVRFSeedRequest): unknown; + toJSON(message: QueryVRFSeedRequest): JsonSafe; fromPartial]: never; }>(object: I): QueryVRFSeedRequest; + } & Record, never>>(object: I): QueryVRFSeedRequest; }; export declare const QueryVRFSeedResponse: { + typeUrl: string; encode(message: QueryVRFSeedResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): QueryVRFSeedResponse; fromJSON(object: any): QueryVRFSeedResponse; - toJSON(message: QueryVRFSeedResponse): unknown; + toJSON(message: QueryVRFSeedResponse): JsonSafe; fromPartial]: never; }>(object: I): QueryVRFSeedResponse; + } & Record, never>>(object: I): QueryVRFSeedResponse; }; export interface Query { - Params(request: QueryParamsRequest): Promise; + Params(request?: QueryParamsRequest): Promise; InferenceAgentRequest(request: QueryInferenceAgentRequest): Promise; AgentByModelRequest(request: QueryAgentByModelRequest): Promise; SessionRequest(request: QuerySessionRequest): Promise; SessionByAgentRequest(request: QuerySessionByAgentRequest): Promise; + SessionByChallengeRequest(request: QuerySessionByChallengeRequest): Promise; VRFSeedRequest(request: QueryVRFSeedRequest): Promise; } export declare class QueryClientImpl implements Query { private readonly rpc; constructor(rpc: Rpc); - Params(request: QueryParamsRequest): Promise; + Params(request?: QueryParamsRequest): Promise; InferenceAgentRequest(request: QueryInferenceAgentRequest): Promise; AgentByModelRequest(request: QueryAgentByModelRequest): Promise; SessionRequest(request: QuerySessionRequest): Promise; SessionByAgentRequest(request: QuerySessionByAgentRequest): Promise; + SessionByChallengeRequest(request: QuerySessionByChallengeRequest): Promise; VRFSeedRequest(request: QueryVRFSeedRequest): Promise; } -interface Rpc { - request(service: string, method: string, data: Uint8Array): Promise; -} -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; -}; -export {}; diff --git a/dist/codec/agent/v1/query.js b/dist/codec/agent/v1/query.js index e187e44..ce75534 100644 --- a/dist/codec/agent/v1/query.js +++ b/dist/codec/agent/v1/query.js @@ -1,24 +1,45 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.QueryClientImpl = exports.QueryVRFSeedResponse = exports.QueryVRFSeedRequest = exports.QuerySessionByAgentResponse = exports.QuerySessionByAgentRequest = exports.QuerySessionResponse = exports.QuerySessionRequest = exports.QueryAgentByModelResponse = exports.ModelAgents = exports.QueryAgentByModelRequest = exports.QueryInferenceAgentResponse = exports.QueryInferenceAgentRequest = exports.QueryParamsResponse = exports.QueryParamsRequest = exports.protobufPackage = void 0; +exports.QueryClientImpl = exports.QueryVRFSeedResponse = exports.QueryVRFSeedRequest = exports.QuerySessionByChallengeResponse = exports.SessionIdStatus = exports.QuerySessionByChallengeRequest = exports.QuerySessionByAgentResponse = exports.QuerySessionByAgentRequest = exports.QuerySessionResponse = exports.QuerySessionRequest = exports.QueryAgentByModelResponse = exports.ModelAgents = exports.QueryAgentByModelRequest = exports.QueryInferenceAgentResponse = exports.QueryInferenceAgentRequest = exports.QueryParamsResponse = exports.QueryParamsRequest = exports.protobufPackage = void 0; /* eslint-disable */ const agent_1 = require("./agent"); const timestamp_1 = require("../../google/protobuf/timestamp"); -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); exports.protobufPackage = "agent.v1"; function createBaseQueryParamsRequest() { return {}; } exports.QueryParamsRequest = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QueryParamsRequest", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQueryParamsRequest(); while (reader.pos < end) { @@ -32,7 +53,8 @@ exports.QueryParamsRequest = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseQueryParamsRequest(); + return obj; }, toJSON(_) { const obj = {}; @@ -41,20 +63,23 @@ exports.QueryParamsRequest = { fromPartial(_) { const message = createBaseQueryParamsRequest(); return message; - }, + } }; function createBaseQueryParamsResponse() { - return { params: undefined }; + return { + params: undefined + }; } exports.QueryParamsResponse = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QueryParamsResponse", + encode(message, writer = _m0.Writer.create()) { if (message.params !== undefined) { agent_1.Params.encode(message.params, writer.uint32(10).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQueryParamsResponse(); while (reader.pos < end) { @@ -71,35 +96,35 @@ exports.QueryParamsResponse = { return message; }, fromJSON(object) { - return { - params: isSet(object.params) ? agent_1.Params.fromJSON(object.params) : undefined, - }; + const obj = createBaseQueryParamsResponse(); + if ((0, helpers_1.isSet)(object.params)) + obj.params = agent_1.Params.fromJSON(object.params); + return obj; }, toJSON(message) { const obj = {}; - message.params !== undefined && - (obj.params = message.params ? agent_1.Params.toJSON(message.params) : undefined); + message.params !== undefined && (obj.params = message.params ? agent_1.Params.toJSON(message.params) : undefined); return obj; }, fromPartial(object) { const message = createBaseQueryParamsResponse(); - message.params = - object.params !== undefined && object.params !== null - ? agent_1.Params.fromPartial(object.params) - : undefined; + if (object.params !== undefined && object.params !== null) { + message.params = agent_1.Params.fromPartial(object.params); + } return message; - }, + } }; function createBaseQueryInferenceAgentRequest() { return { account: "", modelName: "", - limit: long_1.default.UZERO, - key: new Uint8Array(), + limit: helpers_1.Long.UZERO, + key: new Uint8Array() }; } exports.QueryInferenceAgentRequest = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QueryInferenceAgentRequest", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -115,7 +140,7 @@ exports.QueryInferenceAgentRequest = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQueryInferenceAgentRequest(); while (reader.pos < end) { @@ -141,44 +166,46 @@ exports.QueryInferenceAgentRequest = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - modelName: isSet(object.modelName) ? String(object.modelName) : "", - limit: isSet(object.limit) ? long_1.default.fromValue(object.limit) : long_1.default.UZERO, - key: isSet(object.key) ? bytesFromBase64(object.key) : new Uint8Array(), - }; + const obj = createBaseQueryInferenceAgentRequest(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.limit)) + obj.limit = helpers_1.Long.fromValue(object.limit); + if ((0, helpers_1.isSet)(object.key)) + obj.key = (0, helpers_1.bytesFromBase64)(object.key); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.modelName !== undefined && (obj.modelName = message.modelName); - message.limit !== undefined && - (obj.limit = (message.limit || long_1.default.UZERO).toString()); - message.key !== undefined && - (obj.key = base64FromBytes(message.key !== undefined ? message.key : new Uint8Array())); + message.limit !== undefined && (obj.limit = (message.limit || helpers_1.Long.UZERO).toString()); + message.key !== undefined && (obj.key = (0, helpers_1.base64FromBytes)(message.key !== undefined ? message.key : new Uint8Array())); return obj; }, fromPartial(object) { const message = createBaseQueryInferenceAgentRequest(); message.account = object.account ?? ""; message.modelName = object.modelName ?? ""; - message.limit = - object.limit !== undefined && object.limit !== null - ? long_1.default.fromValue(object.limit) - : long_1.default.UZERO; + if (object.limit !== undefined && object.limit !== null) { + message.limit = helpers_1.Long.fromValue(object.limit); + } message.key = object.key ?? new Uint8Array(); return message; - }, + } }; function createBaseQueryInferenceAgentResponse() { return { inferenceAgent: undefined, agentModels: [], - nextKey: new Uint8Array(), + nextKey: new Uint8Array() }; } exports.QueryInferenceAgentResponse = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QueryInferenceAgentResponse", + encode(message, writer = _m0.Writer.create()) { if (message.inferenceAgent !== undefined) { agent_1.InferenceAgent.encode(message.inferenceAgent, writer.uint32(10).fork()).ldelim(); } @@ -191,7 +218,7 @@ exports.QueryInferenceAgentResponse = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQueryInferenceAgentResponse(); while (reader.pos < end) { @@ -214,51 +241,46 @@ exports.QueryInferenceAgentResponse = { return message; }, fromJSON(object) { - return { - inferenceAgent: isSet(object.inferenceAgent) - ? agent_1.InferenceAgent.fromJSON(object.inferenceAgent) - : undefined, - agentModels: Array.isArray(object?.agentModels) - ? object.agentModels.map((e) => agent_1.AgentModel.fromJSON(e)) - : [], - nextKey: isSet(object.nextKey) - ? bytesFromBase64(object.nextKey) - : new Uint8Array(), - }; + const obj = createBaseQueryInferenceAgentResponse(); + if ((0, helpers_1.isSet)(object.inferenceAgent)) + obj.inferenceAgent = agent_1.InferenceAgent.fromJSON(object.inferenceAgent); + if (Array.isArray(object?.agentModels)) + obj.agentModels = object.agentModels.map((e) => agent_1.AgentModel.fromJSON(e)); + if ((0, helpers_1.isSet)(object.nextKey)) + obj.nextKey = (0, helpers_1.bytesFromBase64)(object.nextKey); + return obj; }, toJSON(message) { const obj = {}; - message.inferenceAgent !== undefined && - (obj.inferenceAgent = message.inferenceAgent - ? agent_1.InferenceAgent.toJSON(message.inferenceAgent) - : undefined); + message.inferenceAgent !== undefined && (obj.inferenceAgent = message.inferenceAgent ? agent_1.InferenceAgent.toJSON(message.inferenceAgent) : undefined); if (message.agentModels) { - obj.agentModels = message.agentModels.map((e) => e ? agent_1.AgentModel.toJSON(e) : undefined); + obj.agentModels = message.agentModels.map(e => e ? agent_1.AgentModel.toJSON(e) : undefined); } else { obj.agentModels = []; } - message.nextKey !== undefined && - (obj.nextKey = base64FromBytes(message.nextKey !== undefined ? message.nextKey : new Uint8Array())); + message.nextKey !== undefined && (obj.nextKey = (0, helpers_1.base64FromBytes)(message.nextKey !== undefined ? message.nextKey : new Uint8Array())); return obj; }, fromPartial(object) { const message = createBaseQueryInferenceAgentResponse(); - message.inferenceAgent = - object.inferenceAgent !== undefined && object.inferenceAgent !== null - ? agent_1.InferenceAgent.fromPartial(object.inferenceAgent) - : undefined; - message.agentModels = - object.agentModels?.map((e) => agent_1.AgentModel.fromPartial(e)) || []; + if (object.inferenceAgent !== undefined && object.inferenceAgent !== null) { + message.inferenceAgent = agent_1.InferenceAgent.fromPartial(object.inferenceAgent); + } + message.agentModels = object.agentModels?.map(e => agent_1.AgentModel.fromPartial(e)) || []; message.nextKey = object.nextKey ?? new Uint8Array(); return message; - }, + } }; function createBaseQueryAgentByModelRequest() { - return { modelName: "", status: 0 }; + return { + modelName: "", + status: 0 + }; } exports.QueryAgentByModelRequest = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QueryAgentByModelRequest", + encode(message, writer = _m0.Writer.create()) { if (message.modelName !== "") { writer.uint32(10).string(message.modelName); } @@ -268,7 +290,7 @@ exports.QueryAgentByModelRequest = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQueryAgentByModelRequest(); while (reader.pos < end) { @@ -288,18 +310,17 @@ exports.QueryAgentByModelRequest = { return message; }, fromJSON(object) { - return { - modelName: isSet(object.modelName) ? String(object.modelName) : "", - status: isSet(object.status) - ? (0, agent_1.agentModelStatusFromJSON)(object.status) - : 0, - }; + const obj = createBaseQueryAgentByModelRequest(); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.status)) + obj.status = (0, agent_1.agentModelStatusFromJSON)(object.status); + return obj; }, toJSON(message) { const obj = {}; message.modelName !== undefined && (obj.modelName = message.modelName); - message.status !== undefined && - (obj.status = (0, agent_1.agentModelStatusToJSON)(message.status)); + message.status !== undefined && (obj.status = (0, agent_1.agentModelStatusToJSON)(message.status)); return obj; }, fromPartial(object) { @@ -307,13 +328,17 @@ exports.QueryAgentByModelRequest = { message.modelName = object.modelName ?? ""; message.status = object.status ?? 0; return message; - }, + } }; function createBaseModelAgents() { - return { modelName: "", inferenceAgents: [] }; + return { + modelName: "", + inferenceAgents: [] + }; } exports.ModelAgents = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.ModelAgents", + encode(message, writer = _m0.Writer.create()) { if (message.modelName !== "") { writer.uint32(10).string(message.modelName); } @@ -323,7 +348,7 @@ exports.ModelAgents = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseModelAgents(); while (reader.pos < end) { @@ -343,18 +368,18 @@ exports.ModelAgents = { return message; }, fromJSON(object) { - return { - modelName: isSet(object.modelName) ? String(object.modelName) : "", - inferenceAgents: Array.isArray(object?.inferenceAgents) - ? object.inferenceAgents.map((e) => agent_1.InferenceAgent.fromJSON(e)) - : [], - }; + const obj = createBaseModelAgents(); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if (Array.isArray(object?.inferenceAgents)) + obj.inferenceAgents = object.inferenceAgents.map((e) => agent_1.InferenceAgent.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; message.modelName !== undefined && (obj.modelName = message.modelName); if (message.inferenceAgents) { - obj.inferenceAgents = message.inferenceAgents.map((e) => e ? agent_1.InferenceAgent.toJSON(e) : undefined); + obj.inferenceAgents = message.inferenceAgents.map(e => e ? agent_1.InferenceAgent.toJSON(e) : undefined); } else { obj.inferenceAgents = []; @@ -364,23 +389,25 @@ exports.ModelAgents = { fromPartial(object) { const message = createBaseModelAgents(); message.modelName = object.modelName ?? ""; - message.inferenceAgents = - object.inferenceAgents?.map((e) => agent_1.InferenceAgent.fromPartial(e)) || []; + message.inferenceAgents = object.inferenceAgents?.map(e => agent_1.InferenceAgent.fromPartial(e)) || []; return message; - }, + } }; function createBaseQueryAgentByModelResponse() { - return { modelAgents: [] }; + return { + modelAgents: [] + }; } exports.QueryAgentByModelResponse = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QueryAgentByModelResponse", + encode(message, writer = _m0.Writer.create()) { for (const v of message.modelAgents) { exports.ModelAgents.encode(v, writer.uint32(10).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQueryAgentByModelResponse(); while (reader.pos < end) { @@ -397,16 +424,15 @@ exports.QueryAgentByModelResponse = { return message; }, fromJSON(object) { - return { - modelAgents: Array.isArray(object?.modelAgents) - ? object.modelAgents.map((e) => exports.ModelAgents.fromJSON(e)) - : [], - }; + const obj = createBaseQueryAgentByModelResponse(); + if (Array.isArray(object?.modelAgents)) + obj.modelAgents = object.modelAgents.map((e) => exports.ModelAgents.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; if (message.modelAgents) { - obj.modelAgents = message.modelAgents.map((e) => e ? exports.ModelAgents.toJSON(e) : undefined); + obj.modelAgents = message.modelAgents.map(e => e ? exports.ModelAgents.toJSON(e) : undefined); } else { obj.modelAgents = []; @@ -415,23 +441,25 @@ exports.QueryAgentByModelResponse = { }, fromPartial(object) { const message = createBaseQueryAgentByModelResponse(); - message.modelAgents = - object.modelAgents?.map((e) => exports.ModelAgents.fromPartial(e)) || []; + message.modelAgents = object.modelAgents?.map(e => exports.ModelAgents.fromPartial(e)) || []; return message; - }, + } }; function createBaseQuerySessionRequest() { - return { id: "" }; + return { + id: "" + }; } exports.QuerySessionRequest = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QuerySessionRequest", + encode(message, writer = _m0.Writer.create()) { if (message.id !== "") { writer.uint32(10).string(message.id); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQuerySessionRequest(); while (reader.pos < end) { @@ -448,9 +476,10 @@ exports.QuerySessionRequest = { return message; }, fromJSON(object) { - return { - id: isSet(object.id) ? String(object.id) : "", - }; + const obj = createBaseQuerySessionRequest(); + if ((0, helpers_1.isSet)(object.id)) + obj.id = String(object.id); + return obj; }, toJSON(message) { const obj = {}; @@ -461,20 +490,23 @@ exports.QuerySessionRequest = { const message = createBaseQuerySessionRequest(); message.id = object.id ?? ""; return message; - }, + } }; function createBaseQuerySessionResponse() { - return { session: undefined }; + return { + session: undefined + }; } exports.QuerySessionResponse = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QuerySessionResponse", + encode(message, writer = _m0.Writer.create()) { if (message.session !== undefined) { agent_1.Session.encode(message.session, writer.uint32(10).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQuerySessionResponse(); while (reader.pos < end) { @@ -491,49 +523,45 @@ exports.QuerySessionResponse = { return message; }, fromJSON(object) { - return { - session: isSet(object.session) - ? agent_1.Session.fromJSON(object.session) - : undefined, - }; + const obj = createBaseQuerySessionResponse(); + if ((0, helpers_1.isSet)(object.session)) + obj.session = agent_1.Session.fromJSON(object.session); + return obj; }, toJSON(message) { const obj = {}; - message.session !== undefined && - (obj.session = message.session - ? agent_1.Session.toJSON(message.session) - : undefined); + message.session !== undefined && (obj.session = message.session ? agent_1.Session.toJSON(message.session) : undefined); return obj; }, fromPartial(object) { const message = createBaseQuerySessionResponse(); - message.session = - object.session !== undefined && object.session !== null - ? agent_1.Session.fromPartial(object.session) - : undefined; + if (object.session !== undefined && object.session !== null) { + message.session = agent_1.Session.fromPartial(object.session); + } return message; - }, + } }; function createBaseQuerySessionByAgentRequest() { return { account: "", - status: 0, - expireTime: undefined, - limit: long_1.default.UZERO, + status: undefined, + expireTime: timestamp_1.Timestamp.fromPartial({}), + limit: helpers_1.Long.UZERO, orderDesc: false, - key: new Uint8Array(), + key: new Uint8Array() }; } exports.QuerySessionByAgentRequest = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QuerySessionByAgentRequest", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } - if (message.status !== 0) { + if (message.status !== undefined) { writer.uint32(16).int32(message.status); } if (message.expireTime !== undefined) { - timestamp_1.Timestamp.encode(toTimestamp(message.expireTime), writer.uint32(26).fork()).ldelim(); + timestamp_1.Timestamp.encode(message.expireTime, writer.uint32(26).fork()).ldelim(); } if (!message.limit.isZero()) { writer.uint32(32).uint64(message.limit); @@ -547,7 +575,7 @@ exports.QuerySessionByAgentRequest = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQuerySessionByAgentRequest(); while (reader.pos < end) { @@ -560,7 +588,7 @@ exports.QuerySessionByAgentRequest = { message.status = reader.int32(); break; case 3: - message.expireTime = fromTimestamp(timestamp_1.Timestamp.decode(reader, reader.uint32())); + message.expireTime = timestamp_1.Timestamp.decode(reader, reader.uint32()); break; case 4: message.limit = reader.uint64(); @@ -579,50 +607,55 @@ exports.QuerySessionByAgentRequest = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - status: isSet(object.status) ? (0, agent_1.sessionStatusFromJSON)(object.status) : 0, - expireTime: isSet(object.expireTime) - ? fromJsonTimestamp(object.expireTime) - : undefined, - limit: isSet(object.limit) ? long_1.default.fromValue(object.limit) : long_1.default.UZERO, - orderDesc: isSet(object.orderDesc) ? Boolean(object.orderDesc) : false, - key: isSet(object.key) ? bytesFromBase64(object.key) : new Uint8Array(), - }; + const obj = createBaseQuerySessionByAgentRequest(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.status)) + obj.status = (0, agent_1.sessionStatusFromJSON)(object.status); + if ((0, helpers_1.isSet)(object.expireTime)) + obj.expireTime = (0, helpers_1.fromJsonTimestamp)(object.expireTime); + if ((0, helpers_1.isSet)(object.limit)) + obj.limit = helpers_1.Long.fromValue(object.limit); + if ((0, helpers_1.isSet)(object.orderDesc)) + obj.orderDesc = Boolean(object.orderDesc); + if ((0, helpers_1.isSet)(object.key)) + obj.key = (0, helpers_1.bytesFromBase64)(object.key); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); - message.status !== undefined && - (obj.status = (0, agent_1.sessionStatusToJSON)(message.status)); - message.expireTime !== undefined && - (obj.expireTime = message.expireTime.toISOString()); - message.limit !== undefined && - (obj.limit = (message.limit || long_1.default.UZERO).toString()); + message.status !== undefined && (obj.status = (0, agent_1.sessionStatusToJSON)(message.status)); + message.expireTime !== undefined && (obj.expireTime = (0, helpers_1.fromTimestamp)(message.expireTime).toISOString()); + message.limit !== undefined && (obj.limit = (message.limit || helpers_1.Long.UZERO).toString()); message.orderDesc !== undefined && (obj.orderDesc = message.orderDesc); - message.key !== undefined && - (obj.key = base64FromBytes(message.key !== undefined ? message.key : new Uint8Array())); + message.key !== undefined && (obj.key = (0, helpers_1.base64FromBytes)(message.key !== undefined ? message.key : new Uint8Array())); return obj; }, fromPartial(object) { const message = createBaseQuerySessionByAgentRequest(); message.account = object.account ?? ""; - message.status = object.status ?? 0; - message.expireTime = object.expireTime ?? undefined; - message.limit = - object.limit !== undefined && object.limit !== null - ? long_1.default.fromValue(object.limit) - : long_1.default.UZERO; + message.status = object.status ?? undefined; + if (object.expireTime !== undefined && object.expireTime !== null) { + message.expireTime = timestamp_1.Timestamp.fromPartial(object.expireTime); + } + if (object.limit !== undefined && object.limit !== null) { + message.limit = helpers_1.Long.fromValue(object.limit); + } message.orderDesc = object.orderDesc ?? false; message.key = object.key ?? new Uint8Array(); return message; - }, + } }; function createBaseQuerySessionByAgentResponse() { - return { sessions: [], nextKey: new Uint8Array() }; + return { + sessions: [], + nextKey: new Uint8Array() + }; } exports.QuerySessionByAgentResponse = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QuerySessionByAgentResponse", + encode(message, writer = _m0.Writer.create()) { for (const v of message.sessions) { agent_1.Session.encode(v, writer.uint32(10).fork()).ldelim(); } @@ -632,7 +665,7 @@ exports.QuerySessionByAgentResponse = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQuerySessionByAgentResponse(); while (reader.pos < end) { @@ -652,47 +685,238 @@ exports.QuerySessionByAgentResponse = { return message; }, fromJSON(object) { - return { - sessions: Array.isArray(object?.sessions) - ? object.sessions.map((e) => agent_1.Session.fromJSON(e)) - : [], - nextKey: isSet(object.nextKey) - ? bytesFromBase64(object.nextKey) - : new Uint8Array(), - }; + const obj = createBaseQuerySessionByAgentResponse(); + if (Array.isArray(object?.sessions)) + obj.sessions = object.sessions.map((e) => agent_1.Session.fromJSON(e)); + if ((0, helpers_1.isSet)(object.nextKey)) + obj.nextKey = (0, helpers_1.bytesFromBase64)(object.nextKey); + return obj; }, toJSON(message) { const obj = {}; if (message.sessions) { - obj.sessions = message.sessions.map((e) => e ? agent_1.Session.toJSON(e) : undefined); + obj.sessions = message.sessions.map(e => e ? agent_1.Session.toJSON(e) : undefined); } else { obj.sessions = []; } - message.nextKey !== undefined && - (obj.nextKey = base64FromBytes(message.nextKey !== undefined ? message.nextKey : new Uint8Array())); + message.nextKey !== undefined && (obj.nextKey = (0, helpers_1.base64FromBytes)(message.nextKey !== undefined ? message.nextKey : new Uint8Array())); return obj; }, fromPartial(object) { const message = createBaseQuerySessionByAgentResponse(); - message.sessions = - object.sessions?.map((e) => agent_1.Session.fromPartial(e)) || []; + message.sessions = object.sessions?.map(e => agent_1.Session.fromPartial(e)) || []; message.nextKey = object.nextKey ?? new Uint8Array(); return message; + } +}; +function createBaseQuerySessionByChallengeRequest() { + return { + account: "", + limit: helpers_1.Long.UZERO, + key: new Uint8Array() + }; +} +exports.QuerySessionByChallengeRequest = { + typeUrl: "/agent.v1.QuerySessionByChallengeRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.account !== "") { + writer.uint32(10).string(message.account); + } + if (!message.limit.isZero()) { + writer.uint32(16).uint64(message.limit); + } + if (message.key.length !== 0) { + writer.uint32(26).bytes(message.key); + } + return writer; }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQuerySessionByChallengeRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.account = reader.string(); + break; + case 2: + message.limit = reader.uint64(); + break; + case 3: + message.key = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQuerySessionByChallengeRequest(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.limit)) + obj.limit = helpers_1.Long.fromValue(object.limit); + if ((0, helpers_1.isSet)(object.key)) + obj.key = (0, helpers_1.bytesFromBase64)(object.key); + return obj; + }, + toJSON(message) { + const obj = {}; + message.account !== undefined && (obj.account = message.account); + message.limit !== undefined && (obj.limit = (message.limit || helpers_1.Long.UZERO).toString()); + message.key !== undefined && (obj.key = (0, helpers_1.base64FromBytes)(message.key !== undefined ? message.key : new Uint8Array())); + return obj; + }, + fromPartial(object) { + const message = createBaseQuerySessionByChallengeRequest(); + message.account = object.account ?? ""; + if (object.limit !== undefined && object.limit !== null) { + message.limit = helpers_1.Long.fromValue(object.limit); + } + message.key = object.key ?? new Uint8Array(); + return message; + } +}; +function createBaseSessionIdStatus() { + return { + sessionId: "", + status: 0 + }; +} +exports.SessionIdStatus = { + typeUrl: "/agent.v1.SessionIdStatus", + encode(message, writer = _m0.Writer.create()) { + if (message.sessionId !== "") { + writer.uint32(10).string(message.sessionId); + } + if (message.status !== 0) { + writer.uint32(16).int32(message.status); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSessionIdStatus(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sessionId = reader.string(); + break; + case 2: + message.status = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseSessionIdStatus(); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.status)) + obj.status = (0, agent_1.sessionStatusFromJSON)(object.status); + return obj; + }, + toJSON(message) { + const obj = {}; + message.sessionId !== undefined && (obj.sessionId = message.sessionId); + message.status !== undefined && (obj.status = (0, agent_1.sessionStatusToJSON)(message.status)); + return obj; + }, + fromPartial(object) { + const message = createBaseSessionIdStatus(); + message.sessionId = object.sessionId ?? ""; + message.status = object.status ?? 0; + return message; + } +}; +function createBaseQuerySessionByChallengeResponse() { + return { + sesssionIdStatus: [], + nextKey: new Uint8Array() + }; +} +exports.QuerySessionByChallengeResponse = { + typeUrl: "/agent.v1.QuerySessionByChallengeResponse", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.sesssionIdStatus) { + exports.SessionIdStatus.encode(v, writer.uint32(10).fork()).ldelim(); + } + if (message.nextKey.length !== 0) { + writer.uint32(18).bytes(message.nextKey); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQuerySessionByChallengeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sesssionIdStatus.push(exports.SessionIdStatus.decode(reader, reader.uint32())); + break; + case 2: + message.nextKey = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQuerySessionByChallengeResponse(); + if (Array.isArray(object?.sesssionIdStatus)) + obj.sesssionIdStatus = object.sesssionIdStatus.map((e) => exports.SessionIdStatus.fromJSON(e)); + if ((0, helpers_1.isSet)(object.nextKey)) + obj.nextKey = (0, helpers_1.bytesFromBase64)(object.nextKey); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.sesssionIdStatus) { + obj.sesssionIdStatus = message.sesssionIdStatus.map(e => e ? exports.SessionIdStatus.toJSON(e) : undefined); + } + else { + obj.sesssionIdStatus = []; + } + message.nextKey !== undefined && (obj.nextKey = (0, helpers_1.base64FromBytes)(message.nextKey !== undefined ? message.nextKey : new Uint8Array())); + return obj; + }, + fromPartial(object) { + const message = createBaseQuerySessionByChallengeResponse(); + message.sesssionIdStatus = object.sesssionIdStatus?.map(e => exports.SessionIdStatus.fromPartial(e)) || []; + message.nextKey = object.nextKey ?? new Uint8Array(); + return message; + } }; function createBaseQueryVRFSeedRequest() { - return { account: "" }; + return { + account: "" + }; } exports.QueryVRFSeedRequest = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QueryVRFSeedRequest", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQueryVRFSeedRequest(); while (reader.pos < end) { @@ -709,9 +933,10 @@ exports.QueryVRFSeedRequest = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - }; + const obj = createBaseQueryVRFSeedRequest(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + return obj; }, toJSON(message) { const obj = {}; @@ -722,20 +947,23 @@ exports.QueryVRFSeedRequest = { const message = createBaseQueryVRFSeedRequest(); message.account = object.account ?? ""; return message; - }, + } }; function createBaseQueryVRFSeedResponse() { - return { seed: new Uint8Array() }; + return { + seed: new Uint8Array() + }; } exports.QueryVRFSeedResponse = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.QueryVRFSeedResponse", + encode(message, writer = _m0.Writer.create()) { if (message.seed.length !== 0) { writer.uint32(10).bytes(message.seed); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseQueryVRFSeedResponse(); while (reader.pos < end) { @@ -752,23 +980,21 @@ exports.QueryVRFSeedResponse = { return message; }, fromJSON(object) { - return { - seed: isSet(object.seed) - ? bytesFromBase64(object.seed) - : new Uint8Array(), - }; + const obj = createBaseQueryVRFSeedResponse(); + if ((0, helpers_1.isSet)(object.seed)) + obj.seed = (0, helpers_1.bytesFromBase64)(object.seed); + return obj; }, toJSON(message) { const obj = {}; - message.seed !== undefined && - (obj.seed = base64FromBytes(message.seed !== undefined ? message.seed : new Uint8Array())); + message.seed !== undefined && (obj.seed = (0, helpers_1.base64FromBytes)(message.seed !== undefined ? message.seed : new Uint8Array())); return obj; }, fromPartial(object) { const message = createBaseQueryVRFSeedResponse(); message.seed = object.seed ?? new Uint8Array(); return message; - }, + } }; class QueryClientImpl { constructor(rpc) { @@ -778,105 +1004,44 @@ class QueryClientImpl { this.AgentByModelRequest = this.AgentByModelRequest.bind(this); this.SessionRequest = this.SessionRequest.bind(this); this.SessionByAgentRequest = this.SessionByAgentRequest.bind(this); + this.SessionByChallengeRequest = this.SessionByChallengeRequest.bind(this); this.VRFSeedRequest = this.VRFSeedRequest.bind(this); } - Params(request) { + Params(request = {}) { const data = exports.QueryParamsRequest.encode(request).finish(); const promise = this.rpc.request("agent.v1.Query", "Params", data); - return promise.then((data) => exports.QueryParamsResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.QueryParamsResponse.decode(new _m0.Reader(data))); } InferenceAgentRequest(request) { const data = exports.QueryInferenceAgentRequest.encode(request).finish(); const promise = this.rpc.request("agent.v1.Query", "InferenceAgentRequest", data); - return promise.then((data) => exports.QueryInferenceAgentResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.QueryInferenceAgentResponse.decode(new _m0.Reader(data))); } AgentByModelRequest(request) { const data = exports.QueryAgentByModelRequest.encode(request).finish(); const promise = this.rpc.request("agent.v1.Query", "AgentByModelRequest", data); - return promise.then((data) => exports.QueryAgentByModelResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.QueryAgentByModelResponse.decode(new _m0.Reader(data))); } SessionRequest(request) { const data = exports.QuerySessionRequest.encode(request).finish(); const promise = this.rpc.request("agent.v1.Query", "SessionRequest", data); - return promise.then((data) => exports.QuerySessionResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.QuerySessionResponse.decode(new _m0.Reader(data))); } SessionByAgentRequest(request) { const data = exports.QuerySessionByAgentRequest.encode(request).finish(); const promise = this.rpc.request("agent.v1.Query", "SessionByAgentRequest", data); - return promise.then((data) => exports.QuerySessionByAgentResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.QuerySessionByAgentResponse.decode(new _m0.Reader(data))); + } + SessionByChallengeRequest(request) { + const data = exports.QuerySessionByChallengeRequest.encode(request).finish(); + const promise = this.rpc.request("agent.v1.Query", "SessionByChallengeRequest", data); + return promise.then(data => exports.QuerySessionByChallengeResponse.decode(new _m0.Reader(data))); } VRFSeedRequest(request) { const data = exports.QueryVRFSeedRequest.encode(request).finish(); const promise = this.rpc.request("agent.v1.Query", "VRFSeedRequest", data); - return promise.then((data) => exports.QueryVRFSeedResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.QueryVRFSeedResponse.decode(new _m0.Reader(data))); } } exports.QueryClientImpl = QueryClientImpl; -var globalThis = (() => { - if (typeof globalThis !== "undefined") - return globalThis; - if (typeof self !== "undefined") - return self; - if (typeof window !== "undefined") - return window; - if (typeof global !== "undefined") - return global; - throw "Unable to locate global object"; -})(); -function bytesFromBase64(b64) { - if (globalThis.Buffer) { - return Uint8Array.from(globalThis.Buffer.from(b64, "base64")); - } - else { - const bin = globalThis.atob(b64); - const arr = new Uint8Array(bin.length); - for (let i = 0; i < bin.length; ++i) { - arr[i] = bin.charCodeAt(i); - } - return arr; - } -} -function base64FromBytes(arr) { - if (globalThis.Buffer) { - return globalThis.Buffer.from(arr).toString("base64"); - } - else { - const bin = []; - arr.forEach((byte) => { - bin.push(String.fromCharCode(byte)); - }); - return globalThis.btoa(bin.join("")); - } -} -function toTimestamp(date) { - const seconds = numberToLong(date.getTime() / 1000); - const nanos = (date.getTime() % 1000) * 1000000; - return { seconds, nanos }; -} -function fromTimestamp(t) { - let millis = t.seconds.toNumber() * 1000; - millis += t.nanos / 1000000; - return new Date(millis); -} -function fromJsonTimestamp(o) { - if (o instanceof Date) { - return o; - } - else if (typeof o === "string") { - return new Date(o); - } - else { - return fromTimestamp(timestamp_1.Timestamp.fromJSON(o)); - } -} -function numberToLong(number) { - return long_1.default.fromNumber(number); -} -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvYWdlbnQvdjEvcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLG1DQVdpQjtBQUNqQiwrREFBNEQ7QUFDNUQsZ0RBQXdCO0FBQ3hCLGlFQUFxQztBQUV4QixRQUFBLGVBQWUsR0FBRyxVQUFVLENBQUM7QUFrRTFDLFNBQVMsNEJBQTRCO0lBQ25DLE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQUVZLFFBQUEsa0JBQWtCLEdBQUc7SUFDaEMsTUFBTSxDQUNKLENBQXFCLEVBQ3JCLFNBQXFCLGlCQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUV4QyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0sR0FBRyxLQUFLLFlBQVksaUJBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxpQkFBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLEdBQUcsR0FBRyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyw0QkFBNEIsRUFBRSxDQUFDO1FBQy9DLE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUN4QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsUUFBUSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2xCO29CQUNFLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUN6QixNQUFNO1lBQ1Ys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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvYWdlbnQvdjEvcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsbUNBQXFNO0FBQ3JNLCtEQUE0RDtBQUM1RCwyQ0FBeUk7QUFDekksd0RBQTBDO0FBRTdCLFFBQUEsZUFBZSxHQUFHLFVBQVUsQ0FBQztBQWlFMUMsU0FBUyw0QkFBNEI7SUFDbkMsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDO0FBQ1ksUUFBQSxrQkFBa0IsR0FBRztJQUNoQyxPQUFPLEVBQUUsOEJBQThCO0lBQ3ZDLE1BQU0sQ0FBQyxDQUFxQixFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ3BFLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLEdBQUcsR0FBRyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyw0QkFBNEIsRUFBRSxDQUFDO1FBQy9DLE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUN4QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsUUFBUSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2xCO29CQUNFLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FB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 \ No newline at end of file diff --git a/dist/codec/agent/v1/tx.d.ts b/dist/codec/agent/v1/tx.d.ts index 796da41..6c2f2b8 100644 --- a/dist/codec/agent/v1/tx.d.ts +++ b/dist/codec/agent/v1/tx.d.ts @@ -1,11 +1,13 @@ -import { Params, AgentStatus, AgentModelStatus, Payment } from "./agent"; +/// +import { Params, AgentStatus, AgentModelStatus, TokenPrice, Payment } from "./agent"; import { Coin } from "../../cosmos/base/v1beta1/coin"; -import Long from "long"; -import _m0 from "protobufjs/minimal"; +import { Long, Rpc } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; export declare const protobufPackage = "agent.v1"; export interface MsgUpdateParams { authority: string; - params?: Params; + params: Params; } export interface MsgUpdateParamsResponse { } @@ -18,9 +20,9 @@ export interface MsgRegisterInferenceAgentResponse { } export interface MsgUpdateInferenceAgent { account: string; - url: string; - version: Long; - status: AgentStatus; + url?: string; + version?: Long; + status?: AgentStatus; } export interface MsgUpdateInferenceAgentResponse { } @@ -48,13 +50,20 @@ export interface MsgRegisterSession { sessionId: string; account: string; modelName: string; - lockBalance?: Coin; - vrf?: VRF; + lockBalance: Coin; + vrf: VRF; + tokenPrice: TokenPrice; } export interface MsgRegisterSessionResponse { account: string; modelName: string; } +export interface MsgCancelSession { + sessionId: string; + account: string; +} +export interface MsgCancelSessionResponse { +} export interface MsgSubmitPayment { account: string; sessionId: string; @@ -99,10 +108,11 @@ export interface MsgSubmitChallengeOriginHash { export interface MsgSubmitChallengeOriginHashResponse { } export declare const MsgUpdateParams: { + typeUrl: string; encode(message: MsgUpdateParams, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateParams; fromJSON(object: any): MsgUpdateParams; - toJSON(message: MsgUpdateParams): unknown; + toJSON(message: MsgUpdateParams): JsonSafe; fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; userMinimumLock?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; sessionTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -272,9 +280,9 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -336,9 +344,9 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; globalSeed?: Uint8Array | undefined; lowestAgentVersion?: string | number | (Long.Long & { high: number; @@ -397,7 +405,7 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; highestAgentVersion?: string | number | (Long.Long & { high: number; low: number; @@ -455,7 +463,7 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_4 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeRate?: string | number | (Long.Long & { high: number; low: number; @@ -513,7 +521,7 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; validatorCount?: string | number | (Long.Long & { high: number; low: number; @@ -571,7 +579,7 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeRound?: string | number | (Long.Long & { high: number; low: number; @@ -629,7 +637,7 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_7 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeCidTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -691,9 +699,9 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_8 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_9 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeReplyTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -755,9 +763,9 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_10 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeMerkleTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -819,9 +827,9 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_12 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_13 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; challengeOriginTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -883,9 +891,9 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_14 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_15 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; agentValidTime?: ({ seconds?: string | number | Long.Long | undefined; nanos?: number | undefined; @@ -947,82 +955,26 @@ export declare const MsgUpdateParams: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_16 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_17 in Exclude]: never; }) | undefined; - tokenPrice?: string | number | (Long.Long & { - high: number; - low: number; - unsigned: boolean; - add: (addend: string | number | Long.Long) => Long.Long; - and: (other: string | number | Long.Long) => Long.Long; - compare: (other: string | number | Long.Long) => number; - comp: (other: string | number | Long.Long) => number; - divide: (divisor: string | number | Long.Long) => Long.Long; - div: (divisor: string | number | Long.Long) => Long.Long; - equals: (other: string | number | Long.Long) => boolean; - eq: (other: string | number | Long.Long) => boolean; - getHighBits: () => number; - getHighBitsUnsigned: () => number; - getLowBits: () => number; - getLowBitsUnsigned: () => number; - getNumBitsAbs: () => number; - greaterThan: (other: string | number | Long.Long) => boolean; - gt: (other: string | number | Long.Long) => boolean; - greaterThanOrEqual: (other: string | number | Long.Long) => boolean; - gte: (other: string | number | Long.Long) => boolean; - isEven: () => boolean; - isNegative: () => boolean; - isOdd: () => boolean; - isPositive: () => boolean; - isZero: () => boolean; - lessThan: (other: string | number | Long.Long) => boolean; - lt: (other: string | number | Long.Long) => boolean; - lessThanOrEqual: (other: string | number | Long.Long) => boolean; - lte: (other: string | number | Long.Long) => boolean; - modulo: (other: string | number | Long.Long) => Long.Long; - mod: (other: string | number | Long.Long) => Long.Long; - multiply: (multiplier: string | number | Long.Long) => Long.Long; - mul: (multiplier: string | number | Long.Long) => Long.Long; - negate: () => Long.Long; - neg: () => Long.Long; - not: () => Long.Long; - notEquals: (other: string | number | Long.Long) => boolean; - neq: (other: string | number | Long.Long) => boolean; - or: (other: string | number | Long.Long) => Long.Long; - shiftLeft: (numBits: number | Long.Long) => Long.Long; - shl: (numBits: number | Long.Long) => Long.Long; - shiftRight: (numBits: number | Long.Long) => Long.Long; - shr: (numBits: number | Long.Long) => Long.Long; - shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; - shru: (numBits: number | Long.Long) => Long.Long; - subtract: (subtrahend: string | number | Long.Long) => Long.Long; - sub: (subtrahend: string | number | Long.Long) => Long.Long; - toInt: () => number; - toNumber: () => number; - toBytes: (le?: boolean | undefined) => number[]; - toBytesLE: () => number[]; - toBytesBE: () => number[]; - toSigned: () => Long.Long; - toString: (radix?: number | undefined) => string; - toUnsigned: () => Long.Long; - xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_18 in Exclude]: never; }) | undefined; - } & { [K_19 in Exclude]: never; }) | undefined; - } & { [K_20 in Exclude]: never; }>(object: I): MsgUpdateParams; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): MsgUpdateParams; }; export declare const MsgUpdateParamsResponse: { + typeUrl: string; encode(_: MsgUpdateParamsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateParamsResponse; fromJSON(_: any): MsgUpdateParamsResponse; - toJSON(_: MsgUpdateParamsResponse): unknown; - fromPartial]: never; }>(_: I): MsgUpdateParamsResponse; + toJSON(_: MsgUpdateParamsResponse): JsonSafe; + fromPartial, never>>(_: I): MsgUpdateParamsResponse; }; export declare const MsgRegisterInferenceAgent: { + typeUrl: string; encode(message: MsgRegisterInferenceAgent, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterInferenceAgent; fromJSON(object: any): MsgRegisterInferenceAgent; - toJSON(message: MsgRegisterInferenceAgent): unknown; + toJSON(message: MsgRegisterInferenceAgent): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): MsgRegisterInferenceAgent; + } & Record, never>) | undefined; + } & Record, never>>(object: I): MsgRegisterInferenceAgent; }; export declare const MsgRegisterInferenceAgentResponse: { + typeUrl: string; encode(_: MsgRegisterInferenceAgentResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterInferenceAgentResponse; fromJSON(_: any): MsgRegisterInferenceAgentResponse; - toJSON(_: MsgRegisterInferenceAgentResponse): unknown; - fromPartial]: never; }>(_: I): MsgRegisterInferenceAgentResponse; + toJSON(_: MsgRegisterInferenceAgentResponse): JsonSafe; + fromPartial, never>>(_: I): MsgRegisterInferenceAgentResponse; }; export declare const MsgUpdateInferenceAgent: { + typeUrl: string; encode(message: MsgUpdateInferenceAgent, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateInferenceAgent; fromJSON(object: any): MsgUpdateInferenceAgent; - toJSON(message: MsgUpdateInferenceAgent): unknown; + toJSON(message: MsgUpdateInferenceAgent): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; status?: AgentStatus | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): MsgUpdateInferenceAgent; + } & Record, never>>(object: I): MsgUpdateInferenceAgent; }; export declare const MsgUpdateInferenceAgentResponse: { + typeUrl: string; encode(_: MsgUpdateInferenceAgentResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateInferenceAgentResponse; fromJSON(_: any): MsgUpdateInferenceAgentResponse; - toJSON(_: MsgUpdateInferenceAgentResponse): unknown; - fromPartial]: never; }>(_: I): MsgUpdateInferenceAgentResponse; + toJSON(_: MsgUpdateInferenceAgentResponse): JsonSafe; + fromPartial, never>>(_: I): MsgUpdateInferenceAgentResponse; }; export declare const MsgRegisterAgentModel: { + typeUrl: string; encode(message: MsgRegisterAgentModel, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterAgentModel; fromJSON(object: any): MsgRegisterAgentModel; - toJSON(message: MsgRegisterAgentModel): unknown; + toJSON(message: MsgRegisterAgentModel): JsonSafe; fromPartial]: never; }) | undefined; + modelName?: (string[] & string[] & Record, never>) | undefined; lock?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { high: number; low: number; @@ -1247,21 +1203,23 @@ export declare const MsgRegisterAgentModel: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }))[] & { [K_2 in Exclude]: never; }) | undefined; - } & { [K_3 in Exclude]: never; }>(object: I): MsgRegisterAgentModel; + } & Record, never>))[] & Record, never>) | undefined; + } & Record, never>>(object: I): MsgRegisterAgentModel; }; export declare const MsgRegisterAgentModelResponse: { + typeUrl: string; encode(_: MsgRegisterAgentModelResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterAgentModelResponse; fromJSON(_: any): MsgRegisterAgentModelResponse; - toJSON(_: MsgRegisterAgentModelResponse): unknown; - fromPartial]: never; }>(_: I): MsgRegisterAgentModelResponse; + toJSON(_: MsgRegisterAgentModelResponse): JsonSafe; + fromPartial, never>>(_: I): MsgRegisterAgentModelResponse; }; export declare const MsgUpdateAgentModel: { + typeUrl: string; encode(message: MsgUpdateAgentModel, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateAgentModel; fromJSON(object: any): MsgUpdateAgentModel; - toJSON(message: MsgUpdateAgentModel): unknown; + toJSON(message: MsgUpdateAgentModel): JsonSafe; fromPartial]: never; }) | undefined; + modelName?: (string[] & string[] & Record, never>) | undefined; lock?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { high: number; low: number; @@ -1327,22 +1285,24 @@ export declare const MsgUpdateAgentModel: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }))[] & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>))[] & Record, never>) | undefined; status?: AgentModelStatus | undefined; - } & { [K_3 in Exclude]: never; }>(object: I): MsgUpdateAgentModel; + } & Record, never>>(object: I): MsgUpdateAgentModel; }; export declare const MsgUpdateAgentModelResponse: { + typeUrl: string; encode(_: MsgUpdateAgentModelResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateAgentModelResponse; fromJSON(_: any): MsgUpdateAgentModelResponse; - toJSON(_: MsgUpdateAgentModelResponse): unknown; - fromPartial]: never; }>(_: I): MsgUpdateAgentModelResponse; + toJSON(_: MsgUpdateAgentModelResponse): JsonSafe; + fromPartial, never>>(_: I): MsgUpdateAgentModelResponse; }; export declare const VRF: { + typeUrl: string; encode(message: VRF, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): VRF; fromJSON(object: any): VRF; - toJSON(message: VRF): unknown; + toJSON(message: VRF): JsonSafe; fromPartial]: never; }>(object: I): VRF; + } & Record, never>>(object: I): VRF; }; export declare const MsgRegisterSession: { + typeUrl: string; encode(message: MsgRegisterSession, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterSession; fromJSON(object: any): MsgRegisterSession; - toJSON(message: MsgRegisterSession): unknown; + toJSON(message: MsgRegisterSession): JsonSafe; fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; vrf?: ({ seed?: Uint8Array | undefined; proof?: Uint8Array | undefined; @@ -1390,36 +1361,82 @@ export declare const MsgRegisterSession: { seed?: Uint8Array | undefined; proof?: Uint8Array | undefined; hashRandom?: Uint8Array | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; - } & { [K_2 in Exclude]: never; }>(object: I): MsgRegisterSession; + } & Record, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): MsgRegisterSession; }; export declare const MsgRegisterSessionResponse: { + typeUrl: string; encode(message: MsgRegisterSessionResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterSessionResponse; fromJSON(object: any): MsgRegisterSessionResponse; - toJSON(message: MsgRegisterSessionResponse): unknown; + toJSON(message: MsgRegisterSessionResponse): JsonSafe; fromPartial]: never; }>(object: I): MsgRegisterSessionResponse; + } & Record, never>>(object: I): MsgRegisterSessionResponse; +}; +export declare const MsgCancelSession: { + typeUrl: string; + encode(message: MsgCancelSession, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgCancelSession; + fromJSON(object: any): MsgCancelSession; + toJSON(message: MsgCancelSession): JsonSafe; + fromPartial, never>>(object: I): MsgCancelSession; +}; +export declare const MsgCancelSessionResponse: { + typeUrl: string; + encode(_: MsgCancelSessionResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgCancelSessionResponse; + fromJSON(_: any): MsgCancelSessionResponse; + toJSON(_: MsgCancelSessionResponse): JsonSafe; + fromPartial, never>>(_: I): MsgCancelSessionResponse; }; export declare const MsgSubmitPayment: { + typeUrl: string; encode(message: MsgSubmitPayment, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitPayment; fromJSON(object: any): MsgSubmitPayment; - toJSON(message: MsgSubmitPayment): unknown; + toJSON(message: MsgSubmitPayment): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }))[] & { [K_1 in Exclude]: never; }) | undefined; - totalPayment?: ({ - denom?: string | undefined; - amount?: string | undefined; - } & { - denom?: string | undefined; - amount?: string | undefined; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>))[] & Record, never>) | undefined; + outputTokens?: ((string | number | Long.Long)[] & (string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>))[] & Record, never>) | undefined; merkleRoot?: Uint8Array | undefined; contributions?: ({ account?: string | undefined; @@ -1589,58 +1654,62 @@ export declare const MsgSubmitPayment: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; amount?: ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; - } & { [K_4 in Exclude]: never; }) | undefined; - } & { [K in Exclude]: never; })[] & { [K_1 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_2 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; signature?: Uint8Array | undefined; - } & { [K_3 in Exclude]: never; }>(object: I): MsgSubmitPayment; + } & Record, never>>(object: I): MsgSubmitPayment; }; export declare const MsgSubmitPaymentResponse: { + typeUrl: string; encode(_: MsgSubmitPaymentResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitPaymentResponse; fromJSON(_: any): MsgSubmitPaymentResponse; - toJSON(_: MsgSubmitPaymentResponse): unknown; - fromPartial]: never; }>(_: I): MsgSubmitPaymentResponse; + toJSON(_: MsgSubmitPaymentResponse): JsonSafe; + fromPartial, never>>(_: I): MsgSubmitPaymentResponse; }; export declare const MsgDeleteExpiredSession: { + typeUrl: string; encode(message: MsgDeleteExpiredSession, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgDeleteExpiredSession; fromJSON(object: any): MsgDeleteExpiredSession; - toJSON(message: MsgDeleteExpiredSession): unknown; + toJSON(message: MsgDeleteExpiredSession): JsonSafe; fromPartial]: never; }>(object: I): MsgDeleteExpiredSession; + } & Record, never>>(object: I): MsgDeleteExpiredSession; }; export declare const MsgDeleteExpiredSessionResponse: { + typeUrl: string; encode(_: MsgDeleteExpiredSessionResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgDeleteExpiredSessionResponse; fromJSON(_: any): MsgDeleteExpiredSessionResponse; - toJSON(_: MsgDeleteExpiredSessionResponse): unknown; - fromPartial]: never; }>(_: I): MsgDeleteExpiredSessionResponse; + toJSON(_: MsgDeleteExpiredSessionResponse): JsonSafe; + fromPartial, never>>(_: I): MsgDeleteExpiredSessionResponse; }; export declare const MsgSubmitChallengeCID: { + typeUrl: string; encode(message: MsgSubmitChallengeCID, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitChallengeCID; fromJSON(object: any): MsgSubmitChallengeCID; - toJSON(message: MsgSubmitChallengeCID): unknown; + toJSON(message: MsgSubmitChallengeCID): JsonSafe; fromPartial]: never; }>(object: I): MsgSubmitChallengeCID; + } & Record, never>>(object: I): MsgSubmitChallengeCID; }; export declare const MsgSubmitChallengeCIDResponse: { + typeUrl: string; encode(_: MsgSubmitChallengeCIDResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitChallengeCIDResponse; fromJSON(_: any): MsgSubmitChallengeCIDResponse; - toJSON(_: MsgSubmitChallengeCIDResponse): unknown; - fromPartial]: never; }>(_: I): MsgSubmitChallengeCIDResponse; + toJSON(_: MsgSubmitChallengeCIDResponse): JsonSafe; + fromPartial, never>>(_: I): MsgSubmitChallengeCIDResponse; }; export declare const MsgSubmitChallengeReply: { + typeUrl: string; encode(message: MsgSubmitChallengeReply, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitChallengeReply; fromJSON(object: any): MsgSubmitChallengeReply; - toJSON(message: MsgSubmitChallengeReply): unknown; + toJSON(message: MsgSubmitChallengeReply): JsonSafe; fromPartial]: never; }>(object: I): MsgSubmitChallengeReply; + } & Record, never>>(object: I): MsgSubmitChallengeReply; }; export declare const MsgSubmitChallengeReplyResponse: { + typeUrl: string; encode(_: MsgSubmitChallengeReplyResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitChallengeReplyResponse; fromJSON(_: any): MsgSubmitChallengeReplyResponse; - toJSON(_: MsgSubmitChallengeReplyResponse): unknown; - fromPartial]: never; }>(_: I): MsgSubmitChallengeReplyResponse; + toJSON(_: MsgSubmitChallengeReplyResponse): JsonSafe; + fromPartial, never>>(_: I): MsgSubmitChallengeReplyResponse; }; export declare const MsgSubmitChallengeMerkleTree: { + typeUrl: string; encode(message: MsgSubmitChallengeMerkleTree, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitChallengeMerkleTree; fromJSON(object: any): MsgSubmitChallengeMerkleTree; - toJSON(message: MsgSubmitChallengeMerkleTree): unknown; + toJSON(message: MsgSubmitChallengeMerkleTree): JsonSafe; fromPartial]: never; }) | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): MsgSubmitChallengeMerkleTree; + merkleTree?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; + } & Record, never>>(object: I): MsgSubmitChallengeMerkleTree; }; export declare const MsgSubmitChallengeMerkleTreeResponse: { + typeUrl: string; encode(_: MsgSubmitChallengeMerkleTreeResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitChallengeMerkleTreeResponse; fromJSON(_: any): MsgSubmitChallengeMerkleTreeResponse; - toJSON(_: MsgSubmitChallengeMerkleTreeResponse): unknown; - fromPartial]: never; }>(_: I): MsgSubmitChallengeMerkleTreeResponse; + toJSON(_: MsgSubmitChallengeMerkleTreeResponse): JsonSafe; + fromPartial, never>>(_: I): MsgSubmitChallengeMerkleTreeResponse; }; export declare const MsgSubmitChallengeOriginHash: { + typeUrl: string; encode(message: MsgSubmitChallengeOriginHash, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitChallengeOriginHash; fromJSON(object: any): MsgSubmitChallengeOriginHash; - toJSON(message: MsgSubmitChallengeOriginHash): unknown; + toJSON(message: MsgSubmitChallengeOriginHash): JsonSafe; fromPartial]: never; }>(object: I): MsgSubmitChallengeOriginHash; + } & Record, never>>(object: I): MsgSubmitChallengeOriginHash; }; export declare const MsgSubmitChallengeOriginHashResponse: { + typeUrl: string; encode(_: MsgSubmitChallengeOriginHashResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitChallengeOriginHashResponse; fromJSON(_: any): MsgSubmitChallengeOriginHashResponse; - toJSON(_: MsgSubmitChallengeOriginHashResponse): unknown; - fromPartial]: never; }>(_: I): MsgSubmitChallengeOriginHashResponse; + toJSON(_: MsgSubmitChallengeOriginHashResponse): JsonSafe; + fromPartial, never>>(_: I): MsgSubmitChallengeOriginHashResponse; }; export interface Msg { UpdateParams(request: MsgUpdateParams): Promise; + /** RegisterInferenceAgent defines a method to register an inference agent to the chain. */ RegisterInferenceAgent(request: MsgRegisterInferenceAgent): Promise; + /** UpdateInferenceAgent defines a method to update an existing inference agent. */ UpdateInferenceAgent(request: MsgUpdateInferenceAgent): Promise; + /** RegisterAgentModel defines a method to register a batch of models belonging to an agent on the blockchain. */ RegisterAgentModel(request: MsgRegisterAgentModel): Promise; + /** UpdateAgentModel defines a method to update a batch of existing models. */ UpdateAgentModel(request: MsgUpdateAgentModel): Promise; RegisterSession(request: MsgRegisterSession): Promise; + CancelSession(request: MsgCancelSession): Promise; SubmitPayment(request: MsgSubmitPayment): Promise; DeleteExpiredSession(request: MsgDeleteExpiredSession): Promise; SubmitChallengeCID(request: MsgSubmitChallengeCID): Promise; @@ -1749,6 +1830,7 @@ export declare class MsgClientImpl implements Msg { RegisterAgentModel(request: MsgRegisterAgentModel): Promise; UpdateAgentModel(request: MsgUpdateAgentModel): Promise; RegisterSession(request: MsgRegisterSession): Promise; + CancelSession(request: MsgCancelSession): Promise; SubmitPayment(request: MsgSubmitPayment): Promise; DeleteExpiredSession(request: MsgDeleteExpiredSession): Promise; SubmitChallengeCID(request: MsgSubmitChallengeCID): Promise; @@ -1756,17 +1838,3 @@ export declare class MsgClientImpl implements Msg { SubmitChallengeMerkleTree(request: MsgSubmitChallengeMerkleTree): Promise; SubmitChallengeOriginHash(request: MsgSubmitChallengeOriginHash): Promise; } -interface Rpc { - request(service: string, method: string, data: Uint8Array): Promise; -} -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; -}; -export {}; diff --git a/dist/codec/agent/v1/tx.js b/dist/codec/agent/v1/tx.js index 2906363..82470ea 100644 --- a/dist/codec/agent/v1/tx.js +++ b/dist/codec/agent/v1/tx.js @@ -1,20 +1,44 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.MsgClientImpl = exports.MsgSubmitChallengeOriginHashResponse = exports.MsgSubmitChallengeOriginHash = exports.MsgSubmitChallengeMerkleTreeResponse = exports.MsgSubmitChallengeMerkleTree = exports.MsgSubmitChallengeReplyResponse = exports.MsgSubmitChallengeReply = exports.MsgSubmitChallengeCIDResponse = exports.MsgSubmitChallengeCID = exports.MsgDeleteExpiredSessionResponse = exports.MsgDeleteExpiredSession = exports.MsgSubmitPaymentResponse = exports.MsgSubmitPayment = exports.MsgRegisterSessionResponse = exports.MsgRegisterSession = exports.VRF = exports.MsgUpdateAgentModelResponse = exports.MsgUpdateAgentModel = exports.MsgRegisterAgentModelResponse = exports.MsgRegisterAgentModel = exports.MsgUpdateInferenceAgentResponse = exports.MsgUpdateInferenceAgent = exports.MsgRegisterInferenceAgentResponse = exports.MsgRegisterInferenceAgent = exports.MsgUpdateParamsResponse = exports.MsgUpdateParams = exports.protobufPackage = void 0; +exports.MsgClientImpl = exports.MsgSubmitChallengeOriginHashResponse = exports.MsgSubmitChallengeOriginHash = exports.MsgSubmitChallengeMerkleTreeResponse = exports.MsgSubmitChallengeMerkleTree = exports.MsgSubmitChallengeReplyResponse = exports.MsgSubmitChallengeReply = exports.MsgSubmitChallengeCIDResponse = exports.MsgSubmitChallengeCID = exports.MsgDeleteExpiredSessionResponse = exports.MsgDeleteExpiredSession = exports.MsgSubmitPaymentResponse = exports.MsgSubmitPayment = exports.MsgCancelSessionResponse = exports.MsgCancelSession = exports.MsgRegisterSessionResponse = exports.MsgRegisterSession = exports.VRF = exports.MsgUpdateAgentModelResponse = exports.MsgUpdateAgentModel = exports.MsgRegisterAgentModelResponse = exports.MsgRegisterAgentModel = exports.MsgUpdateInferenceAgentResponse = exports.MsgUpdateInferenceAgent = exports.MsgRegisterInferenceAgentResponse = exports.MsgRegisterInferenceAgent = exports.MsgUpdateParamsResponse = exports.MsgUpdateParams = exports.protobufPackage = void 0; /* eslint-disable */ const agent_1 = require("./agent"); const coin_1 = require("../../cosmos/base/v1beta1/coin"); -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); exports.protobufPackage = "agent.v1"; function createBaseMsgUpdateParams() { - return { authority: "", params: undefined }; + return { + authority: "", + params: agent_1.Params.fromPartial({}) + }; } exports.MsgUpdateParams = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgUpdateParams", + encode(message, writer = _m0.Writer.create()) { if (message.authority !== "") { writer.uint32(10).string(message.authority); } @@ -24,7 +48,7 @@ exports.MsgUpdateParams = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateParams(); while (reader.pos < end) { @@ -44,37 +68,38 @@ exports.MsgUpdateParams = { return message; }, fromJSON(object) { - return { - authority: isSet(object.authority) ? String(object.authority) : "", - params: isSet(object.params) ? agent_1.Params.fromJSON(object.params) : undefined, - }; + const obj = createBaseMsgUpdateParams(); + if ((0, helpers_1.isSet)(object.authority)) + obj.authority = String(object.authority); + if ((0, helpers_1.isSet)(object.params)) + obj.params = agent_1.Params.fromJSON(object.params); + return obj; }, toJSON(message) { const obj = {}; message.authority !== undefined && (obj.authority = message.authority); - message.params !== undefined && - (obj.params = message.params ? agent_1.Params.toJSON(message.params) : undefined); + message.params !== undefined && (obj.params = message.params ? agent_1.Params.toJSON(message.params) : undefined); return obj; }, fromPartial(object) { const message = createBaseMsgUpdateParams(); message.authority = object.authority ?? ""; - message.params = - object.params !== undefined && object.params !== null - ? agent_1.Params.fromPartial(object.params) - : undefined; + if (object.params !== undefined && object.params !== null) { + message.params = agent_1.Params.fromPartial(object.params); + } return message; - }, + } }; function createBaseMsgUpdateParamsResponse() { return {}; } exports.MsgUpdateParamsResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgUpdateParamsResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateParamsResponse(); while (reader.pos < end) { @@ -88,7 +113,8 @@ exports.MsgUpdateParamsResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgUpdateParamsResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -97,13 +123,18 @@ exports.MsgUpdateParamsResponse = { fromPartial(_) { const message = createBaseMsgUpdateParamsResponse(); return message; - }, + } }; function createBaseMsgRegisterInferenceAgent() { - return { account: "", url: "", version: long_1.default.UZERO }; + return { + account: "", + url: "", + version: helpers_1.Long.UZERO + }; } exports.MsgRegisterInferenceAgent = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgRegisterInferenceAgent", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -116,7 +147,7 @@ exports.MsgRegisterInferenceAgent = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgRegisterInferenceAgent(); while (reader.pos < end) { @@ -139,42 +170,42 @@ exports.MsgRegisterInferenceAgent = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - url: isSet(object.url) ? String(object.url) : "", - version: isSet(object.version) - ? long_1.default.fromValue(object.version) - : long_1.default.UZERO, - }; + const obj = createBaseMsgRegisterInferenceAgent(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.url)) + obj.url = String(object.url); + if ((0, helpers_1.isSet)(object.version)) + obj.version = helpers_1.Long.fromValue(object.version); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.url !== undefined && (obj.url = message.url); - message.version !== undefined && - (obj.version = (message.version || long_1.default.UZERO).toString()); + message.version !== undefined && (obj.version = (message.version || helpers_1.Long.UZERO).toString()); return obj; }, fromPartial(object) { const message = createBaseMsgRegisterInferenceAgent(); message.account = object.account ?? ""; message.url = object.url ?? ""; - message.version = - object.version !== undefined && object.version !== null - ? long_1.default.fromValue(object.version) - : long_1.default.UZERO; + if (object.version !== undefined && object.version !== null) { + message.version = helpers_1.Long.fromValue(object.version); + } return message; - }, + } }; function createBaseMsgRegisterInferenceAgentResponse() { return {}; } exports.MsgRegisterInferenceAgentResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgRegisterInferenceAgentResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgRegisterInferenceAgentResponse(); while (reader.pos < end) { @@ -188,7 +219,8 @@ exports.MsgRegisterInferenceAgentResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgRegisterInferenceAgentResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -197,29 +229,35 @@ exports.MsgRegisterInferenceAgentResponse = { fromPartial(_) { const message = createBaseMsgRegisterInferenceAgentResponse(); return message; - }, + } }; function createBaseMsgUpdateInferenceAgent() { - return { account: "", url: "", version: long_1.default.UZERO, status: 0 }; + return { + account: "", + url: undefined, + version: undefined, + status: undefined + }; } exports.MsgUpdateInferenceAgent = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgUpdateInferenceAgent", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } - if (message.url !== "") { + if (message.url !== undefined) { writer.uint32(18).string(message.url); } - if (!message.version.isZero()) { + if (message.version !== undefined) { writer.uint32(24).uint64(message.version); } - if (message.status !== 0) { + if (message.status !== undefined) { writer.uint32(32).int32(message.status); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateInferenceAgent(); while (reader.pos < end) { @@ -245,46 +283,48 @@ exports.MsgUpdateInferenceAgent = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - url: isSet(object.url) ? String(object.url) : "", - version: isSet(object.version) - ? long_1.default.fromValue(object.version) - : long_1.default.UZERO, - status: isSet(object.status) ? (0, agent_1.agentStatusFromJSON)(object.status) : 0, - }; + const obj = createBaseMsgUpdateInferenceAgent(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.url)) + obj.url = String(object.url); + if ((0, helpers_1.isSet)(object.version)) + obj.version = helpers_1.Long.fromValue(object.version); + if ((0, helpers_1.isSet)(object.status)) + obj.status = (0, agent_1.agentStatusFromJSON)(object.status); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.url !== undefined && (obj.url = message.url); - message.version !== undefined && - (obj.version = (message.version || long_1.default.UZERO).toString()); - message.status !== undefined && - (obj.status = (0, agent_1.agentStatusToJSON)(message.status)); + if (message.version !== undefined) { + obj.version = message.version.toString(); + } + message.status !== undefined && (obj.status = (0, agent_1.agentStatusToJSON)(message.status)); return obj; }, fromPartial(object) { const message = createBaseMsgUpdateInferenceAgent(); message.account = object.account ?? ""; - message.url = object.url ?? ""; - message.version = - object.version !== undefined && object.version !== null - ? long_1.default.fromValue(object.version) - : long_1.default.UZERO; - message.status = object.status ?? 0; + message.url = object.url ?? undefined; + if (object.version !== undefined && object.version !== null) { + message.version = helpers_1.Long.fromValue(object.version); + } + message.status = object.status ?? undefined; return message; - }, + } }; function createBaseMsgUpdateInferenceAgentResponse() { return {}; } exports.MsgUpdateInferenceAgentResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgUpdateInferenceAgentResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateInferenceAgentResponse(); while (reader.pos < end) { @@ -298,7 +338,8 @@ exports.MsgUpdateInferenceAgentResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgUpdateInferenceAgentResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -307,13 +348,18 @@ exports.MsgUpdateInferenceAgentResponse = { fromPartial(_) { const message = createBaseMsgUpdateInferenceAgentResponse(); return message; - }, + } }; function createBaseMsgRegisterAgentModel() { - return { account: "", modelName: [], lock: [] }; + return { + account: "", + modelName: [], + lock: [] + }; } exports.MsgRegisterAgentModel = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgRegisterAgentModel", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -328,7 +374,7 @@ exports.MsgRegisterAgentModel = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgRegisterAgentModel(); while (reader.pos < end) { @@ -359,27 +405,26 @@ exports.MsgRegisterAgentModel = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - modelName: Array.isArray(object?.modelName) - ? object.modelName.map((e) => String(e)) - : [], - lock: Array.isArray(object?.lock) - ? object.lock.map((e) => long_1.default.fromValue(e)) - : [], - }; + const obj = createBaseMsgRegisterAgentModel(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if (Array.isArray(object?.modelName)) + obj.modelName = object.modelName.map((e) => String(e)); + if (Array.isArray(object?.lock)) + obj.lock = object.lock.map((e) => helpers_1.Long.fromValue(e)); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); if (message.modelName) { - obj.modelName = message.modelName.map((e) => e); + obj.modelName = message.modelName.map(e => e); } else { obj.modelName = []; } if (message.lock) { - obj.lock = message.lock.map((e) => (e || long_1.default.UZERO).toString()); + obj.lock = message.lock.map(e => (e || helpers_1.Long.UZERO).toString()); } else { obj.lock = []; @@ -389,20 +434,21 @@ exports.MsgRegisterAgentModel = { fromPartial(object) { const message = createBaseMsgRegisterAgentModel(); message.account = object.account ?? ""; - message.modelName = object.modelName?.map((e) => e) || []; - message.lock = object.lock?.map((e) => long_1.default.fromValue(e)) || []; + message.modelName = object.modelName?.map(e => e) || []; + message.lock = object.lock?.map(e => helpers_1.Long.fromValue(e)) || []; return message; - }, + } }; function createBaseMsgRegisterAgentModelResponse() { return {}; } exports.MsgRegisterAgentModelResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgRegisterAgentModelResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgRegisterAgentModelResponse(); while (reader.pos < end) { @@ -416,7 +462,8 @@ exports.MsgRegisterAgentModelResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgRegisterAgentModelResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -425,13 +472,19 @@ exports.MsgRegisterAgentModelResponse = { fromPartial(_) { const message = createBaseMsgRegisterAgentModelResponse(); return message; - }, + } }; function createBaseMsgUpdateAgentModel() { - return { account: "", modelName: [], lock: [], status: 0 }; + return { + account: "", + modelName: [], + lock: [], + status: 0 + }; } exports.MsgUpdateAgentModel = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgUpdateAgentModel", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -449,7 +502,7 @@ exports.MsgUpdateAgentModel = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateAgentModel(); while (reader.pos < end) { @@ -483,56 +536,54 @@ exports.MsgUpdateAgentModel = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - modelName: Array.isArray(object?.modelName) - ? object.modelName.map((e) => String(e)) - : [], - lock: Array.isArray(object?.lock) - ? object.lock.map((e) => long_1.default.fromValue(e)) - : [], - status: isSet(object.status) - ? (0, agent_1.agentModelStatusFromJSON)(object.status) - : 0, - }; + const obj = createBaseMsgUpdateAgentModel(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if (Array.isArray(object?.modelName)) + obj.modelName = object.modelName.map((e) => String(e)); + if (Array.isArray(object?.lock)) + obj.lock = object.lock.map((e) => helpers_1.Long.fromValue(e)); + if ((0, helpers_1.isSet)(object.status)) + obj.status = (0, agent_1.agentModelStatusFromJSON)(object.status); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); if (message.modelName) { - obj.modelName = message.modelName.map((e) => e); + obj.modelName = message.modelName.map(e => e); } else { obj.modelName = []; } if (message.lock) { - obj.lock = message.lock.map((e) => (e || long_1.default.UZERO).toString()); + obj.lock = message.lock.map(e => (e || helpers_1.Long.UZERO).toString()); } else { obj.lock = []; } - message.status !== undefined && - (obj.status = (0, agent_1.agentModelStatusToJSON)(message.status)); + message.status !== undefined && (obj.status = (0, agent_1.agentModelStatusToJSON)(message.status)); return obj; }, fromPartial(object) { const message = createBaseMsgUpdateAgentModel(); message.account = object.account ?? ""; - message.modelName = object.modelName?.map((e) => e) || []; - message.lock = object.lock?.map((e) => long_1.default.fromValue(e)) || []; + message.modelName = object.modelName?.map(e => e) || []; + message.lock = object.lock?.map(e => helpers_1.Long.fromValue(e)) || []; message.status = object.status ?? 0; return message; - }, + } }; function createBaseMsgUpdateAgentModelResponse() { return {}; } exports.MsgUpdateAgentModelResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgUpdateAgentModelResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateAgentModelResponse(); while (reader.pos < end) { @@ -546,7 +597,8 @@ exports.MsgUpdateAgentModelResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgUpdateAgentModelResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -555,17 +607,18 @@ exports.MsgUpdateAgentModelResponse = { fromPartial(_) { const message = createBaseMsgUpdateAgentModelResponse(); return message; - }, + } }; function createBaseVRF() { return { seed: new Uint8Array(), proof: new Uint8Array(), - hashRandom: new Uint8Array(), + hashRandom: new Uint8Array() }; } exports.VRF = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.VRF", + encode(message, writer = _m0.Writer.create()) { if (message.seed.length !== 0) { writer.uint32(10).bytes(message.seed); } @@ -578,7 +631,7 @@ exports.VRF = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseVRF(); while (reader.pos < end) { @@ -601,26 +654,20 @@ exports.VRF = { return message; }, fromJSON(object) { - return { - seed: isSet(object.seed) - ? bytesFromBase64(object.seed) - : new Uint8Array(), - proof: isSet(object.proof) - ? bytesFromBase64(object.proof) - : new Uint8Array(), - hashRandom: isSet(object.hashRandom) - ? bytesFromBase64(object.hashRandom) - : new Uint8Array(), - }; + const obj = createBaseVRF(); + if ((0, helpers_1.isSet)(object.seed)) + obj.seed = (0, helpers_1.bytesFromBase64)(object.seed); + if ((0, helpers_1.isSet)(object.proof)) + obj.proof = (0, helpers_1.bytesFromBase64)(object.proof); + if ((0, helpers_1.isSet)(object.hashRandom)) + obj.hashRandom = (0, helpers_1.bytesFromBase64)(object.hashRandom); + return obj; }, toJSON(message) { const obj = {}; - message.seed !== undefined && - (obj.seed = base64FromBytes(message.seed !== undefined ? message.seed : new Uint8Array())); - message.proof !== undefined && - (obj.proof = base64FromBytes(message.proof !== undefined ? message.proof : new Uint8Array())); - message.hashRandom !== undefined && - (obj.hashRandom = base64FromBytes(message.hashRandom !== undefined ? message.hashRandom : new Uint8Array())); + message.seed !== undefined && (obj.seed = (0, helpers_1.base64FromBytes)(message.seed !== undefined ? message.seed : new Uint8Array())); + message.proof !== undefined && (obj.proof = (0, helpers_1.base64FromBytes)(message.proof !== undefined ? message.proof : new Uint8Array())); + message.hashRandom !== undefined && (obj.hashRandom = (0, helpers_1.base64FromBytes)(message.hashRandom !== undefined ? message.hashRandom : new Uint8Array())); return obj; }, fromPartial(object) { @@ -629,19 +676,21 @@ exports.VRF = { message.proof = object.proof ?? new Uint8Array(); message.hashRandom = object.hashRandom ?? new Uint8Array(); return message; - }, + } }; function createBaseMsgRegisterSession() { return { sessionId: "", account: "", modelName: "", - lockBalance: undefined, - vrf: undefined, + lockBalance: coin_1.Coin.fromPartial({}), + vrf: exports.VRF.fromPartial({}), + tokenPrice: agent_1.TokenPrice.fromPartial({}) }; } exports.MsgRegisterSession = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgRegisterSession", + encode(message, writer = _m0.Writer.create()) { if (message.sessionId !== "") { writer.uint32(10).string(message.sessionId); } @@ -657,10 +706,13 @@ exports.MsgRegisterSession = { if (message.vrf !== undefined) { exports.VRF.encode(message.vrf, writer.uint32(42).fork()).ldelim(); } + if (message.tokenPrice !== undefined) { + agent_1.TokenPrice.encode(message.tokenPrice, writer.uint32(50).fork()).ldelim(); + } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgRegisterSession(); while (reader.pos < end) { @@ -681,6 +733,9 @@ exports.MsgRegisterSession = { case 5: message.vrf = exports.VRF.decode(reader, reader.uint32()); break; + case 6: + message.tokenPrice = agent_1.TokenPrice.decode(reader, reader.uint32()); + break; default: reader.skipType(tag & 7); break; @@ -689,27 +744,29 @@ exports.MsgRegisterSession = { return message; }, fromJSON(object) { - return { - sessionId: isSet(object.sessionId) ? String(object.sessionId) : "", - account: isSet(object.account) ? String(object.account) : "", - modelName: isSet(object.modelName) ? String(object.modelName) : "", - lockBalance: isSet(object.lockBalance) - ? coin_1.Coin.fromJSON(object.lockBalance) - : undefined, - vrf: isSet(object.vrf) ? exports.VRF.fromJSON(object.vrf) : undefined, - }; + const obj = createBaseMsgRegisterSession(); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.lockBalance)) + obj.lockBalance = coin_1.Coin.fromJSON(object.lockBalance); + if ((0, helpers_1.isSet)(object.vrf)) + obj.vrf = exports.VRF.fromJSON(object.vrf); + if ((0, helpers_1.isSet)(object.tokenPrice)) + obj.tokenPrice = agent_1.TokenPrice.fromJSON(object.tokenPrice); + return obj; }, toJSON(message) { const obj = {}; message.sessionId !== undefined && (obj.sessionId = message.sessionId); message.account !== undefined && (obj.account = message.account); message.modelName !== undefined && (obj.modelName = message.modelName); - message.lockBalance !== undefined && - (obj.lockBalance = message.lockBalance - ? coin_1.Coin.toJSON(message.lockBalance) - : undefined); - message.vrf !== undefined && - (obj.vrf = message.vrf ? exports.VRF.toJSON(message.vrf) : undefined); + message.lockBalance !== undefined && (obj.lockBalance = message.lockBalance ? coin_1.Coin.toJSON(message.lockBalance) : undefined); + message.vrf !== undefined && (obj.vrf = message.vrf ? exports.VRF.toJSON(message.vrf) : undefined); + message.tokenPrice !== undefined && (obj.tokenPrice = message.tokenPrice ? agent_1.TokenPrice.toJSON(message.tokenPrice) : undefined); return obj; }, fromPartial(object) { @@ -717,22 +774,27 @@ exports.MsgRegisterSession = { message.sessionId = object.sessionId ?? ""; message.account = object.account ?? ""; message.modelName = object.modelName ?? ""; - message.lockBalance = - object.lockBalance !== undefined && object.lockBalance !== null - ? coin_1.Coin.fromPartial(object.lockBalance) - : undefined; - message.vrf = - object.vrf !== undefined && object.vrf !== null - ? exports.VRF.fromPartial(object.vrf) - : undefined; + if (object.lockBalance !== undefined && object.lockBalance !== null) { + message.lockBalance = coin_1.Coin.fromPartial(object.lockBalance); + } + if (object.vrf !== undefined && object.vrf !== null) { + message.vrf = exports.VRF.fromPartial(object.vrf); + } + if (object.tokenPrice !== undefined && object.tokenPrice !== null) { + message.tokenPrice = agent_1.TokenPrice.fromPartial(object.tokenPrice); + } return message; - }, + } }; function createBaseMsgRegisterSessionResponse() { - return { account: "", modelName: "" }; + return { + account: "", + modelName: "" + }; } exports.MsgRegisterSessionResponse = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgRegisterSessionResponse", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -742,7 +804,7 @@ exports.MsgRegisterSessionResponse = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgRegisterSessionResponse(); while (reader.pos < end) { @@ -762,10 +824,12 @@ exports.MsgRegisterSessionResponse = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - modelName: isSet(object.modelName) ? String(object.modelName) : "", - }; + const obj = createBaseMsgRegisterSessionResponse(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + return obj; }, toJSON(message) { const obj = {}; @@ -778,18 +842,112 @@ exports.MsgRegisterSessionResponse = { message.account = object.account ?? ""; message.modelName = object.modelName ?? ""; return message; + } +}; +function createBaseMsgCancelSession() { + return { + sessionId: "", + account: "" + }; +} +exports.MsgCancelSession = { + typeUrl: "/agent.v1.MsgCancelSession", + encode(message, writer = _m0.Writer.create()) { + if (message.sessionId !== "") { + writer.uint32(10).string(message.sessionId); + } + if (message.account !== "") { + writer.uint32(18).string(message.account); + } + return writer; }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgCancelSession(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sessionId = reader.string(); + break; + case 2: + message.account = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgCancelSession(); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + return obj; + }, + toJSON(message) { + const obj = {}; + message.sessionId !== undefined && (obj.sessionId = message.sessionId); + message.account !== undefined && (obj.account = message.account); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgCancelSession(); + message.sessionId = object.sessionId ?? ""; + message.account = object.account ?? ""; + return message; + } +}; +function createBaseMsgCancelSessionResponse() { + return {}; +} +exports.MsgCancelSessionResponse = { + typeUrl: "/agent.v1.MsgCancelSessionResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgCancelSessionResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgCancelSessionResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgCancelSessionResponse(); + return message; + } }; function createBaseMsgSubmitPayment() { return { account: "", sessionId: "", payment: undefined, - signature: new Uint8Array(), + signature: new Uint8Array() }; } exports.MsgSubmitPayment = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitPayment", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -805,7 +963,7 @@ exports.MsgSubmitPayment = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitPayment(); while (reader.pos < end) { @@ -831,50 +989,46 @@ exports.MsgSubmitPayment = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - sessionId: isSet(object.sessionId) ? String(object.sessionId) : "", - payment: isSet(object.payment) - ? agent_1.Payment.fromJSON(object.payment) - : undefined, - signature: isSet(object.signature) - ? bytesFromBase64(object.signature) - : new Uint8Array(), - }; + const obj = createBaseMsgSubmitPayment(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.payment)) + obj.payment = agent_1.Payment.fromJSON(object.payment); + if ((0, helpers_1.isSet)(object.signature)) + obj.signature = (0, helpers_1.bytesFromBase64)(object.signature); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.sessionId !== undefined && (obj.sessionId = message.sessionId); - message.payment !== undefined && - (obj.payment = message.payment - ? agent_1.Payment.toJSON(message.payment) - : undefined); - message.signature !== undefined && - (obj.signature = base64FromBytes(message.signature !== undefined ? message.signature : new Uint8Array())); + message.payment !== undefined && (obj.payment = message.payment ? agent_1.Payment.toJSON(message.payment) : undefined); + message.signature !== undefined && (obj.signature = (0, helpers_1.base64FromBytes)(message.signature !== undefined ? message.signature : new Uint8Array())); return obj; }, fromPartial(object) { const message = createBaseMsgSubmitPayment(); message.account = object.account ?? ""; message.sessionId = object.sessionId ?? ""; - message.payment = - object.payment !== undefined && object.payment !== null - ? agent_1.Payment.fromPartial(object.payment) - : undefined; + if (object.payment !== undefined && object.payment !== null) { + message.payment = agent_1.Payment.fromPartial(object.payment); + } message.signature = object.signature ?? new Uint8Array(); return message; - }, + } }; function createBaseMsgSubmitPaymentResponse() { return {}; } exports.MsgSubmitPaymentResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitPaymentResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitPaymentResponse(); while (reader.pos < end) { @@ -888,7 +1042,8 @@ exports.MsgSubmitPaymentResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgSubmitPaymentResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -897,13 +1052,17 @@ exports.MsgSubmitPaymentResponse = { fromPartial(_) { const message = createBaseMsgSubmitPaymentResponse(); return message; - }, + } }; function createBaseMsgDeleteExpiredSession() { - return { account: "", sessionId: "" }; + return { + account: "", + sessionId: "" + }; } exports.MsgDeleteExpiredSession = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgDeleteExpiredSession", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -913,7 +1072,7 @@ exports.MsgDeleteExpiredSession = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgDeleteExpiredSession(); while (reader.pos < end) { @@ -933,10 +1092,12 @@ exports.MsgDeleteExpiredSession = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - sessionId: isSet(object.sessionId) ? String(object.sessionId) : "", - }; + const obj = createBaseMsgDeleteExpiredSession(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + return obj; }, toJSON(message) { const obj = {}; @@ -949,17 +1110,18 @@ exports.MsgDeleteExpiredSession = { message.account = object.account ?? ""; message.sessionId = object.sessionId ?? ""; return message; - }, + } }; function createBaseMsgDeleteExpiredSessionResponse() { return {}; } exports.MsgDeleteExpiredSessionResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgDeleteExpiredSessionResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgDeleteExpiredSessionResponse(); while (reader.pos < end) { @@ -973,7 +1135,8 @@ exports.MsgDeleteExpiredSessionResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgDeleteExpiredSessionResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -982,13 +1145,18 @@ exports.MsgDeleteExpiredSessionResponse = { fromPartial(_) { const message = createBaseMsgDeleteExpiredSessionResponse(); return message; - }, + } }; function createBaseMsgSubmitChallengeCID() { - return { account: "", sessionId: "", cid: "" }; + return { + account: "", + sessionId: "", + cid: "" + }; } exports.MsgSubmitChallengeCID = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitChallengeCID", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -1001,7 +1169,7 @@ exports.MsgSubmitChallengeCID = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitChallengeCID(); while (reader.pos < end) { @@ -1024,11 +1192,14 @@ exports.MsgSubmitChallengeCID = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - sessionId: isSet(object.sessionId) ? String(object.sessionId) : "", - cid: isSet(object.cid) ? String(object.cid) : "", - }; + const obj = createBaseMsgSubmitChallengeCID(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.cid)) + obj.cid = String(object.cid); + return obj; }, toJSON(message) { const obj = {}; @@ -1043,17 +1214,18 @@ exports.MsgSubmitChallengeCID = { message.sessionId = object.sessionId ?? ""; message.cid = object.cid ?? ""; return message; - }, + } }; function createBaseMsgSubmitChallengeCIDResponse() { return {}; } exports.MsgSubmitChallengeCIDResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitChallengeCIDResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitChallengeCIDResponse(); while (reader.pos < end) { @@ -1067,7 +1239,8 @@ exports.MsgSubmitChallengeCIDResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgSubmitChallengeCIDResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -1076,13 +1249,18 @@ exports.MsgSubmitChallengeCIDResponse = { fromPartial(_) { const message = createBaseMsgSubmitChallengeCIDResponse(); return message; - }, + } }; function createBaseMsgSubmitChallengeReply() { - return { account: "", sessionId: "", hash: new Uint8Array() }; + return { + account: "", + sessionId: "", + hash: new Uint8Array() + }; } exports.MsgSubmitChallengeReply = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitChallengeReply", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -1095,7 +1273,7 @@ exports.MsgSubmitChallengeReply = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitChallengeReply(); while (reader.pos < end) { @@ -1118,20 +1296,20 @@ exports.MsgSubmitChallengeReply = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - sessionId: isSet(object.sessionId) ? String(object.sessionId) : "", - hash: isSet(object.hash) - ? bytesFromBase64(object.hash) - : new Uint8Array(), - }; + const obj = createBaseMsgSubmitChallengeReply(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.hash)) + obj.hash = (0, helpers_1.bytesFromBase64)(object.hash); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.sessionId !== undefined && (obj.sessionId = message.sessionId); - message.hash !== undefined && - (obj.hash = base64FromBytes(message.hash !== undefined ? message.hash : new Uint8Array())); + message.hash !== undefined && (obj.hash = (0, helpers_1.base64FromBytes)(message.hash !== undefined ? message.hash : new Uint8Array())); return obj; }, fromPartial(object) { @@ -1140,17 +1318,18 @@ exports.MsgSubmitChallengeReply = { message.sessionId = object.sessionId ?? ""; message.hash = object.hash ?? new Uint8Array(); return message; - }, + } }; function createBaseMsgSubmitChallengeReplyResponse() { return {}; } exports.MsgSubmitChallengeReplyResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitChallengeReplyResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitChallengeReplyResponse(); while (reader.pos < end) { @@ -1164,7 +1343,8 @@ exports.MsgSubmitChallengeReplyResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgSubmitChallengeReplyResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -1173,18 +1353,19 @@ exports.MsgSubmitChallengeReplyResponse = { fromPartial(_) { const message = createBaseMsgSubmitChallengeReplyResponse(); return message; - }, + } }; function createBaseMsgSubmitChallengeMerkleTree() { return { account: "", sessionId: "", answerHash: new Uint8Array(), - merkleTree: [], + merkleTree: [] }; } exports.MsgSubmitChallengeMerkleTree = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitChallengeMerkleTree", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -1200,7 +1381,7 @@ exports.MsgSubmitChallengeMerkleTree = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitChallengeMerkleTree(); while (reader.pos < end) { @@ -1226,25 +1407,24 @@ exports.MsgSubmitChallengeMerkleTree = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - sessionId: isSet(object.sessionId) ? String(object.sessionId) : "", - answerHash: isSet(object.answerHash) - ? bytesFromBase64(object.answerHash) - : new Uint8Array(), - merkleTree: Array.isArray(object?.merkleTree) - ? object.merkleTree.map((e) => bytesFromBase64(e)) - : [], - }; + const obj = createBaseMsgSubmitChallengeMerkleTree(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.answerHash)) + obj.answerHash = (0, helpers_1.bytesFromBase64)(object.answerHash); + if (Array.isArray(object?.merkleTree)) + obj.merkleTree = object.merkleTree.map((e) => (0, helpers_1.bytesFromBase64)(e)); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.sessionId !== undefined && (obj.sessionId = message.sessionId); - message.answerHash !== undefined && - (obj.answerHash = base64FromBytes(message.answerHash !== undefined ? message.answerHash : new Uint8Array())); + message.answerHash !== undefined && (obj.answerHash = (0, helpers_1.base64FromBytes)(message.answerHash !== undefined ? message.answerHash : new Uint8Array())); if (message.merkleTree) { - obj.merkleTree = message.merkleTree.map((e) => base64FromBytes(e !== undefined ? e : new Uint8Array())); + obj.merkleTree = message.merkleTree.map(e => (0, helpers_1.base64FromBytes)(e !== undefined ? e : new Uint8Array())); } else { obj.merkleTree = []; @@ -1256,19 +1436,20 @@ exports.MsgSubmitChallengeMerkleTree = { message.account = object.account ?? ""; message.sessionId = object.sessionId ?? ""; message.answerHash = object.answerHash ?? new Uint8Array(); - message.merkleTree = object.merkleTree?.map((e) => e) || []; + message.merkleTree = object.merkleTree?.map(e => e) || []; return message; - }, + } }; function createBaseMsgSubmitChallengeMerkleTreeResponse() { return {}; } exports.MsgSubmitChallengeMerkleTreeResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitChallengeMerkleTreeResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitChallengeMerkleTreeResponse(); while (reader.pos < end) { @@ -1282,7 +1463,8 @@ exports.MsgSubmitChallengeMerkleTreeResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgSubmitChallengeMerkleTreeResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -1291,13 +1473,18 @@ exports.MsgSubmitChallengeMerkleTreeResponse = { fromPartial(_) { const message = createBaseMsgSubmitChallengeMerkleTreeResponse(); return message; - }, + } }; function createBaseMsgSubmitChallengeOriginHash() { - return { account: "", sessionId: "", hash: new Uint8Array() }; + return { + account: "", + sessionId: "", + hash: new Uint8Array() + }; } exports.MsgSubmitChallengeOriginHash = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitChallengeOriginHash", + encode(message, writer = _m0.Writer.create()) { if (message.account !== "") { writer.uint32(10).string(message.account); } @@ -1310,7 +1497,7 @@ exports.MsgSubmitChallengeOriginHash = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitChallengeOriginHash(); while (reader.pos < end) { @@ -1333,20 +1520,20 @@ exports.MsgSubmitChallengeOriginHash = { return message; }, fromJSON(object) { - return { - account: isSet(object.account) ? String(object.account) : "", - sessionId: isSet(object.sessionId) ? String(object.sessionId) : "", - hash: isSet(object.hash) - ? bytesFromBase64(object.hash) - : new Uint8Array(), - }; + const obj = createBaseMsgSubmitChallengeOriginHash(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.sessionId)) + obj.sessionId = String(object.sessionId); + if ((0, helpers_1.isSet)(object.hash)) + obj.hash = (0, helpers_1.bytesFromBase64)(object.hash); + return obj; }, toJSON(message) { const obj = {}; message.account !== undefined && (obj.account = message.account); message.sessionId !== undefined && (obj.sessionId = message.sessionId); - message.hash !== undefined && - (obj.hash = base64FromBytes(message.hash !== undefined ? message.hash : new Uint8Array())); + message.hash !== undefined && (obj.hash = (0, helpers_1.base64FromBytes)(message.hash !== undefined ? message.hash : new Uint8Array())); return obj; }, fromPartial(object) { @@ -1355,17 +1542,18 @@ exports.MsgSubmitChallengeOriginHash = { message.sessionId = object.sessionId ?? ""; message.hash = object.hash ?? new Uint8Array(); return message; - }, + } }; function createBaseMsgSubmitChallengeOriginHashResponse() { return {}; } exports.MsgSubmitChallengeOriginHashResponse = { - encode(_, writer = minimal_1.default.Writer.create()) { + typeUrl: "/agent.v1.MsgSubmitChallengeOriginHashResponse", + encode(_, writer = _m0.Writer.create()) { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitChallengeOriginHashResponse(); while (reader.pos < end) { @@ -1379,7 +1567,8 @@ exports.MsgSubmitChallengeOriginHashResponse = { return message; }, fromJSON(_) { - return {}; + const obj = createBaseMsgSubmitChallengeOriginHashResponse(); + return obj; }, toJSON(_) { const obj = {}; @@ -1388,7 +1577,7 @@ exports.MsgSubmitChallengeOriginHashResponse = { fromPartial(_) { const message = createBaseMsgSubmitChallengeOriginHashResponse(); return message; - }, + } }; class MsgClientImpl { constructor(rpc) { @@ -1399,6 +1588,7 @@ class MsgClientImpl { this.RegisterAgentModel = this.RegisterAgentModel.bind(this); this.UpdateAgentModel = this.UpdateAgentModel.bind(this); this.RegisterSession = this.RegisterSession.bind(this); + this.CancelSession = this.CancelSession.bind(this); this.SubmitPayment = this.SubmitPayment.bind(this); this.DeleteExpiredSession = this.DeleteExpiredSession.bind(this); this.SubmitChallengeCID = this.SubmitChallengeCID.bind(this); @@ -1409,106 +1599,68 @@ class MsgClientImpl { UpdateParams(request) { const data = exports.MsgUpdateParams.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "UpdateParams", data); - return promise.then((data) => exports.MsgUpdateParamsResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgUpdateParamsResponse.decode(new _m0.Reader(data))); } RegisterInferenceAgent(request) { const data = exports.MsgRegisterInferenceAgent.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "RegisterInferenceAgent", data); - return promise.then((data) => exports.MsgRegisterInferenceAgentResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgRegisterInferenceAgentResponse.decode(new _m0.Reader(data))); } UpdateInferenceAgent(request) { const data = exports.MsgUpdateInferenceAgent.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "UpdateInferenceAgent", data); - return promise.then((data) => exports.MsgUpdateInferenceAgentResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgUpdateInferenceAgentResponse.decode(new _m0.Reader(data))); } RegisterAgentModel(request) { const data = exports.MsgRegisterAgentModel.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "RegisterAgentModel", data); - return promise.then((data) => exports.MsgRegisterAgentModelResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgRegisterAgentModelResponse.decode(new _m0.Reader(data))); } UpdateAgentModel(request) { const data = exports.MsgUpdateAgentModel.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "UpdateAgentModel", data); - return promise.then((data) => exports.MsgUpdateAgentModelResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgUpdateAgentModelResponse.decode(new _m0.Reader(data))); } RegisterSession(request) { const data = exports.MsgRegisterSession.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "RegisterSession", data); - return promise.then((data) => exports.MsgRegisterSessionResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgRegisterSessionResponse.decode(new _m0.Reader(data))); + } + CancelSession(request) { + const data = exports.MsgCancelSession.encode(request).finish(); + const promise = this.rpc.request("agent.v1.Msg", "CancelSession", data); + return promise.then(data => exports.MsgCancelSessionResponse.decode(new _m0.Reader(data))); } SubmitPayment(request) { const data = exports.MsgSubmitPayment.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "SubmitPayment", data); - return promise.then((data) => exports.MsgSubmitPaymentResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgSubmitPaymentResponse.decode(new _m0.Reader(data))); } DeleteExpiredSession(request) { const data = exports.MsgDeleteExpiredSession.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "DeleteExpiredSession", data); - return promise.then((data) => exports.MsgDeleteExpiredSessionResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgDeleteExpiredSessionResponse.decode(new _m0.Reader(data))); } SubmitChallengeCID(request) { const data = exports.MsgSubmitChallengeCID.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "SubmitChallengeCID", data); - return promise.then((data) => exports.MsgSubmitChallengeCIDResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgSubmitChallengeCIDResponse.decode(new _m0.Reader(data))); } SubmitChallengeReply(request) { const data = exports.MsgSubmitChallengeReply.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "SubmitChallengeReply", data); - return promise.then((data) => exports.MsgSubmitChallengeReplyResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgSubmitChallengeReplyResponse.decode(new _m0.Reader(data))); } SubmitChallengeMerkleTree(request) { const data = exports.MsgSubmitChallengeMerkleTree.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "SubmitChallengeMerkleTree", data); - return promise.then((data) => exports.MsgSubmitChallengeMerkleTreeResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgSubmitChallengeMerkleTreeResponse.decode(new _m0.Reader(data))); } SubmitChallengeOriginHash(request) { const data = exports.MsgSubmitChallengeOriginHash.encode(request).finish(); const promise = this.rpc.request("agent.v1.Msg", "SubmitChallengeOriginHash", data); - return promise.then((data) => exports.MsgSubmitChallengeOriginHashResponse.decode(new minimal_1.default.Reader(data))); + return promise.then(data => exports.MsgSubmitChallengeOriginHashResponse.decode(new _m0.Reader(data))); } } exports.MsgClientImpl = MsgClientImpl; -var globalThis = (() => { - if (typeof globalThis !== "undefined") - return globalThis; - if (typeof self !== "undefined") - return self; - if (typeof window !== "undefined") - return window; - if (typeof global !== "undefined") - return global; - throw "Unable to locate global object"; -})(); -function bytesFromBase64(b64) { - if (globalThis.Buffer) { - return Uint8Array.from(globalThis.Buffer.from(b64, "base64")); - } - else { - const bin = globalThis.atob(b64); - const arr = new Uint8Array(bin.length); - for (let i = 0; i < bin.length; ++i) { - arr[i] = bin.charCodeAt(i); - } - return arr; - } -} -function base64FromBytes(arr) { - if (globalThis.Buffer) { - return globalThis.Buffer.from(arr).toString("base64"); - } - else { - const bin = []; - arr.forEach((byte) => { - bin.push(String.fromCharCode(byte)); - }); - return globalThis.btoa(bin.join("")); - } -} -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvYWdlbnQvdjEvdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLG1DQVNpQjtBQUNqQix5REFBc0Q7QUFDdEQsZ0RBQXdCO0FBQ3hCLGlFQUFxQztBQUV4QixRQUFBLGVBQWUsR0FBRyxVQUFVLENBQUM7QUErRzFDLFNBQVMseUJBQXlCO0lBQ2hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQztBQUM5QyxDQUFDO0FBRVksUUFBQSxlQUFlLEdBQUc7SUFDN0IsTUFBTSxDQUNKLE9BQXdCLEVBQ3hCLFNBQXFCLGlCQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUV4QyxJQUFJLE9BQU8sQ0FBQyxTQUFTLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakMsY0FBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNuRSxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUE4QixFQUFFLE1BQWU7UUFDcEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxZQUFZLGlCQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksaUJBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0UsSUFBSSxHQUFH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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvYWdlbnQvdjEvdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsbUNBQStLO0FBQy9LLHlEQUFzRDtBQUN0RCwyQ0FBdUc7QUFDdkcsd0RBQTBDO0FBRTdCLFFBQUEsZUFBZSxHQUFHLFVBQVUsQ0FBQztBQTJGMUMsU0FBUyx5QkFBeUI7SUFDaEMsT0FBTztRQUNMLFNBQVMsRUFBRSxFQUFFO1FBQ2IsTUFBTSxFQUFFLGNBQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO0tBQy9CLENBQUM7QUFDSixDQUFDO0FBQ1ksUUFBQSxlQUFlLEdBQUc7SUFDN0IsT0FBTyxFQUFFLDJCQUEyQjtJQUNwQyxNQUFNLENBQUMsT0FBd0IsRUFBRSxTQUFxQixHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUN2RSxJQUFJLE9BQU8sQ0FBQyxTQUFTLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakMsY0FBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNuRSxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUNELE1BQU0sQ0FBQyxLQUE4QixFQUFFLE1BQWU7UUFDcEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxZQUFZLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxD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 \ No newline at end of file diff --git a/dist/codec/amino/amino.d.ts b/dist/codec/amino/amino.d.ts index dbf887c..cb0ff5c 100644 --- a/dist/codec/amino/amino.d.ts +++ b/dist/codec/amino/amino.d.ts @@ -1 +1 @@ -export declare const protobufPackage = "amino"; +export {}; diff --git a/dist/codec/amino/amino.js b/dist/codec/amino/amino.js index 80bcd65..17bba78 100644 --- a/dist/codec/amino/amino.js +++ b/dist/codec/amino/amino.js @@ -1,6 +1,3 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.protobufPackage = void 0; -/* eslint-disable */ -exports.protobufPackage = "amino"; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1pbm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29kZWMvYW1pbm8vYW1pbm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsb0JBQW9CO0FBQ1AsUUFBQSxlQUFlLEdBQUcsT0FBTyxDQUFDIn0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1pbm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29kZWMvYW1pbm8vYW1pbm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9 \ No newline at end of file diff --git a/dist/codec/cosmos/app/v1alpha1/module.d.ts b/dist/codec/cosmos/app/v1alpha1/module.d.ts index 08ccee6..e8dda0c 100644 --- a/dist/codec/cosmos/app/v1alpha1/module.d.ts +++ b/dist/codec/cosmos/app/v1alpha1/module.d.ts @@ -1,5 +1,5 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../../json-safe"; export declare const protobufPackage = "cosmos.app.v1alpha1"; /** ModuleDescriptor describes an app module. */ export interface ModuleDescriptor { @@ -82,10 +82,11 @@ export interface MigrateFromInfo { module: string; } export declare const ModuleDescriptor: { + typeUrl: string; encode(message: ModuleDescriptor, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ModuleDescriptor; fromJSON(object: any): ModuleDescriptor; - toJSON(message: ModuleDescriptor): unknown; + toJSON(message: ModuleDescriptor): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; canMigrateFrom?: ({ module?: string | undefined; }[] & ({ module?: string | undefined; } & { module?: string | undefined; - } & { [K_2 in Exclude]: never; })[] & { [K_3 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_4 in Exclude]: never; }>(object: I): ModuleDescriptor; + }[]>, never>) | undefined; + } & Record, never>>(object: I): ModuleDescriptor; }; export declare const PackageReference: { + typeUrl: string; encode(message: PackageReference, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PackageReference; fromJSON(object: any): PackageReference; - toJSON(message: PackageReference): unknown; + toJSON(message: PackageReference): JsonSafe; fromPartial]: never; }>(object: I): PackageReference; + } & Record, never>>(object: I): PackageReference; }; export declare const MigrateFromInfo: { + typeUrl: string; encode(message: MigrateFromInfo, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MigrateFromInfo; fromJSON(object: any): MigrateFromInfo; - toJSON(message: MigrateFromInfo): unknown; + toJSON(message: MigrateFromInfo): JsonSafe; fromPartial]: never; }>(object: I): MigrateFromInfo; + } & Record, never>>(object: I): MigrateFromInfo; }; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; -}; -export {}; diff --git a/dist/codec/cosmos/app/v1alpha1/module.js b/dist/codec/cosmos/app/v1alpha1/module.js index ead40f6..0d17319 100644 --- a/dist/codec/cosmos/app/v1alpha1/module.js +++ b/dist/codec/cosmos/app/v1alpha1/module.js @@ -1,18 +1,43 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.MigrateFromInfo = exports.PackageReference = exports.ModuleDescriptor = exports.protobufPackage = void 0; /* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../../helpers"); exports.protobufPackage = "cosmos.app.v1alpha1"; function createBaseModuleDescriptor() { - return { goImport: "", usePackage: [], canMigrateFrom: [] }; + return { + goImport: "", + usePackage: [], + canMigrateFrom: [] + }; } exports.ModuleDescriptor = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/cosmos.app.v1alpha1.ModuleDescriptor", + encode(message, writer = _m0.Writer.create()) { if (message.goImport !== "") { writer.uint32(10).string(message.goImport); } @@ -25,7 +50,7 @@ exports.ModuleDescriptor = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseModuleDescriptor(); while (reader.pos < end) { @@ -48,27 +73,26 @@ exports.ModuleDescriptor = { return message; }, fromJSON(object) { - return { - goImport: isSet(object.goImport) ? String(object.goImport) : "", - usePackage: Array.isArray(object?.usePackage) - ? object.usePackage.map((e) => exports.PackageReference.fromJSON(e)) - : [], - canMigrateFrom: Array.isArray(object?.canMigrateFrom) - ? object.canMigrateFrom.map((e) => exports.MigrateFromInfo.fromJSON(e)) - : [], - }; + const obj = createBaseModuleDescriptor(); + if ((0, helpers_1.isSet)(object.goImport)) + obj.goImport = String(object.goImport); + if (Array.isArray(object?.usePackage)) + obj.usePackage = object.usePackage.map((e) => exports.PackageReference.fromJSON(e)); + if (Array.isArray(object?.canMigrateFrom)) + obj.canMigrateFrom = object.canMigrateFrom.map((e) => exports.MigrateFromInfo.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; message.goImport !== undefined && (obj.goImport = message.goImport); if (message.usePackage) { - obj.usePackage = message.usePackage.map((e) => e ? exports.PackageReference.toJSON(e) : undefined); + obj.usePackage = message.usePackage.map(e => e ? exports.PackageReference.toJSON(e) : undefined); } else { obj.usePackage = []; } if (message.canMigrateFrom) { - obj.canMigrateFrom = message.canMigrateFrom.map((e) => e ? exports.MigrateFromInfo.toJSON(e) : undefined); + obj.canMigrateFrom = message.canMigrateFrom.map(e => e ? exports.MigrateFromInfo.toJSON(e) : undefined); } else { obj.canMigrateFrom = []; @@ -78,18 +102,20 @@ exports.ModuleDescriptor = { fromPartial(object) { const message = createBaseModuleDescriptor(); message.goImport = object.goImport ?? ""; - message.usePackage = - object.usePackage?.map((e) => exports.PackageReference.fromPartial(e)) || []; - message.canMigrateFrom = - object.canMigrateFrom?.map((e) => exports.MigrateFromInfo.fromPartial(e)) || []; + message.usePackage = object.usePackage?.map(e => exports.PackageReference.fromPartial(e)) || []; + message.canMigrateFrom = object.canMigrateFrom?.map(e => exports.MigrateFromInfo.fromPartial(e)) || []; return message; - }, + } }; function createBasePackageReference() { - return { name: "", revision: 0 }; + return { + name: "", + revision: 0 + }; } exports.PackageReference = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/cosmos.app.v1alpha1.PackageReference", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -99,7 +125,7 @@ exports.PackageReference = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePackageReference(); while (reader.pos < end) { @@ -119,16 +145,17 @@ exports.PackageReference = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - revision: isSet(object.revision) ? Number(object.revision) : 0, - }; + const obj = createBasePackageReference(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if ((0, helpers_1.isSet)(object.revision)) + obj.revision = Number(object.revision); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); - message.revision !== undefined && - (obj.revision = Math.round(message.revision)); + message.revision !== undefined && (obj.revision = Math.round(message.revision)); return obj; }, fromPartial(object) { @@ -136,20 +163,23 @@ exports.PackageReference = { message.name = object.name ?? ""; message.revision = object.revision ?? 0; return message; - }, + } }; function createBaseMigrateFromInfo() { - return { module: "" }; + return { + module: "" + }; } exports.MigrateFromInfo = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/cosmos.app.v1alpha1.MigrateFromInfo", + encode(message, writer = _m0.Writer.create()) { if (message.module !== "") { writer.uint32(10).string(message.module); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMigrateFromInfo(); while (reader.pos < end) { @@ -166,9 +196,10 @@ exports.MigrateFromInfo = { return message; }, fromJSON(object) { - return { - module: isSet(object.module) ? String(object.module) : "", - }; + const obj = createBaseMigrateFromInfo(); + if ((0, helpers_1.isSet)(object.module)) + obj.module = String(object.module); + return obj; }, toJSON(message) { const obj = {}; @@ -179,13 +210,6 @@ exports.MigrateFromInfo = { const message = createBaseMigrateFromInfo(); message.module = object.module ?? ""; return message; - }, + } }; -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2Nvc21vcy9hcHAvdjFhbHBoYTEvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQixnREFBd0I7QUFDeEIsaUVBQXFDO0FBRXhCLFFBQUEsZUFBZSxHQUFHLHFCQUFxQixDQUFDO0FBcUZyRCxTQUFTLDBCQUEwQjtJQUNqQyxPQUFPLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRSxFQUFFLEVBQUUsQ0FBQztBQUM5RCxDQUFDO0FBRVksUUFBQSxnQkFBZ0IsR0FBRztJQUM5QixNQUFNLENBQ0osT0FBeUIsRUFDekIsU0FBcUIsaUJBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBRXhDLElBQUksT0FBTyxDQUFDLFFBQVEsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUM1QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0MsQ0FBQztRQUNELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ25DLHdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFFLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pFLENBQUM7UUFDRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2Qyx1QkFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFFLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hFLENBQUM7UUFDRCxPQUFPLE1BQU0s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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2Nvc21vcy9hcHAvdjFhbHBoYTEvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLHdEQUEwQztBQUMxQyw4Q0FBNkQ7QUFFaEQsUUFBQSxlQUFlLEdBQUcscUJBQXFCLENBQUM7QUFpRnJELFNBQVMsMEJBQTBCO0lBQ2pDLE9BQU87UUFDTCxRQUFRLEVBQUUsRUFBRTtRQUNaLFVBQVUsRUFBRSxFQUFFO1FBQ2QsY0FBYyxFQUFFLEVBQUU7S0FDbkIsQ0FBQztBQUNKLENBQUM7QUFDWSxRQUFBLGdCQUFnQixHQUFHO0lBQzlCLE9BQU8sRUFBRSx1Q0FBdUM7SUFDaEQsTUFBTSxDQUFDLE9BQXlCLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDeEUsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQ0QsS0FBSyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbkMsd0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUUsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakUsQ0FBQztRQUNELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZDLHVCQUFlLENBQUMsTUFBTSxDQUFDLENBQUUsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMs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 \ No newline at end of file diff --git a/dist/codec/cosmos/bank/v1beta1/authz.d.ts b/dist/codec/cosmos/bank/v1beta1/authz.d.ts new file mode 100644 index 0000000..31352a5 --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/authz.d.ts @@ -0,0 +1,38 @@ +import { Coin } from "../../base/v1beta1/coin"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../../json-safe"; +export declare const protobufPackage = "cosmos.bank.v1beta1"; +/** + * SendAuthorization allows the grantee to spend up to spend_limit coins from + * the granter's account. + */ +export interface SendAuthorization { + spendLimit: Coin[]; +} +export declare const SendAuthorization: { + typeUrl: string; + encode(message: SendAuthorization, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): SendAuthorization; + fromJSON(object: any): SendAuthorization; + toJSON(message: SendAuthorization): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): SendAuthorization; +}; diff --git a/dist/codec/cosmos/bank/v1beta1/authz.js b/dist/codec/cosmos/bank/v1beta1/authz.js new file mode 100644 index 0000000..9b161b9 --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/authz.js @@ -0,0 +1,83 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SendAuthorization = exports.protobufPackage = void 0; +/* eslint-disable */ +const coin_1 = require("../../base/v1beta1/coin"); +const _m0 = __importStar(require("protobufjs/minimal")); +exports.protobufPackage = "cosmos.bank.v1beta1"; +function createBaseSendAuthorization() { + return { + spendLimit: [] + }; +} +exports.SendAuthorization = { + typeUrl: "/cosmos.bank.v1beta1.SendAuthorization", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.spendLimit) { + coin_1.Coin.encode(v, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSendAuthorization(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.spendLimit.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseSendAuthorization(); + if (Array.isArray(object?.spendLimit)) + obj.spendLimit = object.spendLimit.map((e) => coin_1.Coin.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.spendLimit) { + obj.spendLimit = message.spendLimit.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.spendLimit = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseSendAuthorization(); + message.spendLimit = object.spendLimit?.map(e => coin_1.Coin.fromPartial(e)) || []; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aHouanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29kZWMvY29zbW9zL2JhbmsvdjFiZXRhMS9hdXRoei50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQixrREFBK0M7QUFDL0Msd0RBQTBDO0FBRzdCLFFBQUEsZUFBZSxHQUFHLHFCQUFxQixDQUFDO0FBUXJELFNBQVMsMkJBQTJCO0lBQ2xDLE9BQU87UUFDTCxVQUFVLEVBQUUsRUFBRTtLQUNmLENBQUM7QUFDSixDQUFDO0FBQ1ksUUFBQSxpQkFBaUIsR0FBRztJQUMvQixPQUFPLEVBQUUsd0NBQXdDO0lBQ2pELE1BQU0sQ0FBQyxPQUEwQixFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ3pFLEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ25DLFdBQUksQ0FBQyxNQUFNLENBQUMsQ0FBRSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNyRCxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUNELE1BQU0sQ0FBQyxLQUE4QixFQUFFLE1BQWU7UUFDcEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxZQUFZLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLElBQUksR0FBRyxHQUFHLE1BQU0sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDO1FBQ2xFLE1BQU0sT0FBTyxHQUFHLDJCQUEyQixFQUFFLENBQUM7UUFDOUMsT0FBTyxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM1QixRQUFRLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDbEIsS0FBSyxDQUFDO29CQUNKLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQzlELE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFDRCxRQUFRLENBQUMsTUFBVztRQUNsQixNQUFNLEdBQUcsR0FBRywyQkFBMkIsRUFBRSxDQUFDO1FBQzFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDO1lBQUUsR0FBRyxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsV0FBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVHLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUNELE1BQU0sQ0FBQyxPQUEwQjtRQUMvQixNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUM7UUFDcEIsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsR0FBRyxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0UsQ0FBQzthQUFNLENBQUM7WUFDTixHQUFHLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUN0QixDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBQ0QsV0FBVyxDQUFxRCxNQUFTO1FBQ3ZFLE1BQU0sT0FBTyxHQUFHLDJCQUEyQixFQUFFLENBQUM7UUFDOUMsT0FBTyxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFdBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUUsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGLENBQUMifQ== \ No newline at end of file diff --git a/dist/codec/cosmos/bank/v1beta1/bank.d.ts b/dist/codec/cosmos/bank/v1beta1/bank.d.ts new file mode 100644 index 0000000..ac8ab8c --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/bank.d.ts @@ -0,0 +1,263 @@ +import { Coin } from "../../base/v1beta1/coin"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../../json-safe"; +export declare const protobufPackage = "cosmos.bank.v1beta1"; +/** Params defines the parameters for the bank module. */ +export interface Params { + sendEnabled: SendEnabled[]; + defaultSendEnabled: boolean; +} +/** + * SendEnabled maps coin denom to a send_enabled status (whether a denom is + * sendable). + */ +export interface SendEnabled { + denom: string; + enabled: boolean; +} +/** Input models transaction input. */ +export interface Input { + address: string; + coins: Coin[]; +} +/** Output models transaction outputs. */ +export interface Output { + address: string; + coins: Coin[]; +} +/** + * Supply represents a struct that passively keeps track of the total supply + * amounts in the network. + * This message is deprecated now that supply is indexed by denom. + */ +/** @deprecated */ +export interface Supply { + total: Coin[]; +} +/** + * DenomUnit represents a struct that describes a given + * denomination unit of the basic token. + */ +export interface DenomUnit { + /** denom represents the string name of the given denom unit (e.g uatom). */ + denom: string; + /** + * exponent represents power of 10 exponent that one must + * raise the base_denom to in order to equal the given DenomUnit's denom + * 1 denom = 1^exponent base_denom + * (e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' with + * exponent = 6, thus: 1 atom = 10^6 uatom). + */ + exponent: number; + /** aliases is a list of string aliases for the given denom */ + aliases: string[]; +} +/** + * Metadata represents a struct that describes + * a basic token. + */ +export interface Metadata { + description: string; + /** denom_units represents the list of DenomUnit's for a given coin */ + denomUnits: DenomUnit[]; + /** base represents the base denom (should be the DenomUnit with exponent = 0). */ + base: string; + /** + * display indicates the suggested denom that should be + * displayed in clients. + */ + display: string; + /** name defines the name of the token (eg: Cosmos Atom) */ + name: string; + /** + * symbol is the token symbol usually shown on exchanges (eg: ATOM). This can + * be the same as the display. + */ + symbol: string; +} +export declare const Params: { + typeUrl: string; + encode(message: Params, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Params; + fromJSON(object: any): Params; + toJSON(message: Params): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + defaultSendEnabled?: boolean | undefined; + } & Record, never>>(object: I): Params; +}; +export declare const SendEnabled: { + typeUrl: string; + encode(message: SendEnabled, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): SendEnabled; + fromJSON(object: any): SendEnabled; + toJSON(message: SendEnabled): JsonSafe; + fromPartial, never>>(object: I): SendEnabled; +}; +export declare const Input: { + typeUrl: string; + encode(message: Input, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Input; + fromJSON(object: any): Input; + toJSON(message: Input): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): Input; +}; +export declare const Output: { + typeUrl: string; + encode(message: Output, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Output; + fromJSON(object: any): Output; + toJSON(message: Output): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): Output; +}; +export declare const Supply: { + typeUrl: string; + encode(message: Supply, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Supply; + fromJSON(object: any): Supply; + toJSON(message: Supply): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): Supply; +}; +export declare const DenomUnit: { + typeUrl: string; + encode(message: DenomUnit, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): DenomUnit; + fromJSON(object: any): DenomUnit; + toJSON(message: DenomUnit): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>>(object: I): DenomUnit; +}; +export declare const Metadata: { + typeUrl: string; + encode(message: Metadata, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Metadata; + fromJSON(object: any): Metadata; + toJSON(message: Metadata): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + base?: string | undefined; + display?: string | undefined; + name?: string | undefined; + symbol?: string | undefined; + } & Record, never>>(object: I): Metadata; +}; diff --git a/dist/codec/cosmos/bank/v1beta1/bank.js b/dist/codec/cosmos/bank/v1beta1/bank.js new file mode 100644 index 0000000..eaf1a6f --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/bank.js @@ -0,0 +1,512 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Metadata = exports.DenomUnit = exports.Supply = exports.Output = exports.Input = exports.SendEnabled = exports.Params = exports.protobufPackage = void 0; +/* eslint-disable */ +const coin_1 = require("../../base/v1beta1/coin"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../../helpers"); +exports.protobufPackage = "cosmos.bank.v1beta1"; +function createBaseParams() { + return { + sendEnabled: [], + defaultSendEnabled: false + }; +} +exports.Params = { + typeUrl: "/cosmos.bank.v1beta1.Params", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.sendEnabled) { + exports.SendEnabled.encode(v, writer.uint32(10).fork()).ldelim(); + } + if (message.defaultSendEnabled === true) { + writer.uint32(16).bool(message.defaultSendEnabled); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseParams(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sendEnabled.push(exports.SendEnabled.decode(reader, reader.uint32())); + break; + case 2: + message.defaultSendEnabled = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseParams(); + if (Array.isArray(object?.sendEnabled)) + obj.sendEnabled = object.sendEnabled.map((e) => exports.SendEnabled.fromJSON(e)); + if ((0, helpers_1.isSet)(object.defaultSendEnabled)) + obj.defaultSendEnabled = Boolean(object.defaultSendEnabled); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.sendEnabled) { + obj.sendEnabled = message.sendEnabled.map(e => e ? exports.SendEnabled.toJSON(e) : undefined); + } + else { + obj.sendEnabled = []; + } + message.defaultSendEnabled !== undefined && (obj.defaultSendEnabled = message.defaultSendEnabled); + return obj; + }, + fromPartial(object) { + const message = createBaseParams(); + message.sendEnabled = object.sendEnabled?.map(e => exports.SendEnabled.fromPartial(e)) || []; + message.defaultSendEnabled = object.defaultSendEnabled ?? false; + return message; + } +}; +function createBaseSendEnabled() { + return { + denom: "", + enabled: false + }; +} +exports.SendEnabled = { + typeUrl: "/cosmos.bank.v1beta1.SendEnabled", + encode(message, writer = _m0.Writer.create()) { + if (message.denom !== "") { + writer.uint32(10).string(message.denom); + } + if (message.enabled === true) { + writer.uint32(16).bool(message.enabled); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSendEnabled(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.denom = reader.string(); + break; + case 2: + message.enabled = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseSendEnabled(); + if ((0, helpers_1.isSet)(object.denom)) + obj.denom = String(object.denom); + if ((0, helpers_1.isSet)(object.enabled)) + obj.enabled = Boolean(object.enabled); + return obj; + }, + toJSON(message) { + const obj = {}; + message.denom !== undefined && (obj.denom = message.denom); + message.enabled !== undefined && (obj.enabled = message.enabled); + return obj; + }, + fromPartial(object) { + const message = createBaseSendEnabled(); + message.denom = object.denom ?? ""; + message.enabled = object.enabled ?? false; + return message; + } +}; +function createBaseInput() { + return { + address: "", + coins: [] + }; +} +exports.Input = { + typeUrl: "/cosmos.bank.v1beta1.Input", + encode(message, writer = _m0.Writer.create()) { + if (message.address !== "") { + writer.uint32(10).string(message.address); + } + for (const v of message.coins) { + coin_1.Coin.encode(v, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseInput(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.coins.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseInput(); + if ((0, helpers_1.isSet)(object.address)) + obj.address = String(object.address); + if (Array.isArray(object?.coins)) + obj.coins = object.coins.map((e) => coin_1.Coin.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.address !== undefined && (obj.address = message.address); + if (message.coins) { + obj.coins = message.coins.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.coins = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseInput(); + message.address = object.address ?? ""; + message.coins = object.coins?.map(e => coin_1.Coin.fromPartial(e)) || []; + return message; + } +}; +function createBaseOutput() { + return { + address: "", + coins: [] + }; +} +exports.Output = { + typeUrl: "/cosmos.bank.v1beta1.Output", + encode(message, writer = _m0.Writer.create()) { + if (message.address !== "") { + writer.uint32(10).string(message.address); + } + for (const v of message.coins) { + coin_1.Coin.encode(v, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseOutput(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.coins.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseOutput(); + if ((0, helpers_1.isSet)(object.address)) + obj.address = String(object.address); + if (Array.isArray(object?.coins)) + obj.coins = object.coins.map((e) => coin_1.Coin.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.address !== undefined && (obj.address = message.address); + if (message.coins) { + obj.coins = message.coins.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.coins = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseOutput(); + message.address = object.address ?? ""; + message.coins = object.coins?.map(e => coin_1.Coin.fromPartial(e)) || []; + return message; + } +}; +function createBaseSupply() { + return { + total: [] + }; +} +exports.Supply = { + typeUrl: "/cosmos.bank.v1beta1.Supply", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.total) { + coin_1.Coin.encode(v, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSupply(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.total.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseSupply(); + if (Array.isArray(object?.total)) + obj.total = object.total.map((e) => coin_1.Coin.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.total) { + obj.total = message.total.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.total = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseSupply(); + message.total = object.total?.map(e => coin_1.Coin.fromPartial(e)) || []; + return message; + } +}; +function createBaseDenomUnit() { + return { + denom: "", + exponent: 0, + aliases: [] + }; +} +exports.DenomUnit = { + typeUrl: "/cosmos.bank.v1beta1.DenomUnit", + encode(message, writer = _m0.Writer.create()) { + if (message.denom !== "") { + writer.uint32(10).string(message.denom); + } + if (message.exponent !== 0) { + writer.uint32(16).uint32(message.exponent); + } + for (const v of message.aliases) { + writer.uint32(26).string(v); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDenomUnit(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.denom = reader.string(); + break; + case 2: + message.exponent = reader.uint32(); + break; + case 3: + message.aliases.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseDenomUnit(); + if ((0, helpers_1.isSet)(object.denom)) + obj.denom = String(object.denom); + if ((0, helpers_1.isSet)(object.exponent)) + obj.exponent = Number(object.exponent); + if (Array.isArray(object?.aliases)) + obj.aliases = object.aliases.map((e) => String(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.denom !== undefined && (obj.denom = message.denom); + message.exponent !== undefined && (obj.exponent = Math.round(message.exponent)); + if (message.aliases) { + obj.aliases = message.aliases.map(e => e); + } + else { + obj.aliases = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseDenomUnit(); + message.denom = object.denom ?? ""; + message.exponent = object.exponent ?? 0; + message.aliases = object.aliases?.map(e => e) || []; + return message; + } +}; +function createBaseMetadata() { + return { + description: "", + denomUnits: [], + base: "", + display: "", + name: "", + symbol: "" + }; +} +exports.Metadata = { + typeUrl: "/cosmos.bank.v1beta1.Metadata", + encode(message, writer = _m0.Writer.create()) { + if (message.description !== "") { + writer.uint32(10).string(message.description); + } + for (const v of message.denomUnits) { + exports.DenomUnit.encode(v, writer.uint32(18).fork()).ldelim(); + } + if (message.base !== "") { + writer.uint32(26).string(message.base); + } + if (message.display !== "") { + writer.uint32(34).string(message.display); + } + if (message.name !== "") { + writer.uint32(42).string(message.name); + } + if (message.symbol !== "") { + writer.uint32(50).string(message.symbol); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMetadata(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.description = reader.string(); + break; + case 2: + message.denomUnits.push(exports.DenomUnit.decode(reader, reader.uint32())); + break; + case 3: + message.base = reader.string(); + break; + case 4: + message.display = reader.string(); + break; + case 5: + message.name = reader.string(); + break; + case 6: + message.symbol = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMetadata(); + if ((0, helpers_1.isSet)(object.description)) + obj.description = String(object.description); + if (Array.isArray(object?.denomUnits)) + obj.denomUnits = object.denomUnits.map((e) => exports.DenomUnit.fromJSON(e)); + if ((0, helpers_1.isSet)(object.base)) + obj.base = String(object.base); + if ((0, helpers_1.isSet)(object.display)) + obj.display = String(object.display); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if ((0, helpers_1.isSet)(object.symbol)) + obj.symbol = String(object.symbol); + return obj; + }, + toJSON(message) { + const obj = {}; + message.description !== undefined && (obj.description = message.description); + if (message.denomUnits) { + obj.denomUnits = message.denomUnits.map(e => e ? exports.DenomUnit.toJSON(e) : undefined); + } + else { + obj.denomUnits = []; + } + message.base !== undefined && (obj.base = message.base); + message.display !== undefined && (obj.display = message.display); + message.name !== undefined && (obj.name = message.name); + message.symbol !== undefined && (obj.symbol = message.symbol); + return obj; + }, + fromPartial(object) { + const message = createBaseMetadata(); + message.description = object.description ?? ""; + message.denomUnits = object.denomUnits?.map(e => exports.DenomUnit.fromPartial(e)) || []; + message.base = object.base ?? ""; + message.display = object.display ?? ""; + message.name = object.name ?? ""; + message.symbol = object.symbol ?? ""; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb2RlYy9jb3Ntb3MvYmFuay92MWJldGExL2JhbmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsa0RBQStDO0FBQy9DLHdEQUEwQztBQUMxQyw4Q0FBNkQ7QUFFaEQsUUFBQSxlQUFlLEdBQUcscUJBQXFCLENBQUM7QUEwRXJELFNBQVMsZ0JBQWdCO0lBQ3ZCLE9BQU87UUFDTCxXQUFXLEVBQUUsRUFBRTtRQUNmLGtCQUFrQixFQUFFLEtBQUs7S0FDMUIsQ0FBQztBQUNKLENBQUM7QUFDWSxRQUFBLE1BQU0sR0FBRztJQUNwQixPQUFPLEVBQUUsNkJBQTZCO0lBQ3RDLE1BQU0sQ0FBQyxPQUFlLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDOUQsS0FBSyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEMsbUJBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBRSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM1RCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsa0JBQWtCLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDeEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksR0FB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 \ No newline at end of file diff --git a/dist/codec/cosmos/bank/v1beta1/genesis.d.ts b/dist/codec/cosmos/bank/v1beta1/genesis.d.ts new file mode 100644 index 0000000..ce417af --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/genesis.d.ts @@ -0,0 +1,224 @@ +import { Params, Metadata } from "./bank"; +import { Coin } from "../../base/v1beta1/coin"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../../json-safe"; +export declare const protobufPackage = "cosmos.bank.v1beta1"; +/** GenesisState defines the bank module's genesis state. */ +export interface GenesisState { + /** params defines all the paramaters of the module. */ + params: Params; + /** balances is an array containing the balances of all the accounts. */ + balances: Balance[]; + /** + * supply represents the total supply. If it is left empty, then supply will be calculated based on the provided + * balances. Otherwise, it will be used to validate that the sum of the balances equals this amount. + */ + supply: Coin[]; + /** denom_metadata defines the metadata of the differents coins. */ + denomMetadata: Metadata[]; +} +/** + * Balance defines an account address and balance pair used in the bank module's + * genesis state. + */ +export interface Balance { + /** address is the address of the balance holder. */ + address: string; + /** coins defines the different coins this balance holds. */ + coins: Coin[]; +} +export declare const GenesisState: { + typeUrl: string; + encode(message: GenesisState, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): GenesisState; + fromJSON(object: any): GenesisState; + toJSON(message: GenesisState): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + defaultSendEnabled?: boolean | undefined; + } & Record, never>) | undefined; + balances?: ({ + address?: string | undefined; + coins?: { + denom?: string | undefined; + amount?: string | undefined; + }[] | undefined; + }[] & ({ + address?: string | undefined; + coins?: { + denom?: string | undefined; + amount?: string | undefined; + }[] | undefined; + } & { + address?: string | undefined; + coins?: ({ + denom?: string | undefined; + amount?: string | undefined; + }[] & ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + supply?: ({ + denom?: string | undefined; + amount?: string | undefined; + }[] & ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + denomMetadata?: ({ + description?: string | undefined; + denomUnits?: { + denom?: string | undefined; + exponent?: number | undefined; + aliases?: string[] | undefined; + }[] | undefined; + base?: string | undefined; + display?: string | undefined; + name?: string | undefined; + symbol?: string | undefined; + }[] & ({ + description?: string | undefined; + denomUnits?: { + denom?: string | undefined; + exponent?: number | undefined; + aliases?: string[] | undefined; + }[] | undefined; + base?: string | undefined; + display?: string | undefined; + name?: string | undefined; + symbol?: string | undefined; + } & { + description?: string | undefined; + denomUnits?: ({ + denom?: string | undefined; + exponent?: number | undefined; + aliases?: string[] | undefined; + }[] & ({ + denom?: string | undefined; + exponent?: number | undefined; + aliases?: string[] | undefined; + } & { + denom?: string | undefined; + exponent?: number | undefined; + aliases?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + base?: string | undefined; + display?: string | undefined; + name?: string | undefined; + symbol?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): GenesisState; +}; +export declare const Balance: { + typeUrl: string; + encode(message: Balance, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Balance; + fromJSON(object: any): Balance; + toJSON(message: Balance): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): Balance; +}; diff --git a/dist/codec/cosmos/bank/v1beta1/genesis.js b/dist/codec/cosmos/bank/v1beta1/genesis.js new file mode 100644 index 0000000..3338373 --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/genesis.js @@ -0,0 +1,193 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Balance = exports.GenesisState = exports.protobufPackage = void 0; +/* eslint-disable */ +const bank_1 = require("./bank"); +const coin_1 = require("../../base/v1beta1/coin"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../../helpers"); +exports.protobufPackage = "cosmos.bank.v1beta1"; +function createBaseGenesisState() { + return { + params: bank_1.Params.fromPartial({}), + balances: [], + supply: [], + denomMetadata: [] + }; +} +exports.GenesisState = { + typeUrl: "/cosmos.bank.v1beta1.GenesisState", + encode(message, writer = _m0.Writer.create()) { + if (message.params !== undefined) { + bank_1.Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + for (const v of message.balances) { + exports.Balance.encode(v, writer.uint32(18).fork()).ldelim(); + } + for (const v of message.supply) { + coin_1.Coin.encode(v, writer.uint32(26).fork()).ldelim(); + } + for (const v of message.denomMetadata) { + bank_1.Metadata.encode(v, writer.uint32(34).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseGenesisState(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.params = bank_1.Params.decode(reader, reader.uint32()); + break; + case 2: + message.balances.push(exports.Balance.decode(reader, reader.uint32())); + break; + case 3: + message.supply.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + case 4: + message.denomMetadata.push(bank_1.Metadata.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseGenesisState(); + if ((0, helpers_1.isSet)(object.params)) + obj.params = bank_1.Params.fromJSON(object.params); + if (Array.isArray(object?.balances)) + obj.balances = object.balances.map((e) => exports.Balance.fromJSON(e)); + if (Array.isArray(object?.supply)) + obj.supply = object.supply.map((e) => coin_1.Coin.fromJSON(e)); + if (Array.isArray(object?.denomMetadata)) + obj.denomMetadata = object.denomMetadata.map((e) => bank_1.Metadata.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.params !== undefined && (obj.params = message.params ? bank_1.Params.toJSON(message.params) : undefined); + if (message.balances) { + obj.balances = message.balances.map(e => e ? exports.Balance.toJSON(e) : undefined); + } + else { + obj.balances = []; + } + if (message.supply) { + obj.supply = message.supply.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.supply = []; + } + if (message.denomMetadata) { + obj.denomMetadata = message.denomMetadata.map(e => e ? bank_1.Metadata.toJSON(e) : undefined); + } + else { + obj.denomMetadata = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseGenesisState(); + if (object.params !== undefined && object.params !== null) { + message.params = bank_1.Params.fromPartial(object.params); + } + message.balances = object.balances?.map(e => exports.Balance.fromPartial(e)) || []; + message.supply = object.supply?.map(e => coin_1.Coin.fromPartial(e)) || []; + message.denomMetadata = object.denomMetadata?.map(e => bank_1.Metadata.fromPartial(e)) || []; + return message; + } +}; +function createBaseBalance() { + return { + address: "", + coins: [] + }; +} +exports.Balance = { + typeUrl: "/cosmos.bank.v1beta1.Balance", + encode(message, writer = _m0.Writer.create()) { + if (message.address !== "") { + writer.uint32(10).string(message.address); + } + for (const v of message.coins) { + coin_1.Coin.encode(v, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBalance(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.coins.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseBalance(); + if ((0, helpers_1.isSet)(object.address)) + obj.address = String(object.address); + if (Array.isArray(object?.coins)) + obj.coins = object.coins.map((e) => coin_1.Coin.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.address !== undefined && (obj.address = message.address); + if (message.coins) { + obj.coins = message.coins.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.coins = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseBalance(); + message.address = object.address ?? ""; + message.coins = object.coins?.map(e => coin_1.Coin.fromPartial(e)) || []; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXNpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb2RlYy9jb3Ntb3MvYmFuay92MWJldGExL2dlbmVzaXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsaUNBQTBDO0FBQzFDLGtEQUErQztBQUMvQyx3REFBMEM7QUFDMUMsOENBQTZEO0FBRWhELFFBQUEsZUFBZSxHQUFHLHFCQUFxQixDQUFDO0FBeUJyRCxTQUFTLHNCQUFzQjtJQUM3QixPQUFPO1FBQ0wsTUFBTSxFQUFFLGFBQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQzlCLFFBQVEsRUFBRSxFQUFFO1FBQ1osTUFBTSxFQUFFLEVBQUU7UUFDVixhQUFhLEVBQUUsRUFBRTtLQUNsQixDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsWUFBWSxHQUFHO0lBQzFCLE9BQU8sRUFBRSxtQ0FBbUM7SUFDNUMsTUFBTSxDQUFDLE9BQXFCLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDcEUsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLGFBQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbkUsQ0FBQztRQUNELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pDLGVBQU8sQ0FBQyxNQUFNLENBQUMsQ0FBRSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsS0FBSyxNQUFNLENBQUMsSUFBSSxPQUFPLENB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 \ No newline at end of file diff --git a/dist/codec/cosmos/bank/v1beta1/query.d.ts b/dist/codec/cosmos/bank/v1beta1/query.d.ts new file mode 100644 index 0000000..494241e --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/query.d.ts @@ -0,0 +1,1083 @@ +/// +import { PageRequest, PageResponse } from "../../base/query/v1beta1/pagination"; +import { Coin } from "../../base/v1beta1/coin"; +import { Params, Metadata } from "./bank"; +import * as _m0 from "protobufjs/minimal"; +import { Rpc } from "../../../helpers"; +import { JsonSafe } from "../../../json-safe"; +export declare const protobufPackage = "cosmos.bank.v1beta1"; +/** QueryBalanceRequest is the request type for the Query/Balance RPC method. */ +export interface QueryBalanceRequest { + /** address is the address to query balances for. */ + address: string; + /** denom is the coin denom to query balances for. */ + denom: string; +} +/** QueryBalanceResponse is the response type for the Query/Balance RPC method. */ +export interface QueryBalanceResponse { + /** balance is the balance of the coin. */ + balance?: Coin; +} +/** QueryBalanceRequest is the request type for the Query/AllBalances RPC method. */ +export interface QueryAllBalancesRequest { + /** address is the address to query balances for. */ + address: string; + /** pagination defines an optional pagination for the request. */ + pagination?: PageRequest; +} +/** + * QueryAllBalancesResponse is the response type for the Query/AllBalances RPC + * method. + */ +export interface QueryAllBalancesResponse { + /** balances is the balances of all the coins. */ + balances: Coin[]; + /** pagination defines the pagination in the response. */ + pagination?: PageResponse; +} +/** + * QueryTotalSupplyRequest is the request type for the Query/TotalSupply RPC + * method. + */ +export interface QueryTotalSupplyRequest { + /** pagination defines an optional pagination for the request. */ + pagination?: PageRequest; +} +/** + * QueryTotalSupplyResponse is the response type for the Query/TotalSupply RPC + * method + */ +export interface QueryTotalSupplyResponse { + /** supply is the supply of the coins */ + supply: Coin[]; + /** pagination defines the pagination in the response. */ + pagination?: PageResponse; +} +/** QuerySupplyOfRequest is the request type for the Query/SupplyOf RPC method. */ +export interface QuerySupplyOfRequest { + /** denom is the coin denom to query balances for. */ + denom: string; +} +/** QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC method. */ +export interface QuerySupplyOfResponse { + /** amount is the supply of the coin. */ + amount: Coin; +} +/** QueryParamsRequest defines the request type for querying x/bank parameters. */ +export interface QueryParamsRequest { +} +/** QueryParamsResponse defines the response type for querying x/bank parameters. */ +export interface QueryParamsResponse { + params: Params; +} +/** QueryDenomsMetadataRequest is the request type for the Query/DenomsMetadata RPC method. */ +export interface QueryDenomsMetadataRequest { + /** pagination defines an optional pagination for the request. */ + pagination?: PageRequest; +} +/** + * QueryDenomsMetadataResponse is the response type for the Query/DenomsMetadata RPC + * method. + */ +export interface QueryDenomsMetadataResponse { + /** metadata provides the client information for all the registered tokens. */ + metadatas: Metadata[]; + /** pagination defines the pagination in the response. */ + pagination?: PageResponse; +} +/** QueryDenomMetadataRequest is the request type for the Query/DenomMetadata RPC method. */ +export interface QueryDenomMetadataRequest { + /** denom is the coin denom to query the metadata for. */ + denom: string; +} +/** + * QueryDenomMetadataResponse is the response type for the Query/DenomMetadata RPC + * method. + */ +export interface QueryDenomMetadataResponse { + /** metadata describes and provides all the client information for the requested token. */ + metadata: Metadata; +} +export declare const QueryBalanceRequest: { + typeUrl: string; + encode(message: QueryBalanceRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryBalanceRequest; + fromJSON(object: any): QueryBalanceRequest; + toJSON(message: QueryBalanceRequest): JsonSafe; + fromPartial, never>>(object: I): QueryBalanceRequest; +}; +export declare const QueryBalanceResponse: { + typeUrl: string; + encode(message: QueryBalanceResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryBalanceResponse; + fromJSON(object: any): QueryBalanceResponse; + toJSON(message: QueryBalanceResponse): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>>(object: I): QueryBalanceResponse; +}; +export declare const QueryAllBalancesRequest: { + typeUrl: string; + encode(message: QueryAllBalancesRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryAllBalancesRequest; + fromJSON(object: any): QueryAllBalancesRequest; + toJSON(message: QueryAllBalancesRequest): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + limit?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + countTotal?: boolean | undefined; + reverse?: boolean | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryAllBalancesRequest; +}; +export declare const QueryAllBalancesResponse: { + typeUrl: string; + encode(message: QueryAllBalancesResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryAllBalancesResponse; + fromJSON(object: any): QueryAllBalancesResponse; + toJSON(message: QueryAllBalancesResponse): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + pagination?: ({ + nextKey?: Uint8Array | undefined; + total?: string | number | import("long").Long | undefined; + } & { + nextKey?: Uint8Array | undefined; + total?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryAllBalancesResponse; +}; +export declare const QueryTotalSupplyRequest: { + typeUrl: string; + encode(message: QueryTotalSupplyRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryTotalSupplyRequest; + fromJSON(object: any): QueryTotalSupplyRequest; + toJSON(message: QueryTotalSupplyRequest): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + limit?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + countTotal?: boolean | undefined; + reverse?: boolean | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryTotalSupplyRequest; +}; +export declare const QueryTotalSupplyResponse: { + typeUrl: string; + encode(message: QueryTotalSupplyResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryTotalSupplyResponse; + fromJSON(object: any): QueryTotalSupplyResponse; + toJSON(message: QueryTotalSupplyResponse): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + pagination?: ({ + nextKey?: Uint8Array | undefined; + total?: string | number | import("long").Long | undefined; + } & { + nextKey?: Uint8Array | undefined; + total?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryTotalSupplyResponse; +}; +export declare const QuerySupplyOfRequest: { + typeUrl: string; + encode(message: QuerySupplyOfRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QuerySupplyOfRequest; + fromJSON(object: any): QuerySupplyOfRequest; + toJSON(message: QuerySupplyOfRequest): JsonSafe; + fromPartial, never>>(object: I): QuerySupplyOfRequest; +}; +export declare const QuerySupplyOfResponse: { + typeUrl: string; + encode(message: QuerySupplyOfResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QuerySupplyOfResponse; + fromJSON(object: any): QuerySupplyOfResponse; + toJSON(message: QuerySupplyOfResponse): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>>(object: I): QuerySupplyOfResponse; +}; +export declare const QueryParamsRequest: { + typeUrl: string; + encode(_: QueryParamsRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryParamsRequest; + fromJSON(_: any): QueryParamsRequest; + toJSON(_: QueryParamsRequest): JsonSafe; + fromPartial, never>>(_: I): QueryParamsRequest; +}; +export declare const QueryParamsResponse: { + typeUrl: string; + encode(message: QueryParamsResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryParamsResponse; + fromJSON(object: any): QueryParamsResponse; + toJSON(message: QueryParamsResponse): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + defaultSendEnabled?: boolean | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryParamsResponse; +}; +export declare const QueryDenomsMetadataRequest: { + typeUrl: string; + encode(message: QueryDenomsMetadataRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryDenomsMetadataRequest; + fromJSON(object: any): QueryDenomsMetadataRequest; + toJSON(message: QueryDenomsMetadataRequest): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + limit?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + countTotal?: boolean | undefined; + reverse?: boolean | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryDenomsMetadataRequest; +}; +export declare const QueryDenomsMetadataResponse: { + typeUrl: string; + encode(message: QueryDenomsMetadataResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryDenomsMetadataResponse; + fromJSON(object: any): QueryDenomsMetadataResponse; + toJSON(message: QueryDenomsMetadataResponse): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + base?: string | undefined; + display?: string | undefined; + name?: string | undefined; + symbol?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + pagination?: ({ + nextKey?: Uint8Array | undefined; + total?: string | number | import("long").Long | undefined; + } & { + nextKey?: Uint8Array | undefined; + total?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryDenomsMetadataResponse; +}; +export declare const QueryDenomMetadataRequest: { + typeUrl: string; + encode(message: QueryDenomMetadataRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryDenomMetadataRequest; + fromJSON(object: any): QueryDenomMetadataRequest; + toJSON(message: QueryDenomMetadataRequest): JsonSafe; + fromPartial, never>>(object: I): QueryDenomMetadataRequest; +}; +export declare const QueryDenomMetadataResponse: { + typeUrl: string; + encode(message: QueryDenomMetadataResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryDenomMetadataResponse; + fromJSON(object: any): QueryDenomMetadataResponse; + toJSON(message: QueryDenomMetadataResponse): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + base?: string | undefined; + display?: string | undefined; + name?: string | undefined; + symbol?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryDenomMetadataResponse; +}; +/** Query defines the gRPC querier service. */ +export interface Query { + /** Balance queries the balance of a single coin for a single account. */ + Balance(request: QueryBalanceRequest): Promise; + /** AllBalances queries the balance of all coins for a single account. */ + AllBalances(request: QueryAllBalancesRequest): Promise; + /** TotalSupply queries the total supply of all coins. */ + TotalSupply(request?: QueryTotalSupplyRequest): Promise; + /** SupplyOf queries the supply of a single coin. */ + SupplyOf(request: QuerySupplyOfRequest): Promise; + /** Params queries the parameters of x/bank module. */ + Params(request?: QueryParamsRequest): Promise; + /** DenomsMetadata queries the client metadata of a given coin denomination. */ + DenomMetadata(request: QueryDenomMetadataRequest): Promise; + /** DenomsMetadata queries the client metadata for all registered coin denominations. */ + DenomsMetadata(request?: QueryDenomsMetadataRequest): Promise; +} +export declare class QueryClientImpl implements Query { + private readonly rpc; + constructor(rpc: Rpc); + Balance(request: QueryBalanceRequest): Promise; + AllBalances(request: QueryAllBalancesRequest): Promise; + TotalSupply(request?: QueryTotalSupplyRequest): Promise; + SupplyOf(request: QuerySupplyOfRequest): Promise; + Params(request?: QueryParamsRequest): Promise; + DenomMetadata(request: QueryDenomMetadataRequest): Promise; + DenomsMetadata(request?: QueryDenomsMetadataRequest): Promise; +} diff --git a/dist/codec/cosmos/bank/v1beta1/query.js b/dist/codec/cosmos/bank/v1beta1/query.js new file mode 100644 index 0000000..d1d9eff --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/query.js @@ -0,0 +1,822 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.QueryClientImpl = exports.QueryDenomMetadataResponse = exports.QueryDenomMetadataRequest = exports.QueryDenomsMetadataResponse = exports.QueryDenomsMetadataRequest = exports.QueryParamsResponse = exports.QueryParamsRequest = exports.QuerySupplyOfResponse = exports.QuerySupplyOfRequest = exports.QueryTotalSupplyResponse = exports.QueryTotalSupplyRequest = exports.QueryAllBalancesResponse = exports.QueryAllBalancesRequest = exports.QueryBalanceResponse = exports.QueryBalanceRequest = exports.protobufPackage = void 0; +/* eslint-disable */ +const pagination_1 = require("../../base/query/v1beta1/pagination"); +const coin_1 = require("../../base/v1beta1/coin"); +const bank_1 = require("./bank"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../../helpers"); +exports.protobufPackage = "cosmos.bank.v1beta1"; +function createBaseQueryBalanceRequest() { + return { + address: "", + denom: "" + }; +} +exports.QueryBalanceRequest = { + typeUrl: "/cosmos.bank.v1beta1.QueryBalanceRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.address !== "") { + writer.uint32(10).string(message.address); + } + if (message.denom !== "") { + writer.uint32(18).string(message.denom); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryBalanceRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.denom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryBalanceRequest(); + if ((0, helpers_1.isSet)(object.address)) + obj.address = String(object.address); + if ((0, helpers_1.isSet)(object.denom)) + obj.denom = String(object.denom); + return obj; + }, + toJSON(message) { + const obj = {}; + message.address !== undefined && (obj.address = message.address); + message.denom !== undefined && (obj.denom = message.denom); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryBalanceRequest(); + message.address = object.address ?? ""; + message.denom = object.denom ?? ""; + return message; + } +}; +function createBaseQueryBalanceResponse() { + return { + balance: undefined + }; +} +exports.QueryBalanceResponse = { + typeUrl: "/cosmos.bank.v1beta1.QueryBalanceResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.balance !== undefined) { + coin_1.Coin.encode(message.balance, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryBalanceResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.balance = coin_1.Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryBalanceResponse(); + if ((0, helpers_1.isSet)(object.balance)) + obj.balance = coin_1.Coin.fromJSON(object.balance); + return obj; + }, + toJSON(message) { + const obj = {}; + message.balance !== undefined && (obj.balance = message.balance ? coin_1.Coin.toJSON(message.balance) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryBalanceResponse(); + if (object.balance !== undefined && object.balance !== null) { + message.balance = coin_1.Coin.fromPartial(object.balance); + } + return message; + } +}; +function createBaseQueryAllBalancesRequest() { + return { + address: "", + pagination: undefined + }; +} +exports.QueryAllBalancesRequest = { + typeUrl: "/cosmos.bank.v1beta1.QueryAllBalancesRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.address !== "") { + writer.uint32(10).string(message.address); + } + if (message.pagination !== undefined) { + pagination_1.PageRequest.encode(message.pagination, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllBalancesRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.pagination = pagination_1.PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryAllBalancesRequest(); + if ((0, helpers_1.isSet)(object.address)) + obj.address = String(object.address); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageRequest.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + message.address !== undefined && (obj.address = message.address); + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageRequest.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryAllBalancesRequest(); + message.address = object.address ?? ""; + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageRequest.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryAllBalancesResponse() { + return { + balances: [], + pagination: undefined + }; +} +exports.QueryAllBalancesResponse = { + typeUrl: "/cosmos.bank.v1beta1.QueryAllBalancesResponse", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.balances) { + coin_1.Coin.encode(v, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + pagination_1.PageResponse.encode(message.pagination, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllBalancesResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.balances.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = pagination_1.PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryAllBalancesResponse(); + if (Array.isArray(object?.balances)) + obj.balances = object.balances.map((e) => coin_1.Coin.fromJSON(e)); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageResponse.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.balances) { + obj.balances = message.balances.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.balances = []; + } + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageResponse.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryAllBalancesResponse(); + message.balances = object.balances?.map(e => coin_1.Coin.fromPartial(e)) || []; + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageResponse.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryTotalSupplyRequest() { + return { + pagination: undefined + }; +} +exports.QueryTotalSupplyRequest = { + typeUrl: "/cosmos.bank.v1beta1.QueryTotalSupplyRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.pagination !== undefined) { + pagination_1.PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryTotalSupplyRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = pagination_1.PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryTotalSupplyRequest(); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageRequest.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageRequest.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryTotalSupplyRequest(); + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageRequest.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryTotalSupplyResponse() { + return { + supply: [], + pagination: undefined + }; +} +exports.QueryTotalSupplyResponse = { + typeUrl: "/cosmos.bank.v1beta1.QueryTotalSupplyResponse", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.supply) { + coin_1.Coin.encode(v, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + pagination_1.PageResponse.encode(message.pagination, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryTotalSupplyResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.supply.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = pagination_1.PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryTotalSupplyResponse(); + if (Array.isArray(object?.supply)) + obj.supply = object.supply.map((e) => coin_1.Coin.fromJSON(e)); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageResponse.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.supply) { + obj.supply = message.supply.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.supply = []; + } + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageResponse.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryTotalSupplyResponse(); + message.supply = object.supply?.map(e => coin_1.Coin.fromPartial(e)) || []; + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageResponse.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQuerySupplyOfRequest() { + return { + denom: "" + }; +} +exports.QuerySupplyOfRequest = { + typeUrl: "/cosmos.bank.v1beta1.QuerySupplyOfRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.denom !== "") { + writer.uint32(10).string(message.denom); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQuerySupplyOfRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.denom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQuerySupplyOfRequest(); + if ((0, helpers_1.isSet)(object.denom)) + obj.denom = String(object.denom); + return obj; + }, + toJSON(message) { + const obj = {}; + message.denom !== undefined && (obj.denom = message.denom); + return obj; + }, + fromPartial(object) { + const message = createBaseQuerySupplyOfRequest(); + message.denom = object.denom ?? ""; + return message; + } +}; +function createBaseQuerySupplyOfResponse() { + return { + amount: coin_1.Coin.fromPartial({}) + }; +} +exports.QuerySupplyOfResponse = { + typeUrl: "/cosmos.bank.v1beta1.QuerySupplyOfResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.amount !== undefined) { + coin_1.Coin.encode(message.amount, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQuerySupplyOfResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.amount = coin_1.Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQuerySupplyOfResponse(); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = coin_1.Coin.fromJSON(object.amount); + return obj; + }, + toJSON(message) { + const obj = {}; + message.amount !== undefined && (obj.amount = message.amount ? coin_1.Coin.toJSON(message.amount) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQuerySupplyOfResponse(); + if (object.amount !== undefined && object.amount !== null) { + message.amount = coin_1.Coin.fromPartial(object.amount); + } + return message; + } +}; +function createBaseQueryParamsRequest() { + return {}; +} +exports.QueryParamsRequest = { + typeUrl: "/cosmos.bank.v1beta1.QueryParamsRequest", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryParamsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseQueryParamsRequest(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseQueryParamsRequest(); + return message; + } +}; +function createBaseQueryParamsResponse() { + return { + params: bank_1.Params.fromPartial({}) + }; +} +exports.QueryParamsResponse = { + typeUrl: "/cosmos.bank.v1beta1.QueryParamsResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.params !== undefined) { + bank_1.Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryParamsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.params = bank_1.Params.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryParamsResponse(); + if ((0, helpers_1.isSet)(object.params)) + obj.params = bank_1.Params.fromJSON(object.params); + return obj; + }, + toJSON(message) { + const obj = {}; + message.params !== undefined && (obj.params = message.params ? bank_1.Params.toJSON(message.params) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryParamsResponse(); + if (object.params !== undefined && object.params !== null) { + message.params = bank_1.Params.fromPartial(object.params); + } + return message; + } +}; +function createBaseQueryDenomsMetadataRequest() { + return { + pagination: undefined + }; +} +exports.QueryDenomsMetadataRequest = { + typeUrl: "/cosmos.bank.v1beta1.QueryDenomsMetadataRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.pagination !== undefined) { + pagination_1.PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDenomsMetadataRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = pagination_1.PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryDenomsMetadataRequest(); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageRequest.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageRequest.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryDenomsMetadataRequest(); + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageRequest.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryDenomsMetadataResponse() { + return { + metadatas: [], + pagination: undefined + }; +} +exports.QueryDenomsMetadataResponse = { + typeUrl: "/cosmos.bank.v1beta1.QueryDenomsMetadataResponse", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.metadatas) { + bank_1.Metadata.encode(v, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + pagination_1.PageResponse.encode(message.pagination, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDenomsMetadataResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.metadatas.push(bank_1.Metadata.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = pagination_1.PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryDenomsMetadataResponse(); + if (Array.isArray(object?.metadatas)) + obj.metadatas = object.metadatas.map((e) => bank_1.Metadata.fromJSON(e)); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageResponse.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.metadatas) { + obj.metadatas = message.metadatas.map(e => e ? bank_1.Metadata.toJSON(e) : undefined); + } + else { + obj.metadatas = []; + } + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageResponse.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryDenomsMetadataResponse(); + message.metadatas = object.metadatas?.map(e => bank_1.Metadata.fromPartial(e)) || []; + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageResponse.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryDenomMetadataRequest() { + return { + denom: "" + }; +} +exports.QueryDenomMetadataRequest = { + typeUrl: "/cosmos.bank.v1beta1.QueryDenomMetadataRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.denom !== "") { + writer.uint32(10).string(message.denom); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDenomMetadataRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.denom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryDenomMetadataRequest(); + if ((0, helpers_1.isSet)(object.denom)) + obj.denom = String(object.denom); + return obj; + }, + toJSON(message) { + const obj = {}; + message.denom !== undefined && (obj.denom = message.denom); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryDenomMetadataRequest(); + message.denom = object.denom ?? ""; + return message; + } +}; +function createBaseQueryDenomMetadataResponse() { + return { + metadata: bank_1.Metadata.fromPartial({}) + }; +} +exports.QueryDenomMetadataResponse = { + typeUrl: "/cosmos.bank.v1beta1.QueryDenomMetadataResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.metadata !== undefined) { + bank_1.Metadata.encode(message.metadata, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDenomMetadataResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.metadata = bank_1.Metadata.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryDenomMetadataResponse(); + if ((0, helpers_1.isSet)(object.metadata)) + obj.metadata = bank_1.Metadata.fromJSON(object.metadata); + return obj; + }, + toJSON(message) { + const obj = {}; + message.metadata !== undefined && (obj.metadata = message.metadata ? bank_1.Metadata.toJSON(message.metadata) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryDenomMetadataResponse(); + if (object.metadata !== undefined && object.metadata !== null) { + message.metadata = bank_1.Metadata.fromPartial(object.metadata); + } + return message; + } +}; +class QueryClientImpl { + constructor(rpc) { + this.rpc = rpc; + this.Balance = this.Balance.bind(this); + this.AllBalances = this.AllBalances.bind(this); + this.TotalSupply = this.TotalSupply.bind(this); + this.SupplyOf = this.SupplyOf.bind(this); + this.Params = this.Params.bind(this); + this.DenomMetadata = this.DenomMetadata.bind(this); + this.DenomsMetadata = this.DenomsMetadata.bind(this); + } + Balance(request) { + const data = exports.QueryBalanceRequest.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Query", "Balance", data); + return promise.then(data => exports.QueryBalanceResponse.decode(new _m0.Reader(data))); + } + AllBalances(request) { + const data = exports.QueryAllBalancesRequest.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Query", "AllBalances", data); + return promise.then(data => exports.QueryAllBalancesResponse.decode(new _m0.Reader(data))); + } + TotalSupply(request = { + pagination: pagination_1.PageRequest.fromPartial({}) + }) { + const data = exports.QueryTotalSupplyRequest.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Query", "TotalSupply", data); + return promise.then(data => exports.QueryTotalSupplyResponse.decode(new _m0.Reader(data))); + } + SupplyOf(request) { + const data = exports.QuerySupplyOfRequest.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Query", "SupplyOf", data); + return promise.then(data => exports.QuerySupplyOfResponse.decode(new _m0.Reader(data))); + } + Params(request = {}) { + const data = exports.QueryParamsRequest.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Query", "Params", data); + return promise.then(data => exports.QueryParamsResponse.decode(new _m0.Reader(data))); + } + DenomMetadata(request) { + const data = exports.QueryDenomMetadataRequest.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Query", "DenomMetadata", data); + return promise.then(data => exports.QueryDenomMetadataResponse.decode(new _m0.Reader(data))); + } + DenomsMetadata(request = { + pagination: pagination_1.PageRequest.fromPartial({}) + }) { + const data = exports.QueryDenomsMetadataRequest.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Query", "DenomsMetadata", data); + return promise.then(data => exports.QueryDenomsMetadataResponse.decode(new _m0.Reader(data))); + } +} +exports.QueryClientImpl = QueryClientImpl; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29kZWMvY29zbW9zL2JhbmsvdjFiZXRhMS9xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQixvRUFBZ0Y7QUFDaEYsa0RBQStDO0FBQy9DLGlDQUEwQztBQUMxQyx3REFBMEM7QUFDMUMsOENBQWtFO0FBRXJELFFBQUEsZUFBZSxHQUFHLHFCQUFxQixDQUFDO0FBNEZyRCxTQUFTLDZCQUE2QjtJQUNwQyxPQUFPO1FBQ0wsT0FBTyxFQUFFLEVBQUU7UUFDWCxLQUFLLEVBQUUsRUFBRTtLQUNWLENBQUM7QUFDSixDQUFDO0FBQ1ksUUFBQSxtQkFBbUIsR0FBRztJQUNqQyxPQUFPLEVBQUUsMENBQTBDO0lBQ25ELE1BQU0sQ0FBQyxPQUE0QixFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQzNFLElBQUksT0FBTyxDQUFDLE9BQU8sS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUMzQixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUN6QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0s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 \ No newline at end of file diff --git a/dist/codec/cosmos/bank/v1beta1/tx.d.ts b/dist/codec/cosmos/bank/v1beta1/tx.d.ts new file mode 100644 index 0000000..a2ee979 --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/tx.d.ts @@ -0,0 +1,175 @@ +import { Coin } from "../../base/v1beta1/coin"; +import { Input, Output } from "./bank"; +import * as _m0 from "protobufjs/minimal"; +import { Rpc } from "../../../helpers"; +import { JsonSafe } from "../../../json-safe"; +export declare const protobufPackage = "cosmos.bank.v1beta1"; +/** MsgSend represents a message to send coins from one account to another. */ +export interface MsgSend { + fromAddress: string; + toAddress: string; + amount: Coin[]; +} +/** MsgSendResponse defines the Msg/Send response type. */ +export interface MsgSendResponse { +} +/** MsgMultiSend represents an arbitrary multi-in, multi-out send message. */ +export interface MsgMultiSend { + inputs: Input[]; + outputs: Output[]; +} +/** MsgMultiSendResponse defines the Msg/MultiSend response type. */ +export interface MsgMultiSendResponse { +} +export declare const MsgSend: { + typeUrl: string; + encode(message: MsgSend, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgSend; + fromJSON(object: any): MsgSend; + toJSON(message: MsgSend): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): MsgSend; +}; +export declare const MsgSendResponse: { + typeUrl: string; + encode(_: MsgSendResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgSendResponse; + fromJSON(_: any): MsgSendResponse; + toJSON(_: MsgSendResponse): JsonSafe; + fromPartial, never>>(_: I): MsgSendResponse; +}; +export declare const MsgMultiSend: { + typeUrl: string; + encode(message: MsgMultiSend, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgMultiSend; + fromJSON(object: any): MsgMultiSend; + toJSON(message: MsgMultiSend): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + outputs?: ({ + address?: string | undefined; + coins?: { + denom?: string | undefined; + amount?: string | undefined; + }[] | undefined; + }[] & ({ + address?: string | undefined; + coins?: { + denom?: string | undefined; + amount?: string | undefined; + }[] | undefined; + } & { + address?: string | undefined; + coins?: ({ + denom?: string | undefined; + amount?: string | undefined; + }[] & ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): MsgMultiSend; +}; +export declare const MsgMultiSendResponse: { + typeUrl: string; + encode(_: MsgMultiSendResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgMultiSendResponse; + fromJSON(_: any): MsgMultiSendResponse; + toJSON(_: MsgMultiSendResponse): JsonSafe; + fromPartial, never>>(_: I): MsgMultiSendResponse; +}; +/** Msg defines the bank Msg service. */ +export interface Msg { + /** Send defines a method for sending coins from one account to another account. */ + Send(request: MsgSend): Promise; + /** MultiSend defines a method for sending coins from some accounts to other accounts. */ + MultiSend(request: MsgMultiSend): Promise; +} +export declare class MsgClientImpl implements Msg { + private readonly rpc; + constructor(rpc: Rpc); + Send(request: MsgSend): Promise; + MultiSend(request: MsgMultiSend): Promise; +} diff --git a/dist/codec/cosmos/bank/v1beta1/tx.js b/dist/codec/cosmos/bank/v1beta1/tx.js new file mode 100644 index 0000000..ded75f2 --- /dev/null +++ b/dist/codec/cosmos/bank/v1beta1/tx.js @@ -0,0 +1,263 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MsgClientImpl = exports.MsgMultiSendResponse = exports.MsgMultiSend = exports.MsgSendResponse = exports.MsgSend = exports.protobufPackage = void 0; +/* eslint-disable */ +const coin_1 = require("../../base/v1beta1/coin"); +const bank_1 = require("./bank"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../../helpers"); +exports.protobufPackage = "cosmos.bank.v1beta1"; +function createBaseMsgSend() { + return { + fromAddress: "", + toAddress: "", + amount: [] + }; +} +exports.MsgSend = { + typeUrl: "/cosmos.bank.v1beta1.MsgSend", + encode(message, writer = _m0.Writer.create()) { + if (message.fromAddress !== "") { + writer.uint32(10).string(message.fromAddress); + } + if (message.toAddress !== "") { + writer.uint32(18).string(message.toAddress); + } + for (const v of message.amount) { + coin_1.Coin.encode(v, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSend(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.fromAddress = reader.string(); + break; + case 2: + message.toAddress = reader.string(); + break; + case 3: + message.amount.push(coin_1.Coin.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgSend(); + if ((0, helpers_1.isSet)(object.fromAddress)) + obj.fromAddress = String(object.fromAddress); + if ((0, helpers_1.isSet)(object.toAddress)) + obj.toAddress = String(object.toAddress); + if (Array.isArray(object?.amount)) + obj.amount = object.amount.map((e) => coin_1.Coin.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.fromAddress !== undefined && (obj.fromAddress = message.fromAddress); + message.toAddress !== undefined && (obj.toAddress = message.toAddress); + if (message.amount) { + obj.amount = message.amount.map(e => e ? coin_1.Coin.toJSON(e) : undefined); + } + else { + obj.amount = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseMsgSend(); + message.fromAddress = object.fromAddress ?? ""; + message.toAddress = object.toAddress ?? ""; + message.amount = object.amount?.map(e => coin_1.Coin.fromPartial(e)) || []; + return message; + } +}; +function createBaseMsgSendResponse() { + return {}; +} +exports.MsgSendResponse = { + typeUrl: "/cosmos.bank.v1beta1.MsgSendResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSendResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgSendResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgSendResponse(); + return message; + } +}; +function createBaseMsgMultiSend() { + return { + inputs: [], + outputs: [] + }; +} +exports.MsgMultiSend = { + typeUrl: "/cosmos.bank.v1beta1.MsgMultiSend", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.inputs) { + bank_1.Input.encode(v, writer.uint32(10).fork()).ldelim(); + } + for (const v of message.outputs) { + bank_1.Output.encode(v, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgMultiSend(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.inputs.push(bank_1.Input.decode(reader, reader.uint32())); + break; + case 2: + message.outputs.push(bank_1.Output.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgMultiSend(); + if (Array.isArray(object?.inputs)) + obj.inputs = object.inputs.map((e) => bank_1.Input.fromJSON(e)); + if (Array.isArray(object?.outputs)) + obj.outputs = object.outputs.map((e) => bank_1.Output.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.inputs) { + obj.inputs = message.inputs.map(e => e ? bank_1.Input.toJSON(e) : undefined); + } + else { + obj.inputs = []; + } + if (message.outputs) { + obj.outputs = message.outputs.map(e => e ? bank_1.Output.toJSON(e) : undefined); + } + else { + obj.outputs = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseMsgMultiSend(); + message.inputs = object.inputs?.map(e => bank_1.Input.fromPartial(e)) || []; + message.outputs = object.outputs?.map(e => bank_1.Output.fromPartial(e)) || []; + return message; + } +}; +function createBaseMsgMultiSendResponse() { + return {}; +} +exports.MsgMultiSendResponse = { + typeUrl: "/cosmos.bank.v1beta1.MsgMultiSendResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgMultiSendResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgMultiSendResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgMultiSendResponse(); + return message; + } +}; +class MsgClientImpl { + constructor(rpc) { + this.rpc = rpc; + this.Send = this.Send.bind(this); + this.MultiSend = this.MultiSend.bind(this); + } + Send(request) { + const data = exports.MsgSend.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Msg", "Send", data); + return promise.then(data => exports.MsgSendResponse.decode(new _m0.Reader(data))); + } + MultiSend(request) { + const data = exports.MsgMultiSend.encode(request).finish(); + const promise = this.rpc.request("cosmos.bank.v1beta1.Msg", "MultiSend", data); + return promise.then(data => exports.MsgMultiSendResponse.decode(new _m0.Reader(data))); + } +} +exports.MsgClientImpl = MsgClientImpl; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29kZWMvY29zbW9zL2JhbmsvdjFiZXRhMS90eC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQixrREFBK0M7QUFDL0MsaUNBQXVDO0FBQ3ZDLHdEQUEwQztBQUMxQyw4Q0FBa0U7QUFFckQsUUFBQSxlQUFlLEdBQUcscUJBQXFCLENBQUM7QUFnQnJELFNBQVMsaUJBQWlCO0lBQ3hCLE9BQU87UUFDTCxXQUFXLEVBQUUsRUFBRTtRQUNmLFNBQVMsRUFBRSxFQUFFO1FBQ2IsTUFBTSxFQUFFLEVBQUU7S0FDWCxDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsT0FBTyxHQUFHO0lBQ3JCLE9BQU8sRUFBRSw4QkFBOEI7SUFDdkMsTUFBTSxDQUFDLE9BQWdCLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDL0QsSUFBSSxPQUFPLENBQUMsV0FBVyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNoRCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsU0FBUyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsS0FBSyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDL0IsV0FBSSxDQUFDLE1BQU0sQ0FBQyxDQUFFLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3JELENB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 \ No newline at end of file diff --git a/dist/codec/cosmos/base/query/v1beta1/pagination.d.ts b/dist/codec/cosmos/base/query/v1beta1/pagination.d.ts index ca7154f..2615034 100644 --- a/dist/codec/cosmos/base/query/v1beta1/pagination.d.ts +++ b/dist/codec/cosmos/base/query/v1beta1/pagination.d.ts @@ -1,5 +1,7 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; +/// +import { Long } from "../../../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../../../json-safe"; export declare const protobufPackage = "cosmos.base.query.v1beta1"; /** * PageRequest is to be embedded in gRPC request messages for efficient @@ -35,11 +37,7 @@ export interface PageRequest { * is set. */ countTotal: boolean; - /** - * reverse is set to true if results are to be returned in the descending order. - * - * Since: cosmos-sdk 0.43 - */ + /** reverse is set to true if results are to be returned in the descending order. */ reverse: boolean; } /** @@ -65,10 +63,11 @@ export interface PageResponse { total: Long; } export declare const PageRequest: { + typeUrl: string; encode(message: PageRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PageRequest; fromJSON(object: any): PageRequest; - toJSON(message: PageRequest): unknown; + toJSON(message: PageRequest): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; limit?: string | number | (Long.Long & { high: number; low: number; @@ -192,16 +191,17 @@ export declare const PageRequest: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; countTotal?: boolean | undefined; reverse?: boolean | undefined; - } & { [K_2 in Exclude]: never; }>(object: I): PageRequest; + } & Record, never>>(object: I): PageRequest; }; export declare const PageResponse: { + typeUrl: string; encode(message: PageResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PageResponse; fromJSON(object: any): PageResponse; - toJSON(message: PageResponse): unknown; + toJSON(message: PageResponse): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): PageResponse; -}; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; + } & Record, never>) | undefined; + } & Record, never>>(object: I): PageResponse; }; -export {}; diff --git a/dist/codec/cosmos/base/query/v1beta1/pagination.js b/dist/codec/cosmos/base/query/v1beta1/pagination.js index e97004f..e1a498d 100644 --- a/dist/codec/cosmos/base/query/v1beta1/pagination.js +++ b/dist/codec/cosmos/base/query/v1beta1/pagination.js @@ -1,24 +1,45 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.PageResponse = exports.PageRequest = exports.protobufPackage = void 0; /* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const helpers_1 = require("../../../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); exports.protobufPackage = "cosmos.base.query.v1beta1"; function createBasePageRequest() { return { key: new Uint8Array(), - offset: long_1.default.UZERO, - limit: long_1.default.UZERO, + offset: helpers_1.Long.UZERO, + limit: helpers_1.Long.UZERO, countTotal: false, - reverse: false, + reverse: false }; } exports.PageRequest = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/cosmos.base.query.v1beta1.PageRequest", + encode(message, writer = _m0.Writer.create()) { if (message.key.length !== 0) { writer.uint32(10).bytes(message.key); } @@ -37,7 +58,7 @@ exports.PageRequest = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePageRequest(); while (reader.pos < end) { @@ -66,22 +87,24 @@ exports.PageRequest = { return message; }, fromJSON(object) { - return { - key: isSet(object.key) ? bytesFromBase64(object.key) : new Uint8Array(), - offset: isSet(object.offset) ? long_1.default.fromValue(object.offset) : long_1.default.UZERO, - limit: isSet(object.limit) ? long_1.default.fromValue(object.limit) : long_1.default.UZERO, - countTotal: isSet(object.countTotal) ? Boolean(object.countTotal) : false, - reverse: isSet(object.reverse) ? Boolean(object.reverse) : false, - }; + const obj = createBasePageRequest(); + if ((0, helpers_1.isSet)(object.key)) + obj.key = (0, helpers_1.bytesFromBase64)(object.key); + if ((0, helpers_1.isSet)(object.offset)) + obj.offset = helpers_1.Long.fromValue(object.offset); + if ((0, helpers_1.isSet)(object.limit)) + obj.limit = helpers_1.Long.fromValue(object.limit); + if ((0, helpers_1.isSet)(object.countTotal)) + obj.countTotal = Boolean(object.countTotal); + if ((0, helpers_1.isSet)(object.reverse)) + obj.reverse = Boolean(object.reverse); + return obj; }, toJSON(message) { const obj = {}; - message.key !== undefined && - (obj.key = base64FromBytes(message.key !== undefined ? message.key : new Uint8Array())); - message.offset !== undefined && - (obj.offset = (message.offset || long_1.default.UZERO).toString()); - message.limit !== undefined && - (obj.limit = (message.limit || long_1.default.UZERO).toString()); + message.key !== undefined && (obj.key = (0, helpers_1.base64FromBytes)(message.key !== undefined ? message.key : new Uint8Array())); + message.offset !== undefined && (obj.offset = (message.offset || helpers_1.Long.UZERO).toString()); + message.limit !== undefined && (obj.limit = (message.limit || helpers_1.Long.UZERO).toString()); message.countTotal !== undefined && (obj.countTotal = message.countTotal); message.reverse !== undefined && (obj.reverse = message.reverse); return obj; @@ -89,24 +112,26 @@ exports.PageRequest = { fromPartial(object) { const message = createBasePageRequest(); message.key = object.key ?? new Uint8Array(); - message.offset = - object.offset !== undefined && object.offset !== null - ? long_1.default.fromValue(object.offset) - : long_1.default.UZERO; - message.limit = - object.limit !== undefined && object.limit !== null - ? long_1.default.fromValue(object.limit) - : long_1.default.UZERO; + if (object.offset !== undefined && object.offset !== null) { + message.offset = helpers_1.Long.fromValue(object.offset); + } + if (object.limit !== undefined && object.limit !== null) { + message.limit = helpers_1.Long.fromValue(object.limit); + } message.countTotal = object.countTotal ?? false; message.reverse = object.reverse ?? false; return message; - }, + } }; function createBasePageResponse() { - return { nextKey: new Uint8Array(), total: long_1.default.UZERO }; + return { + nextKey: new Uint8Array(), + total: helpers_1.Long.UZERO + }; } exports.PageResponse = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/cosmos.base.query.v1beta1.PageResponse", + encode(message, writer = _m0.Writer.create()) { if (message.nextKey.length !== 0) { writer.uint32(10).bytes(message.nextKey); } @@ -116,7 +141,7 @@ exports.PageResponse = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePageResponse(); while (reader.pos < end) { @@ -136,72 +161,26 @@ exports.PageResponse = { return message; }, fromJSON(object) { - return { - nextKey: isSet(object.nextKey) - ? bytesFromBase64(object.nextKey) - : new Uint8Array(), - total: isSet(object.total) ? long_1.default.fromValue(object.total) : long_1.default.UZERO, - }; + const obj = createBasePageResponse(); + if ((0, helpers_1.isSet)(object.nextKey)) + obj.nextKey = (0, helpers_1.bytesFromBase64)(object.nextKey); + if ((0, helpers_1.isSet)(object.total)) + obj.total = helpers_1.Long.fromValue(object.total); + return obj; }, toJSON(message) { const obj = {}; - message.nextKey !== undefined && - (obj.nextKey = base64FromBytes(message.nextKey !== undefined ? message.nextKey : new Uint8Array())); - message.total !== undefined && - (obj.total = (message.total || long_1.default.UZERO).toString()); + message.nextKey !== undefined && (obj.nextKey = (0, helpers_1.base64FromBytes)(message.nextKey !== undefined ? message.nextKey : new Uint8Array())); + message.total !== undefined && (obj.total = (message.total || helpers_1.Long.UZERO).toString()); return obj; }, fromPartial(object) { const message = createBasePageResponse(); message.nextKey = object.nextKey ?? new Uint8Array(); - message.total = - object.total !== undefined && object.total !== null - ? long_1.default.fromValue(object.total) - : long_1.default.UZERO; - return message; - }, -}; -var globalThis = (() => { - if (typeof globalThis !== "undefined") - return globalThis; - if (typeof self !== "undefined") - return self; - if (typeof window !== "undefined") - return window; - if (typeof global !== "undefined") - return global; - throw "Unable to locate global object"; -})(); -function bytesFromBase64(b64) { - if (globalThis.Buffer) { - return Uint8Array.from(globalThis.Buffer.from(b64, "base64")); - } - else { - const bin = globalThis.atob(b64); - const arr = new Uint8Array(bin.length); - for (let i = 0; i < bin.length; ++i) { - arr[i] = bin.charCodeAt(i); + if (object.total !== undefined && object.total !== null) { + message.total = helpers_1.Long.fromValue(object.total); } - return arr; - } -} -function base64FromBytes(arr) { - if (globalThis.Buffer) { - return globalThis.Buffer.from(arr).toString("base64"); - } - else { - const bin = []; - arr.forEach((byte) => { - bin.push(String.fromCharCode(byte)); - }); - return globalThis.btoa(bin.join("")); + return message; } -} -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb2RlYy9jb3Ntb3MvYmFzZS9xdWVyeS92MWJldGExL3BhZ2luYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QixpRUFBcUM7QUFFeEIsUUFBQSxlQUFlLEdBQUcsMkJBQTJCLENBQUM7QUFtRTNELFNBQVMscUJBQXFCO0lBQzVCLE9BQU87UUFDTCxHQUFHLEVBQUUsSUFBSSxVQUFVLEVBQUU7UUFDckIsTUFBTSxFQUFFLGNBQUksQ0FBQyxLQUFLO1FBQ2xCLEtBQUssRUFBRSxjQUFJLENBQUMsS0FBSztRQUNqQixVQUFVLEVBQUUsS0FBSztRQUNqQixPQUFPLEVBQUUsS0FBSztLQUNmLENBQUM7QUFDSixDQUFDO0FBRVksUUFBQSxXQUFXLEdBQUc7SUFDekIsTUFBTSxDQUNKLE9BQW9CLEVBQ3BCLFNBQXFCLGlCQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUV4QyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUM3QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDNUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDaEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0sR0FBRyxLQUFLLFlBQVksaUJBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxpQkFBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLEdBQUcsR0FBRyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3hDLE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUN4QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsUUFBUSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2xCLEtBQUssQ0FBQztvQkFDSixPQUFPLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDN0IsTUFBTTtnQkFDUixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFVLENBQUM7b0JBQ3pDLE1BQU07Z0JBQ1IsS0FBSyxDQUFDO29CQUNKLE9BQU8sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBVSxDQUFDO29CQUN4QyxNQUFNO2dCQUNSLEtBQUssQ0FBQztvQkFDSixPQUFPLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDbkMsTUFBTTtnQkFDUixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ2hDLE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBVztRQUNsQixPQUFPO1lBQ0wsR0FBRyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxFQUFFO1lBQ3ZFLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBSSxDQUFDLEtBQUs7WUFDekUsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFJLENBQUMsS0FBSztZQUN0RSxVQUFVLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSztZQUN6RSxPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSztTQUNqRSxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFvQjtRQUN6QixNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUM7UUFDcEIsT0FBTyxDQUFDLEdBQUcsS0FBSyxTQUFTO1lBQ3ZCLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxlQUFlLENBQ3hCLE9BQU8sQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLFVBQVUsRUFBRSxDQUMzRCxDQUFDLENBQUM7UUFDTCxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVM7WUFDMUIsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxjQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUMzRCxPQUFPLENBQUMsS0FBSyxLQUFLLFNBQVM7WUFDekIsQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxjQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN6RCxPQUFPLENBQUMsVUFBVSxLQUFLLFNBQVMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFFLE9BQU8sQ0FBQyxPQUFPLEtBQUssU0FBUyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsV0FBVyxDQUNULE1BQVM7UUFFVCxNQUFNLE9BQU8sR0FBRyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3hDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsSUFBSSxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQzdDLE9BQU8sQ0FBQyxNQUFNO1lBQ1osTUFBTSxDQUFDLE1BQU0sS0FBSyxTQUFTLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxJQUFJO2dCQUNuRCxDQUFDLENBQUMsY0FBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO2dCQUMvQixDQUFDLENBQUMsY0FBSSxDQUFDLEtBQUssQ0FBQztRQUNqQixPQUFPLENBQUMsS0FBSztZQUNYLE1BQU0sQ0FBQyxLQUFLLEtBQUssU0FBUyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEtBQUssSUFBSTtnQkFDakQsQ0FBQyxDQUFDLGNBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLGNBQUksQ0FBQyxLQUFLLENBQUM7UUFDakIsT0FBTyxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQztRQUNoRCxPQUFPLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDO1FBQzFDLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRixDQUFDO0FBRUYsU0FBUyxzQkFBc0I7SUFDN0IsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxjQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDMUQsQ0FBQztBQUVZLFFBQUEsWUFBWSxHQUFHO0lBQzFCLE1BQU0sQ0FDSixPQUFxQixFQUNyQixTQUFxQixpQkFBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFFeEMsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNqQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDNUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0sR0FBRyxLQUFLLFlBQVksaUJBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxpQkFBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLEdBQUcsR0FBRyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyxzQkFBc0IsRUFBRSxDQUFDO1FBQ3pDLE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUN4QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsUUFBUSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2xCLEtBQUssQ0FBQztvQkFDSixPQUFPLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDakMsTUFBTTtnQkFDUixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFVLENBQUM7b0JBQ3hDLE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBVztRQUNsQixPQUFPO1lBQ0wsT0FBTyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUM1QixDQUFDLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7Z0JBQ2pDLENBQUMsQ0FBQyxJQUFJLFVBQVUsRUFBRTtZQUNwQixLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQUksQ0FBQyxLQUFLO1NBQ3ZFLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQXFCO1FBQzFCLE1BQU0sR0FBRyxHQUFRLEVBQUUsQ0FBQztRQUNwQixPQUFPLENBQUMsT0FBTyxLQUFLLFNBQVM7WUFDM0IsQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLGVBQWUsQ0FDNUIsT0FBTyxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxFQUFFLENBQ25FLENBQUMsQ0FBQztRQUNMLE9BQU8sQ0FBQyxLQUFLLEtBQUssU0FBUztZQUN6QixDQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLGNBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3pELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELFdBQVcsQ0FDVCxNQUFTO1FBRVQsTUFBTSxPQUFPLEdBQUcsc0JBQXNCLEVBQUUsQ0FBQztRQUN6QyxPQUFPLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLElBQUksSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNyRCxPQUFPLENBQUMsS0FBSztZQUNYLE1BQU0sQ0FBQyxLQUFLLEtBQUssU0FBUyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEtBQUssSUFBSTtnQkFDakQsQ0FBQyxDQUFDLGNBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLGNBQUksQ0FBQyxLQUFLLENBQUM7UUFDakIsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGLENBQUM7QUFLRixJQUFJLFVBQVUsR0FBUSxDQUFDLEdBQUcsRUFBRTtJQUMxQixJQUFJLE9BQU8sVUFBVSxLQUFLLFdBQVc7UUFBRSxPQUFPLFVBQVUsQ0FBQztJQUN6RCxJQUFJLE9BQU8sSUFBSSxLQUFLLFdBQVc7UUFBRSxPQUFPLElBQUksQ0FBQztJQUM3QyxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVc7UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUNqRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVc7UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUNqRCxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFFTCxTQUFTLGVBQWUsQ0FBQyxHQUFXO0lBQ2xDLElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RCLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sR0FBRyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakMsTUFBTSxHQUFHLEdBQUcsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDcEMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztBQUNILENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBQyxHQUFlO0lBQ3RDLElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RCLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxHQUFHLEdBQWEsRUFBRSxDQUFDO1FBQ3pCLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNuQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdkMsQ0FBQztBQUNILENBQUM7QUE4QkQsSUFBSSxpQkFBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssY0FBSSxFQUFFLENBQUM7SUFDM0IsaUJBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLGNBQVcsQ0FBQztJQUM1QixpQkFBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBQ2xCLENBQUM7QUFFRCxTQUFTLEtBQUssQ0FBQyxLQUFVO0lBQ3ZCLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDO0FBQy9DLENBQUMifQ== \ No newline at end of file +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb2RlYy9jb3Ntb3MvYmFzZS9xdWVyeS92MWJldGExL3BhZ2luYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsaURBQXdHO0FBQ3hHLHdEQUEwQztBQUU3QixRQUFBLGVBQWUsR0FBRywyQkFBMkIsQ0FBQztBQTREM0QsU0FBUyxxQkFBcUI7SUFDNUIsT0FBTztRQUNMLEdBQUcsRUFBRSxJQUFJLFVBQVUsRUFBRTtRQUNyQixNQUFNLEVBQUUsY0FBSSxDQUFDLEtBQUs7UUFDbEIsS0FBSyxFQUFFLGNBQUksQ0FBQyxLQUFLO1FBQ2pCLFVBQVUsRUFBRSxLQUFLO1FBQ2pCLE9BQU8sRUFBRSxLQUFLO0tBQ2YsQ0FBQztBQUNKLENBQUM7QUFDWSxRQUFBLFdBQVcsR0FBRztJQUN6QixPQUFPLEVBQUUsd0NBQXdDO0lBQ2pELE1BQU0sQ0FBQyxPQUFvQixFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ25FLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUM1QixNQUFNLENBQUMs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 \ No newline at end of file diff --git a/dist/codec/cosmos/base/v1beta1/coin.d.ts b/dist/codec/cosmos/base/v1beta1/coin.d.ts index bd6db32..0bb91fd 100644 --- a/dist/codec/cosmos/base/v1beta1/coin.d.ts +++ b/dist/codec/cosmos/base/v1beta1/coin.d.ts @@ -1,5 +1,5 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../../json-safe"; export declare const protobufPackage = "cosmos.base.v1beta1"; /** * Coin defines a token with a denomination and an amount. @@ -21,76 +21,31 @@ export interface DecCoin { denom: string; amount: string; } -/** - * IntProto defines a Protobuf wrapper around an Int object. - * Deprecated: Prefer to use math.Int directly. It supports binary Marshal and Unmarshal. - */ -export interface IntProto { - int: string; -} -/** - * DecProto defines a Protobuf wrapper around a Dec object. - * Deprecated: Prefer to use math.LegacyDec directly. It supports binary Marshal and Unmarshal. - */ -export interface DecProto { - dec: string; -} export declare const Coin: { + typeUrl: string; encode(message: Coin, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Coin; fromJSON(object: any): Coin; - toJSON(message: Coin): unknown; + toJSON(message: Coin): JsonSafe; fromPartial]: never; }>(object: I): Coin; + } & Record, never>>(object: I): Coin; }; export declare const DecCoin: { + typeUrl: string; encode(message: DecCoin, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DecCoin; fromJSON(object: any): DecCoin; - toJSON(message: DecCoin): unknown; + toJSON(message: DecCoin): JsonSafe; fromPartial]: never; }>(object: I): DecCoin; -}; -export declare const IntProto: { - encode(message: IntProto, writer?: _m0.Writer): _m0.Writer; - decode(input: _m0.Reader | Uint8Array, length?: number): IntProto; - fromJSON(object: any): IntProto; - toJSON(message: IntProto): unknown; - fromPartial]: never; }>(object: I): IntProto; -}; -export declare const DecProto: { - encode(message: DecProto, writer?: _m0.Writer): _m0.Writer; - decode(input: _m0.Reader | Uint8Array, length?: number): DecProto; - fromJSON(object: any): DecProto; - toJSON(message: DecProto): unknown; - fromPartial]: never; }>(object: I): DecProto; -}; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; + } & Record, never>>(object: I): DecCoin; }; -export {}; diff --git a/dist/codec/cosmos/base/v1beta1/coin.js b/dist/codec/cosmos/base/v1beta1/coin.js index c42fc43..a0da6ab 100644 --- a/dist/codec/cosmos/base/v1beta1/coin.js +++ b/dist/codec/cosmos/base/v1beta1/coin.js @@ -1,18 +1,42 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.DecProto = exports.IntProto = exports.DecCoin = exports.Coin = exports.protobufPackage = void 0; +exports.DecCoin = exports.Coin = exports.protobufPackage = void 0; /* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../../helpers"); exports.protobufPackage = "cosmos.base.v1beta1"; function createBaseCoin() { - return { denom: "", amount: "" }; + return { + denom: "", + amount: "" + }; } exports.Coin = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/cosmos.base.v1beta1.Coin", + encode(message, writer = _m0.Writer.create()) { if (message.denom !== "") { writer.uint32(10).string(message.denom); } @@ -22,7 +46,7 @@ exports.Coin = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseCoin(); while (reader.pos < end) { @@ -42,10 +66,12 @@ exports.Coin = { return message; }, fromJSON(object) { - return { - denom: isSet(object.denom) ? String(object.denom) : "", - amount: isSet(object.amount) ? String(object.amount) : "", - }; + const obj = createBaseCoin(); + if ((0, helpers_1.isSet)(object.denom)) + obj.denom = String(object.denom); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = String(object.amount); + return obj; }, toJSON(message) { const obj = {}; @@ -58,13 +84,17 @@ exports.Coin = { message.denom = object.denom ?? ""; message.amount = object.amount ?? ""; return message; - }, + } }; function createBaseDecCoin() { - return { denom: "", amount: "" }; + return { + denom: "", + amount: "" + }; } exports.DecCoin = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/cosmos.base.v1beta1.DecCoin", + encode(message, writer = _m0.Writer.create()) { if (message.denom !== "") { writer.uint32(10).string(message.denom); } @@ -74,7 +104,7 @@ exports.DecCoin = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseDecCoin(); while (reader.pos < end) { @@ -94,10 +124,12 @@ exports.DecCoin = { return message; }, fromJSON(object) { - return { - denom: isSet(object.denom) ? String(object.denom) : "", - amount: isSet(object.amount) ? String(object.amount) : "", - }; + const obj = createBaseDecCoin(); + if ((0, helpers_1.isSet)(object.denom)) + obj.denom = String(object.denom); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = String(object.amount); + return obj; }, toJSON(message) { const obj = {}; @@ -110,99 +142,6 @@ exports.DecCoin = { message.denom = object.denom ?? ""; message.amount = object.amount ?? ""; return message; - }, -}; -function createBaseIntProto() { - return { int: "" }; -} -exports.IntProto = { - encode(message, writer = minimal_1.default.Writer.create()) { - if (message.int !== "") { - writer.uint32(10).string(message.int); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); - let end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseIntProto(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.int = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }, - fromJSON(object) { - return { - int: isSet(object.int) ? String(object.int) : "", - }; - }, - toJSON(message) { - const obj = {}; - message.int !== undefined && (obj.int = message.int); - return obj; - }, - fromPartial(object) { - const message = createBaseIntProto(); - message.int = object.int ?? ""; - return message; - }, + } }; -function createBaseDecProto() { - return { dec: "" }; -} -exports.DecProto = { - encode(message, writer = minimal_1.default.Writer.create()) { - if (message.dec !== "") { - writer.uint32(10).string(message.dec); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); - let end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseDecProto(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.dec = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }, - fromJSON(object) { - return { - dec: isSet(object.dec) ? String(object.dec) : "", - }; - }, - toJSON(message) { - const obj = {}; - message.dec !== undefined && (obj.dec = message.dec); - return obj; - }, - fromPartial(object) { - const message = createBaseDecProto(); - message.dec = object.dec ?? ""; - return message; - }, -}; -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb2RlYy9jb3Ntb3MvYmFzZS92MWJldGExL2NvaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QixpRUFBcUM7QUFFeEIsUUFBQSxlQUFlLEdBQUcscUJBQXFCLENBQUM7QUF3Q3JELFNBQVMsY0FBYztJQUNyQixPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUM7QUFDbkMsQ0FBQztBQUVZLFFBQUEsSUFBSSxHQUFHO0lBQ2xCLE1BQU0sQ0FBQyxPQUFhLEVBQUUsU0FBcUIsaUJBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQzVELElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUN6QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUMxQixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxpQkFBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLGlCQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLElBQUksR0FBRyxHQUFHLE1BQU0sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFH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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb2RlYy9jb3Ntb3MvYmFzZS92MWJldGExL2NvaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsd0RBQTBDO0FBQzFDLDhDQUE2RDtBQUVoRCxRQUFBLGVBQWUsR0FBRyxxQkFBcUIsQ0FBQztBQXFCckQsU0FBUyxjQUFjO0lBQ3JCLE9BQU87UUFDTCxLQUFLLEVBQUUsRUFBRTtRQUNULE1BQU0sRUFBRSxFQUFFO0tBQ1gsQ0FBQztBQUNKLENBQUM7QUFDWSxRQUFBLElBQUksR0FBRztJQUNsQixPQUFPLEVBQUUsMkJBQTJCO0lBQ3BDLE1BQU0sQ0FBQyxPQUFhLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDNUQsSUFBSSxPQUFPLENBQUMsS0FBSyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUNELE1BQU0sQ0FBQyxLQUE4QixFQUFFLE1BQWU7UUFDcEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxZQUFZLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLElBQUksR0FBRyxHQUFHLE1BQU0s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 \ No newline at end of file diff --git a/dist/codec/cosmos/msg/v1/msg.d.ts b/dist/codec/cosmos/msg/v1/msg.d.ts index 5e50803..cb0ff5c 100644 --- a/dist/codec/cosmos/msg/v1/msg.d.ts +++ b/dist/codec/cosmos/msg/v1/msg.d.ts @@ -1 +1 @@ -export declare const protobufPackage = "cosmos.msg.v1"; +export {}; diff --git a/dist/codec/cosmos/msg/v1/msg.js b/dist/codec/cosmos/msg/v1/msg.js index 7a7f619..0a5bc6c 100644 --- a/dist/codec/cosmos/msg/v1/msg.js +++ b/dist/codec/cosmos/msg/v1/msg.js @@ -1,6 +1,3 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.protobufPackage = void 0; -/* eslint-disable */ -exports.protobufPackage = "cosmos.msg.v1"; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXNnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2Nvc21vcy9tc2cvdjEvbXNnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9CQUFvQjtBQUNQLFFBQUEsZUFBZSxHQUFHLGVBQWUsQ0FBQyJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXNnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2Nvc21vcy9tc2cvdjEvbXNnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ== \ No newline at end of file diff --git a/dist/codec/cosmos_proto/cosmos.d.ts b/dist/codec/cosmos_proto/cosmos.d.ts index 5b345cf..cb0ff5c 100644 --- a/dist/codec/cosmos_proto/cosmos.d.ts +++ b/dist/codec/cosmos_proto/cosmos.d.ts @@ -1,99 +1 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; -export declare const protobufPackage = "cosmos_proto"; -export declare enum ScalarType { - SCALAR_TYPE_UNSPECIFIED = 0, - SCALAR_TYPE_STRING = 1, - SCALAR_TYPE_BYTES = 2, - UNRECOGNIZED = -1 -} -export declare function scalarTypeFromJSON(object: any): ScalarType; -export declare function scalarTypeToJSON(object: ScalarType): string; -/** - * InterfaceDescriptor describes an interface type to be used with - * accepts_interface and implements_interface and declared by declare_interface. - */ -export interface InterfaceDescriptor { - /** - * name is the name of the interface. It should be a short-name (without - * a period) such that the fully qualified name of the interface will be - * package.name, ex. for the package a.b and interface named C, the - * fully-qualified name will be a.b.C. - */ - name: string; - /** - * description is a human-readable description of the interface and its - * purpose. - */ - description: string; -} -/** - * ScalarDescriptor describes an scalar type to be used with - * the scalar field option and declared by declare_scalar. - * Scalars extend simple protobuf built-in types with additional - * syntax and semantics, for instance to represent big integers. - * Scalars should ideally define an encoding such that there is only one - * valid syntactical representation for a given semantic meaning, - * i.e. the encoding should be deterministic. - */ -export interface ScalarDescriptor { - /** - * name is the name of the scalar. It should be a short-name (without - * a period) such that the fully qualified name of the scalar will be - * package.name, ex. for the package a.b and scalar named C, the - * fully-qualified name will be a.b.C. - */ - name: string; - /** - * description is a human-readable description of the scalar and its - * encoding format. For instance a big integer or decimal scalar should - * specify precisely the expected encoding format. - */ - description: string; - /** - * field_type is the type of field with which this scalar can be used. - * Scalars can be used with one and only one type of field so that - * encoding standards and simple and clear. Currently only string and - * bytes fields are supported for scalars. - */ - fieldType: ScalarType[]; -} -export declare const InterfaceDescriptor: { - encode(message: InterfaceDescriptor, writer?: _m0.Writer): _m0.Writer; - decode(input: _m0.Reader | Uint8Array, length?: number): InterfaceDescriptor; - fromJSON(object: any): InterfaceDescriptor; - toJSON(message: InterfaceDescriptor): unknown; - fromPartial]: never; }>(object: I): InterfaceDescriptor; -}; -export declare const ScalarDescriptor: { - encode(message: ScalarDescriptor, writer?: _m0.Writer): _m0.Writer; - decode(input: _m0.Reader | Uint8Array, length?: number): ScalarDescriptor; - fromJSON(object: any): ScalarDescriptor; - toJSON(message: ScalarDescriptor): unknown; - fromPartial]: never; }) | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): ScalarDescriptor; -}; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; -}; export {}; diff --git a/dist/codec/cosmos_proto/cosmos.js b/dist/codec/cosmos_proto/cosmos.js index f85b097..99082f8 100644 --- a/dist/codec/cosmos_proto/cosmos.js +++ b/dist/codec/cosmos_proto/cosmos.js @@ -1,189 +1,3 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; Object.defineProperty(exports, "__esModule", { value: true }); -exports.ScalarDescriptor = exports.InterfaceDescriptor = exports.scalarTypeToJSON = exports.scalarTypeFromJSON = exports.ScalarType = exports.protobufPackage = void 0; -/* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); -exports.protobufPackage = "cosmos_proto"; -var ScalarType; -(function (ScalarType) { - ScalarType[ScalarType["SCALAR_TYPE_UNSPECIFIED"] = 0] = "SCALAR_TYPE_UNSPECIFIED"; - ScalarType[ScalarType["SCALAR_TYPE_STRING"] = 1] = "SCALAR_TYPE_STRING"; - ScalarType[ScalarType["SCALAR_TYPE_BYTES"] = 2] = "SCALAR_TYPE_BYTES"; - ScalarType[ScalarType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; -})(ScalarType || (exports.ScalarType = ScalarType = {})); -function scalarTypeFromJSON(object) { - switch (object) { - case 0: - case "SCALAR_TYPE_UNSPECIFIED": - return ScalarType.SCALAR_TYPE_UNSPECIFIED; - case 1: - case "SCALAR_TYPE_STRING": - return ScalarType.SCALAR_TYPE_STRING; - case 2: - case "SCALAR_TYPE_BYTES": - return ScalarType.SCALAR_TYPE_BYTES; - case -1: - case "UNRECOGNIZED": - default: - return ScalarType.UNRECOGNIZED; - } -} -exports.scalarTypeFromJSON = scalarTypeFromJSON; -function scalarTypeToJSON(object) { - switch (object) { - case ScalarType.SCALAR_TYPE_UNSPECIFIED: - return "SCALAR_TYPE_UNSPECIFIED"; - case ScalarType.SCALAR_TYPE_STRING: - return "SCALAR_TYPE_STRING"; - case ScalarType.SCALAR_TYPE_BYTES: - return "SCALAR_TYPE_BYTES"; - case ScalarType.UNRECOGNIZED: - default: - return "UNRECOGNIZED"; - } -} -exports.scalarTypeToJSON = scalarTypeToJSON; -function createBaseInterfaceDescriptor() { - return { name: "", description: "" }; -} -exports.InterfaceDescriptor = { - encode(message, writer = minimal_1.default.Writer.create()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.description !== "") { - writer.uint32(18).string(message.description); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); - let end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseInterfaceDescriptor(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.description = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }, - fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - description: isSet(object.description) ? String(object.description) : "", - }; - }, - toJSON(message) { - const obj = {}; - message.name !== undefined && (obj.name = message.name); - message.description !== undefined && - (obj.description = message.description); - return obj; - }, - fromPartial(object) { - const message = createBaseInterfaceDescriptor(); - message.name = object.name ?? ""; - message.description = object.description ?? ""; - return message; - }, -}; -function createBaseScalarDescriptor() { - return { name: "", description: "", fieldType: [] }; -} -exports.ScalarDescriptor = { - encode(message, writer = minimal_1.default.Writer.create()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.description !== "") { - writer.uint32(18).string(message.description); - } - writer.uint32(26).fork(); - for (const v of message.fieldType) { - writer.int32(v); - } - writer.ldelim(); - return writer; - }, - decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); - let end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseScalarDescriptor(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.description = reader.string(); - break; - case 3: - if ((tag & 7) === 2) { - const end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) { - message.fieldType.push(reader.int32()); - } - } - else { - message.fieldType.push(reader.int32()); - } - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }, - fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - description: isSet(object.description) ? String(object.description) : "", - fieldType: Array.isArray(object?.fieldType) - ? object.fieldType.map((e) => scalarTypeFromJSON(e)) - : [], - }; - }, - toJSON(message) { - const obj = {}; - message.name !== undefined && (obj.name = message.name); - message.description !== undefined && - (obj.description = message.description); - if (message.fieldType) { - obj.fieldType = message.fieldType.map((e) => scalarTypeToJSON(e)); - } - else { - obj.fieldType = []; - } - return obj; - }, - fromPartial(object) { - const message = createBaseScalarDescriptor(); - message.name = object.name ?? ""; - message.description = object.description ?? ""; - message.fieldType = object.fieldType?.map((e) => e) || []; - return message; - }, -}; -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zbW9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvZGVjL2Nvc21vc19wcm90by9jb3Ntb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QixpRUFBcUM7QUFFeEIsUUFBQSxlQUFlLEdBQUcsY0FBYyxDQUFDO0FBRTlDLElBQVksVUFLWDtBQUxELFdBQVksVUFBVTtJQUNwQixpRkFBMkIsQ0FBQTtJQUMzQix1RUFBc0IsQ0FBQTtJQUN0QixxRUFBcUIsQ0FBQTtJQUNyQiw0REFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBTFcsVUFBVSwwQkFBVixVQUFVLFFBS3JCO0FBRUQsU0FBZ0Isa0JBQWtCLENBQUMsTUFBVztJQUM1QyxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxDQUFDLENBQUM7UUFDUCxLQUFLLHlCQUF5QjtZQUM1QixPQUFPLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQztRQUM1QyxLQUFLLENBQUMsQ0FBQztRQUNQLEtBQUssb0JBQW9CO1lBQ3ZCLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDO1FBQ3ZDLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxtQkFBbUI7WUFDdEIsT0FBTyxVQUFVLENBQUMsaUJBQWlCLENBQUM7UUFDdEMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNSLEtBQUssY0FBYyxDQUFDO1FBQ3BCO1lBQ0UsT0FBTyxVQUFVLENBQUMsWUFBWSxDQUFDO0lBQ25DLENBQUM7QUFDSCxDQUFDO0FBaEJELGdEQWdCQztBQUVELFNBQWdCLGdCQUFnQixDQUFDLE1BQWtCO0lBQ2pELFFBQVEsTUFBTSxFQUFFLENBQUM7UUFDZixLQUFLLFVBQVUsQ0FBQyx1QkFBdUI7WUFDckMsT0FBTyx5QkFBeUIsQ0FBQztRQUNuQyxLQUFLLFVBQVUsQ0FBQyxrQkFBa0I7WUFDaEMsT0FBTyxvQkFBb0IsQ0FBQztRQUM5QixLQUFLLFVBQVUsQ0FB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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zbW9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvZGVjL2Nvc21vc19wcm90by9jb3Ntb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9 \ No newline at end of file diff --git a/dist/codec/dht/module/v1/module.d.ts b/dist/codec/dht/module/v1/module.d.ts new file mode 100644 index 0000000..cc34edf --- /dev/null +++ b/dist/codec/dht/module/v1/module.d.ts @@ -0,0 +1,23 @@ +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../../json-safe"; +export declare const protobufPackage = "nesaorg.nesachain.dht.module.v1"; +/** Module is the config object for the module. */ +export interface Module { + /** + * authority defines the custom module authority. If not set, defaults to the + * governance module. + */ + authority: string; +} +export declare const Module: { + typeUrl: string; + encode(message: Module, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Module; + fromJSON(object: any): Module; + toJSON(message: Module): JsonSafe; + fromPartial, never>>(object: I): Module; +}; diff --git a/dist/codec/dht/module/v1/module.js b/dist/codec/dht/module/v1/module.js new file mode 100644 index 0000000..c22f487 --- /dev/null +++ b/dist/codec/dht/module/v1/module.js @@ -0,0 +1,78 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Module = exports.protobufPackage = void 0; +/* eslint-disable */ +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../../helpers"); +exports.protobufPackage = "nesaorg.nesachain.dht.module.v1"; +function createBaseModule() { + return { + authority: "" + }; +} +exports.Module = { + typeUrl: "/nesaorg.nesachain.dht.module.v1.Module", + encode(message, writer = _m0.Writer.create()) { + if (message.authority !== "") { + writer.uint32(10).string(message.authority); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseModule(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.authority = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseModule(); + if ((0, helpers_1.isSet)(object.authority)) + obj.authority = String(object.authority); + return obj; + }, + toJSON(message) { + const obj = {}; + message.authority !== undefined && (obj.authority = message.authority); + return obj; + }, + fromPartial(object) { + const message = createBaseModule(); + message.authority = object.authority ?? ""; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2RodC9tb2R1bGUvdjEvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLHdEQUEwQztBQUMxQyw4Q0FBNkQ7QUFFaEQsUUFBQSxlQUFlLEdBQUcsaUNBQWlDLENBQUM7QUFTakUsU0FBUyxnQkFBZ0I7SUFDdkIsT0FBTztRQUNMLFNBQVMsRUFBRSxFQUFFO0tBQ2QsQ0FBQztBQUNKLENBQUM7QUFDWSxRQUFBLE1BQU0sR0FBRztJQUNwQixPQUFPLEVBQUUseUNBQXlDO0lBQ2xELE1BQU0sQ0FBQyxPQUFlLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDOUQsSUFBSSxPQUFPLENBQUMsU0FBUyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUNELE1BQU0sQ0FBQyxLQUE4QixFQUFFLE1BQWU7UUFDcEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxZQUFZLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLElBQUksR0FBRyxHQUFHLE1BQU0sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDO1FBQ2xFLE1BQU0sT0FBTyxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFDbkMsT0FBTyxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM1QixRQUFRLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDbEIsS0FBSyxDQUFDO29CQUNKLE9BQU8sQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUNwQyxNQUFNO2dCQUNSO29CQUNFLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUN6QixNQUFNO1lBQ1YsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ0QsUUFBUSxDQUFDLE1BQVc7UUFDbEIsTUFBTSxHQUFHLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUMvQixJQUFJLElBQUEsZUFBSyxFQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7WUFBRSxHQUFHLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBQ0QsTUFBTSxDQUFDLE9BQWU7UUFDcEIsTUFBTSxHQUFHLEdBQVEsRUFBRSxDQUFDO1FBQ3BCLE9BQU8sQ0FBQyxTQUFTLEtBQUssU0FBUyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBQ0QsV0FBVyxDQUEwQyxNQUFTO1FBQzVELE1BQU0sT0FBTyxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFDbkMsT0FBTyxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztRQUMzQyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0YsQ0FBQyJ9 \ No newline at end of file diff --git a/dist/codec/dht/v1/deposit.d.ts b/dist/codec/dht/v1/deposit.d.ts new file mode 100644 index 0000000..967fae7 --- /dev/null +++ b/dist/codec/dht/v1/deposit.d.ts @@ -0,0 +1,120 @@ +/// +import { Coin } from "../../cosmos/base/v1beta1/coin"; +import { Timestamp } from "../../google/protobuf/timestamp"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +/** BondStatus defines the deposit status of a miner or Orchestrator. */ +export declare enum BondStatus { + /** BOND_STATUS_UNSPECIFIED - UNSPECIFIED defines an invalid validator status. */ + BOND_STATUS_UNSPECIFIED = 0, + /** BOND_STATUS_UNBONDED - UNBONDED defines a validator that is not bonded. */ + BOND_STATUS_UNBONDED = 1, + /** BOND_STATUS_UNBONDING - UNBONDING defines a validator that is unbonding. */ + BOND_STATUS_UNBONDING = 2, + /** BOND_STATUS_BONDED - BONDED defines a validator that is bonded. */ + BOND_STATUS_BONDED = 3, + UNRECOGNIZED = -1 +} +export declare function bondStatusFromJSON(object: any): BondStatus; +export declare function bondStatusToJSON(object: BondStatus): string; +/** UnbondingEntry defines an unbonding entry of a miner or Orchestrator. */ +export interface UnbondingEntry { + nodeId: string; + amount: Coin; + completionTime: Timestamp; + receiver: string; +} +export declare const UnbondingEntry: { + typeUrl: string; + encode(message: UnbondingEntry, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): UnbondingEntry; + fromJSON(object: any): UnbondingEntry; + toJSON(message: UnbondingEntry): JsonSafe; + fromPartial, never>) | undefined; + completionTime?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + receiver?: string | undefined; + } & Record, never>>(object: I): UnbondingEntry; +}; diff --git a/dist/codec/dht/v1/deposit.js b/dist/codec/dht/v1/deposit.js new file mode 100644 index 0000000..60bba6f --- /dev/null +++ b/dist/codec/dht/v1/deposit.js @@ -0,0 +1,167 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UnbondingEntry = exports.bondStatusToJSON = exports.bondStatusFromJSON = exports.BondStatus = exports.protobufPackage = void 0; +/* eslint-disable */ +const coin_1 = require("../../cosmos/base/v1beta1/coin"); +const timestamp_1 = require("../../google/protobuf/timestamp"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +exports.protobufPackage = "dht.v1"; +/** BondStatus defines the deposit status of a miner or Orchestrator. */ +var BondStatus; +(function (BondStatus) { + /** BOND_STATUS_UNSPECIFIED - UNSPECIFIED defines an invalid validator status. */ + BondStatus[BondStatus["BOND_STATUS_UNSPECIFIED"] = 0] = "BOND_STATUS_UNSPECIFIED"; + /** BOND_STATUS_UNBONDED - UNBONDED defines a validator that is not bonded. */ + BondStatus[BondStatus["BOND_STATUS_UNBONDED"] = 1] = "BOND_STATUS_UNBONDED"; + /** BOND_STATUS_UNBONDING - UNBONDING defines a validator that is unbonding. */ + BondStatus[BondStatus["BOND_STATUS_UNBONDING"] = 2] = "BOND_STATUS_UNBONDING"; + /** BOND_STATUS_BONDED - BONDED defines a validator that is bonded. */ + BondStatus[BondStatus["BOND_STATUS_BONDED"] = 3] = "BOND_STATUS_BONDED"; + BondStatus[BondStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(BondStatus || (exports.BondStatus = BondStatus = {})); +function bondStatusFromJSON(object) { + switch (object) { + case 0: + case "BOND_STATUS_UNSPECIFIED": + return BondStatus.BOND_STATUS_UNSPECIFIED; + case 1: + case "BOND_STATUS_UNBONDED": + return BondStatus.BOND_STATUS_UNBONDED; + case 2: + case "BOND_STATUS_UNBONDING": + return BondStatus.BOND_STATUS_UNBONDING; + case 3: + case "BOND_STATUS_BONDED": + return BondStatus.BOND_STATUS_BONDED; + case -1: + case "UNRECOGNIZED": + default: + return BondStatus.UNRECOGNIZED; + } +} +exports.bondStatusFromJSON = bondStatusFromJSON; +function bondStatusToJSON(object) { + switch (object) { + case BondStatus.BOND_STATUS_UNSPECIFIED: + return "BOND_STATUS_UNSPECIFIED"; + case BondStatus.BOND_STATUS_UNBONDED: + return "BOND_STATUS_UNBONDED"; + case BondStatus.BOND_STATUS_UNBONDING: + return "BOND_STATUS_UNBONDING"; + case BondStatus.BOND_STATUS_BONDED: + return "BOND_STATUS_BONDED"; + case BondStatus.UNRECOGNIZED: + default: + return "UNRECOGNIZED"; + } +} +exports.bondStatusToJSON = bondStatusToJSON; +function createBaseUnbondingEntry() { + return { + nodeId: "", + amount: coin_1.Coin.fromPartial({}), + completionTime: timestamp_1.Timestamp.fromPartial({}), + receiver: "" + }; +} +exports.UnbondingEntry = { + typeUrl: "/dht.v1.UnbondingEntry", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + if (message.amount !== undefined) { + coin_1.Coin.encode(message.amount, writer.uint32(18).fork()).ldelim(); + } + if (message.completionTime !== undefined) { + timestamp_1.Timestamp.encode(message.completionTime, writer.uint32(26).fork()).ldelim(); + } + if (message.receiver !== "") { + writer.uint32(34).string(message.receiver); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUnbondingEntry(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + case 2: + message.amount = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 3: + message.completionTime = timestamp_1.Timestamp.decode(reader, reader.uint32()); + break; + case 4: + message.receiver = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseUnbondingEntry(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = coin_1.Coin.fromJSON(object.amount); + if ((0, helpers_1.isSet)(object.completionTime)) + obj.completionTime = (0, helpers_1.fromJsonTimestamp)(object.completionTime); + if ((0, helpers_1.isSet)(object.receiver)) + obj.receiver = String(object.receiver); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.amount !== undefined && (obj.amount = message.amount ? coin_1.Coin.toJSON(message.amount) : undefined); + message.completionTime !== undefined && (obj.completionTime = (0, helpers_1.fromTimestamp)(message.completionTime).toISOString()); + message.receiver !== undefined && (obj.receiver = message.receiver); + return obj; + }, + fromPartial(object) { + const message = createBaseUnbondingEntry(); + message.nodeId = object.nodeId ?? ""; + if (object.amount !== undefined && object.amount !== null) { + message.amount = coin_1.Coin.fromPartial(object.amount); + } + if (object.completionTime !== undefined && object.completionTime !== null) { + message.completionTime = timestamp_1.Timestamp.fromPartial(object.completionTime); + } + message.receiver = object.receiver ?? ""; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwb3NpdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9kaHQvdjEvZGVwb3NpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQix5REFBc0Q7QUFDdEQsK0RBQTREO0FBQzVELHdEQUEwQztBQUMxQywyQ0FBNEY7QUFFL0UsUUFBQSxlQUFlLEdBQUcsUUFBUSxDQUFDO0FBQ3hDLHdFQUF3RTtBQUN4RSxJQUFZLFVBVVg7QUFWRCxXQUFZLFVBQVU7SUFDcEIsaUZBQWlGO0lBQ2pGLGlGQUEyQixDQUFBO0lBQzNCLDhFQUE4RTtJQUM5RSwyRUFBd0IsQ0FBQTtJQUN4QiwrRUFBK0U7SUFDL0UsNkVBQXlCLENBQUE7SUFDekIsc0VBQXNFO0lBQ3RFLHVFQUFzQixDQUFBO0lBQ3RCLDREQUFpQixDQUFBO0FBQ25CLENBQUMsRUFWVyxVQUFVLDBCQUFWLFVBQVUsUUFVckI7QUFDRCxTQUFnQixrQkFBa0IsQ0FBQyxNQUFXO0lBQzVDLFFBQVEsTUFBTSxFQUFFLENBQUM7UUFDZixLQUFLLENBQUMsQ0FBQztRQUNQLEtBQUsseUJBQXlCO1lBQzVCLE9BQU8sVUFBVSxDQUFDLHVCQUF1QixDQUFDO1FBQzVDLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxzQkFBc0I7WUFDekIsT0FBTyxVQUFVLENBQUMsb0JBQW9CLENBQUM7UUFDekMsS0FBSyxDQUFDLENBQUM7UUFDUCxLQUFLLHVCQUF1QjtZQUMxQixPQUFPLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQztRQUMxQyxLQUFLLENBQUMsQ0FBQztRQUNQLEtBQUssb0JBQW9CO1lBQ3ZCLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDO1FBQ3ZDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDUixLQUFLLGNBQWMsQ0FBQztRQUNwQjtZQUNFLE9BQU8sVUFBVSxDQUFDLFlBQVksQ0FBQztJQUNuQyxDQUFD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 \ No newline at end of file diff --git a/dist/codec/dht/v1/genesis.d.ts b/dist/codec/dht/v1/genesis.d.ts new file mode 100644 index 0000000..6625575 --- /dev/null +++ b/dist/codec/dht/v1/genesis.d.ts @@ -0,0 +1,1619 @@ +/// +import { Params } from "./params"; +import { Model } from "./model"; +import { Node } from "./node"; +import { Miner } from "./miner"; +import { Orchestrator } from "./orchestrator"; +import { ModelBlock } from "./model_block"; +import { UnbondingEntry } from "./deposit"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +/** OrchestratorMiner defines an association between an orchestrator and a miner. */ +export interface OrchestratorMiner { + orchestratorId: string; + minerId: string; +} +/** GenesisState defines the dht module's genesis state. */ +export interface GenesisState { + /** params defines all the parameters of the module. */ + params: Params; + model: Model[]; + node: Node[]; + miner: Miner[]; + orchestrator: Orchestrator[]; + orchestratorMiner: OrchestratorMiner[]; + modelBlock: ModelBlock[]; + minerUnbonding: UnbondingEntry[]; + orchestratorUnbonding: UnbondingEntry[]; + modelCreators: string[]; + modelAllowList: string[]; +} +export declare const OrchestratorMiner: { + typeUrl: string; + encode(message: OrchestratorMiner, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): OrchestratorMiner; + fromJSON(object: any): OrchestratorMiner; + toJSON(message: OrchestratorMiner): JsonSafe; + fromPartial, never>>(object: I): OrchestratorMiner; +}; +export declare const GenesisState: { + typeUrl: string; + encode(message: GenesisState, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): GenesisState; + fromJSON(object: any): GenesisState; + toJSON(message: GenesisState): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + minerValidTime?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + adminAccount?: string | undefined; + orchestratorMinDeposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + minerMinDeposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + orchestratorUnbondingPeriod?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + minerUnbondingPeriod?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + labelAdminAccount?: string | undefined; + reputationAdminAccount?: string | undefined; + priceTokenDenoms?: (string[] & string[] & Record, never>) | undefined; + modelDefaultTokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + model?: ({ + creator?: string | undefined; + modelName?: string | undefined; + blockCids?: string[] | undefined; + tokenPrice?: { + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } | undefined; + }[] & ({ + creator?: string | undefined; + modelName?: string | undefined; + blockCids?: string[] | undefined; + tokenPrice?: { + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } | undefined; + } & { + creator?: string | undefined; + modelName?: string | undefined; + blockCids?: (string[] & string[] & Record, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + node?: ({ + nodeId?: string | undefined; + publicName?: string | undefined; + version?: string | undefined; + networkAddress?: string | undefined; + walletAddress?: string | undefined; + vram?: string | number | import("long").Long | undefined; + networkRps?: number | undefined; + nextPings?: Uint8Array[] | undefined; + usingRelay?: boolean | undefined; + labels?: string[] | undefined; + }[] & ({ + nodeId?: string | undefined; + publicName?: string | undefined; + version?: string | undefined; + networkAddress?: string | undefined; + walletAddress?: string | undefined; + vram?: string | number | import("long").Long | undefined; + networkRps?: number | undefined; + nextPings?: Uint8Array[] | undefined; + usingRelay?: boolean | undefined; + labels?: string[] | undefined; + } & { + nodeId?: string | undefined; + publicName?: string | undefined; + version?: string | undefined; + networkAddress?: string | undefined; + walletAddress?: string | undefined; + vram?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + networkRps?: number | undefined; + nextPings?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; + usingRelay?: boolean | undefined; + labels?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + miner?: ({ + nodeId?: string | undefined; + startBlock?: string | number | import("long").Long | undefined; + endBlock?: string | number | import("long").Long | undefined; + torchDtype?: string | undefined; + quantType?: string | undefined; + cacheTokensLeft?: string | number | import("long").Long | undefined; + inferenceRps?: number | undefined; + modelName?: string | undefined; + validUntil?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + reputations?: { + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] | undefined; + }[] & ({ + nodeId?: string | undefined; + startBlock?: string | number | import("long").Long | undefined; + endBlock?: string | number | import("long").Long | undefined; + torchDtype?: string | undefined; + quantType?: string | undefined; + cacheTokensLeft?: string | number | import("long").Long | undefined; + inferenceRps?: number | undefined; + modelName?: string | undefined; + validUntil?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + reputations?: { + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] | undefined; + } & { + nodeId?: string | undefined; + startBlock?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + endBlock?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + torchDtype?: string | undefined; + quantType?: string | undefined; + cacheTokensLeft?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + inferenceRps?: number | undefined; + modelName?: string | undefined; + validUntil?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + reputations?: ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] & ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + } & { + name?: string | undefined; + score?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + orchestrator?: ({ + nodeId?: string | undefined; + modelName?: string | undefined; + inferenceType?: import("./orchestrator").InferenceType | undefined; + status?: import("./orchestrator").Availability | undefined; + blockCount?: (string | number | import("long").Long)[] | undefined; + validUntil?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + reputations?: { + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] | undefined; + }[] & ({ + nodeId?: string | undefined; + modelName?: string | undefined; + inferenceType?: import("./orchestrator").InferenceType | undefined; + status?: import("./orchestrator").Availability | undefined; + blockCount?: (string | number | import("long").Long)[] | undefined; + validUntil?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + reputations?: { + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] | undefined; + } & { + nodeId?: string | undefined; + modelName?: string | undefined; + inferenceType?: import("./orchestrator").InferenceType | undefined; + status?: import("./orchestrator").Availability | undefined; + blockCount?: ((string | number | import("long").Long)[] & (string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>))[] & Record, never>) | undefined; + validUntil?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + reputations?: ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] & ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + } & { + name?: string | undefined; + score?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + orchestratorMiner?: ({ + orchestratorId?: string | undefined; + minerId?: string | undefined; + }[] & ({ + orchestratorId?: string | undefined; + minerId?: string | undefined; + } & { + orchestratorId?: string | undefined; + minerId?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + modelBlock?: ({ + modelName?: string | undefined; + nodeId?: string | undefined; + blockId?: number | undefined; + cid?: string | undefined; + }[] & ({ + modelName?: string | undefined; + nodeId?: string | undefined; + blockId?: number | undefined; + cid?: string | undefined; + } & { + modelName?: string | undefined; + nodeId?: string | undefined; + blockId?: number | undefined; + cid?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + minerUnbonding?: ({ + nodeId?: string | undefined; + amount?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + completionTime?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + receiver?: string | undefined; + }[] & ({ + nodeId?: string | undefined; + amount?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + completionTime?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + receiver?: string | undefined; + } & { + nodeId?: string | undefined; + amount?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + completionTime?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + receiver?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + orchestratorUnbonding?: ({ + nodeId?: string | undefined; + amount?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + completionTime?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + receiver?: string | undefined; + }[] & ({ + nodeId?: string | undefined; + amount?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + completionTime?: { + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } | undefined; + receiver?: string | undefined; + } & { + nodeId?: string | undefined; + amount?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + completionTime?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + receiver?: string | undefined; + } & Record, never>)[] & Record, never>) | undefined; + modelCreators?: (string[] & string[] & Record, never>) | undefined; + modelAllowList?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>>(object: I): GenesisState; +}; diff --git a/dist/codec/dht/v1/genesis.js b/dist/codec/dht/v1/genesis.js new file mode 100644 index 0000000..e8e2f0c --- /dev/null +++ b/dist/codec/dht/v1/genesis.js @@ -0,0 +1,305 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.GenesisState = exports.OrchestratorMiner = exports.protobufPackage = void 0; +/* eslint-disable */ +const params_1 = require("./params"); +const model_1 = require("./model"); +const node_1 = require("./node"); +const miner_1 = require("./miner"); +const orchestrator_1 = require("./orchestrator"); +const model_block_1 = require("./model_block"); +const deposit_1 = require("./deposit"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +exports.protobufPackage = "dht.v1"; +function createBaseOrchestratorMiner() { + return { + orchestratorId: "", + minerId: "" + }; +} +exports.OrchestratorMiner = { + typeUrl: "/dht.v1.OrchestratorMiner", + encode(message, writer = _m0.Writer.create()) { + if (message.orchestratorId !== "") { + writer.uint32(10).string(message.orchestratorId); + } + if (message.minerId !== "") { + writer.uint32(18).string(message.minerId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseOrchestratorMiner(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.orchestratorId = reader.string(); + break; + case 2: + message.minerId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseOrchestratorMiner(); + if ((0, helpers_1.isSet)(object.orchestratorId)) + obj.orchestratorId = String(object.orchestratorId); + if ((0, helpers_1.isSet)(object.minerId)) + obj.minerId = String(object.minerId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.orchestratorId !== undefined && (obj.orchestratorId = message.orchestratorId); + message.minerId !== undefined && (obj.minerId = message.minerId); + return obj; + }, + fromPartial(object) { + const message = createBaseOrchestratorMiner(); + message.orchestratorId = object.orchestratorId ?? ""; + message.minerId = object.minerId ?? ""; + return message; + } +}; +function createBaseGenesisState() { + return { + params: params_1.Params.fromPartial({}), + model: [], + node: [], + miner: [], + orchestrator: [], + orchestratorMiner: [], + modelBlock: [], + minerUnbonding: [], + orchestratorUnbonding: [], + modelCreators: [], + modelAllowList: [] + }; +} +exports.GenesisState = { + typeUrl: "/dht.v1.GenesisState", + encode(message, writer = _m0.Writer.create()) { + if (message.params !== undefined) { + params_1.Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + for (const v of message.model) { + model_1.Model.encode(v, writer.uint32(18).fork()).ldelim(); + } + for (const v of message.node) { + node_1.Node.encode(v, writer.uint32(26).fork()).ldelim(); + } + for (const v of message.miner) { + miner_1.Miner.encode(v, writer.uint32(34).fork()).ldelim(); + } + for (const v of message.orchestrator) { + orchestrator_1.Orchestrator.encode(v, writer.uint32(42).fork()).ldelim(); + } + for (const v of message.orchestratorMiner) { + exports.OrchestratorMiner.encode(v, writer.uint32(50).fork()).ldelim(); + } + for (const v of message.modelBlock) { + model_block_1.ModelBlock.encode(v, writer.uint32(58).fork()).ldelim(); + } + for (const v of message.minerUnbonding) { + deposit_1.UnbondingEntry.encode(v, writer.uint32(66).fork()).ldelim(); + } + for (const v of message.orchestratorUnbonding) { + deposit_1.UnbondingEntry.encode(v, writer.uint32(74).fork()).ldelim(); + } + for (const v of message.modelCreators) { + writer.uint32(82).string(v); + } + for (const v of message.modelAllowList) { + writer.uint32(90).string(v); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseGenesisState(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.params = params_1.Params.decode(reader, reader.uint32()); + break; + case 2: + message.model.push(model_1.Model.decode(reader, reader.uint32())); + break; + case 3: + message.node.push(node_1.Node.decode(reader, reader.uint32())); + break; + case 4: + message.miner.push(miner_1.Miner.decode(reader, reader.uint32())); + break; + case 5: + message.orchestrator.push(orchestrator_1.Orchestrator.decode(reader, reader.uint32())); + break; + case 6: + message.orchestratorMiner.push(exports.OrchestratorMiner.decode(reader, reader.uint32())); + break; + case 7: + message.modelBlock.push(model_block_1.ModelBlock.decode(reader, reader.uint32())); + break; + case 8: + message.minerUnbonding.push(deposit_1.UnbondingEntry.decode(reader, reader.uint32())); + break; + case 9: + message.orchestratorUnbonding.push(deposit_1.UnbondingEntry.decode(reader, reader.uint32())); + break; + case 10: + message.modelCreators.push(reader.string()); + break; + case 11: + message.modelAllowList.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseGenesisState(); + if ((0, helpers_1.isSet)(object.params)) + obj.params = params_1.Params.fromJSON(object.params); + if (Array.isArray(object?.model)) + obj.model = object.model.map((e) => model_1.Model.fromJSON(e)); + if (Array.isArray(object?.node)) + obj.node = object.node.map((e) => node_1.Node.fromJSON(e)); + if (Array.isArray(object?.miner)) + obj.miner = object.miner.map((e) => miner_1.Miner.fromJSON(e)); + if (Array.isArray(object?.orchestrator)) + obj.orchestrator = object.orchestrator.map((e) => orchestrator_1.Orchestrator.fromJSON(e)); + if (Array.isArray(object?.orchestratorMiner)) + obj.orchestratorMiner = object.orchestratorMiner.map((e) => exports.OrchestratorMiner.fromJSON(e)); + if (Array.isArray(object?.modelBlock)) + obj.modelBlock = object.modelBlock.map((e) => model_block_1.ModelBlock.fromJSON(e)); + if (Array.isArray(object?.minerUnbonding)) + obj.minerUnbonding = object.minerUnbonding.map((e) => deposit_1.UnbondingEntry.fromJSON(e)); + if (Array.isArray(object?.orchestratorUnbonding)) + obj.orchestratorUnbonding = object.orchestratorUnbonding.map((e) => deposit_1.UnbondingEntry.fromJSON(e)); + if (Array.isArray(object?.modelCreators)) + obj.modelCreators = object.modelCreators.map((e) => String(e)); + if (Array.isArray(object?.modelAllowList)) + obj.modelAllowList = object.modelAllowList.map((e) => String(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.params !== undefined && (obj.params = message.params ? params_1.Params.toJSON(message.params) : undefined); + if (message.model) { + obj.model = message.model.map(e => e ? model_1.Model.toJSON(e) : undefined); + } + else { + obj.model = []; + } + if (message.node) { + obj.node = message.node.map(e => e ? node_1.Node.toJSON(e) : undefined); + } + else { + obj.node = []; + } + if (message.miner) { + obj.miner = message.miner.map(e => e ? miner_1.Miner.toJSON(e) : undefined); + } + else { + obj.miner = []; + } + if (message.orchestrator) { + obj.orchestrator = message.orchestrator.map(e => e ? orchestrator_1.Orchestrator.toJSON(e) : undefined); + } + else { + obj.orchestrator = []; + } + if (message.orchestratorMiner) { + obj.orchestratorMiner = message.orchestratorMiner.map(e => e ? exports.OrchestratorMiner.toJSON(e) : undefined); + } + else { + obj.orchestratorMiner = []; + } + if (message.modelBlock) { + obj.modelBlock = message.modelBlock.map(e => e ? model_block_1.ModelBlock.toJSON(e) : undefined); + } + else { + obj.modelBlock = []; + } + if (message.minerUnbonding) { + obj.minerUnbonding = message.minerUnbonding.map(e => e ? deposit_1.UnbondingEntry.toJSON(e) : undefined); + } + else { + obj.minerUnbonding = []; + } + if (message.orchestratorUnbonding) { + obj.orchestratorUnbonding = message.orchestratorUnbonding.map(e => e ? deposit_1.UnbondingEntry.toJSON(e) : undefined); + } + else { + obj.orchestratorUnbonding = []; + } + if (message.modelCreators) { + obj.modelCreators = message.modelCreators.map(e => e); + } + else { + obj.modelCreators = []; + } + if (message.modelAllowList) { + obj.modelAllowList = message.modelAllowList.map(e => e); + } + else { + obj.modelAllowList = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseGenesisState(); + if (object.params !== undefined && object.params !== null) { + message.params = params_1.Params.fromPartial(object.params); + } + message.model = object.model?.map(e => model_1.Model.fromPartial(e)) || []; + message.node = object.node?.map(e => node_1.Node.fromPartial(e)) || []; + message.miner = object.miner?.map(e => miner_1.Miner.fromPartial(e)) || []; + message.orchestrator = object.orchestrator?.map(e => orchestrator_1.Orchestrator.fromPartial(e)) || []; + message.orchestratorMiner = object.orchestratorMiner?.map(e => exports.OrchestratorMiner.fromPartial(e)) || []; + message.modelBlock = object.modelBlock?.map(e => model_block_1.ModelBlock.fromPartial(e)) || []; + message.minerUnbonding = object.minerUnbonding?.map(e => deposit_1.UnbondingEntry.fromPartial(e)) || []; + message.orchestratorUnbonding = object.orchestratorUnbonding?.map(e => deposit_1.UnbondingEntry.fromPartial(e)) || []; + message.modelCreators = object.modelCreators?.map(e => e) || []; + message.modelAllowList = object.modelAllowList?.map(e => e) || []; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXNpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9kaHQvdjEvZ2VuZXNpcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQixxQ0FBa0M7QUFDbEMsbUNBQWdDO0FBQ2hDLGlDQUE4QjtBQUM5QixtQ0FBZ0M7QUFDaEMsaURBQThDO0FBQzlDLCtDQUEyQztBQUMzQyx1Q0FBMkM7QUFDM0Msd0RBQTBDO0FBQzFDLDJDQUEwRDtBQUU3QyxRQUFBLGVBQWUsR0FBRyxRQUFRLENBQUM7QUFxQnhDLFNBQVMsMkJBQTJCO0lBQ2xDLE9BQU87UUFDTCxjQUFjLEVBQUUsRUFBRTtRQUNsQixPQUFPLEVBQUUsRUFBRTtLQUNaLENBQUM7QUFDSixDQUFDO0FBQ1ksUUFBQSxpQkFBaUIsR0FBRztJQUMvQixPQUFPLEVBQUUsMkJBQTJCO0lBQ3BDLE1BQU0sQ0FBQyxPQUEwQixFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ3pFLElBQUksT0FBTyxDQUFDLGNBQWMsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNsQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkQsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLE9BQU8sS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUMzQixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxL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 \ No newline at end of file diff --git a/dist/codec/dht/v1/miner.d.ts b/dist/codec/dht/v1/miner.d.ts new file mode 100644 index 0000000..5185509 --- /dev/null +++ b/dist/codec/dht/v1/miner.d.ts @@ -0,0 +1,376 @@ +/// +import { Timestamp } from "../../google/protobuf/timestamp"; +import { BondStatus } from "./deposit"; +import { Coin } from "../../cosmos/base/v1beta1/coin"; +import { Reputation } from "./reputation"; +import { Long } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +/** Miner defines a miner of a model. */ +export interface Miner { + nodeId: string; + startBlock: Long; + endBlock: Long; + torchDtype: string; + quantType: string; + cacheTokensLeft: Long; + inferenceRps: number; + modelName: string; + validUntil: Timestamp; + bondStatus: BondStatus; + deposit: Coin; + reputations: Reputation[]; +} +export declare const Miner: { + typeUrl: string; + encode(message: Miner, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Miner; + fromJSON(object: any): Miner; + toJSON(message: Miner): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + endBlock?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + torchDtype?: string | undefined; + quantType?: string | undefined; + cacheTokensLeft?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + inferenceRps?: number | undefined; + modelName?: string | undefined; + validUntil?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + bondStatus?: BondStatus | undefined; + deposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + reputations?: ({ + name?: string | undefined; + score?: string | number | Long.Long | undefined; + }[] & ({ + name?: string | undefined; + score?: string | number | Long.Long | undefined; + } & { + name?: string | undefined; + score?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): Miner; +}; diff --git a/dist/codec/dht/v1/miner.js b/dist/codec/dht/v1/miner.js new file mode 100644 index 0000000..76c8628 --- /dev/null +++ b/dist/codec/dht/v1/miner.js @@ -0,0 +1,218 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Miner = exports.protobufPackage = void 0; +/* eslint-disable */ +const timestamp_1 = require("../../google/protobuf/timestamp"); +const deposit_1 = require("./deposit"); +const coin_1 = require("../../cosmos/base/v1beta1/coin"); +const reputation_1 = require("./reputation"); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); +exports.protobufPackage = "dht.v1"; +function createBaseMiner() { + return { + nodeId: "", + startBlock: helpers_1.Long.UZERO, + endBlock: helpers_1.Long.UZERO, + torchDtype: "", + quantType: "", + cacheTokensLeft: helpers_1.Long.UZERO, + inferenceRps: 0, + modelName: "", + validUntil: timestamp_1.Timestamp.fromPartial({}), + bondStatus: 0, + deposit: coin_1.Coin.fromPartial({}), + reputations: [] + }; +} +exports.Miner = { + typeUrl: "/dht.v1.Miner", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + if (!message.startBlock.isZero()) { + writer.uint32(16).uint64(message.startBlock); + } + if (!message.endBlock.isZero()) { + writer.uint32(24).uint64(message.endBlock); + } + if (message.torchDtype !== "") { + writer.uint32(34).string(message.torchDtype); + } + if (message.quantType !== "") { + writer.uint32(42).string(message.quantType); + } + if (!message.cacheTokensLeft.isZero()) { + writer.uint32(48).uint64(message.cacheTokensLeft); + } + if (message.inferenceRps !== 0) { + writer.uint32(57).double(message.inferenceRps); + } + if (message.modelName !== "") { + writer.uint32(66).string(message.modelName); + } + if (message.validUntil !== undefined) { + timestamp_1.Timestamp.encode(message.validUntil, writer.uint32(74).fork()).ldelim(); + } + if (message.bondStatus !== 0) { + writer.uint32(80).int32(message.bondStatus); + } + if (message.deposit !== undefined) { + coin_1.Coin.encode(message.deposit, writer.uint32(90).fork()).ldelim(); + } + for (const v of message.reputations) { + reputation_1.Reputation.encode(v, writer.uint32(98).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMiner(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + case 2: + message.startBlock = reader.uint64(); + break; + case 3: + message.endBlock = reader.uint64(); + break; + case 4: + message.torchDtype = reader.string(); + break; + case 5: + message.quantType = reader.string(); + break; + case 6: + message.cacheTokensLeft = reader.uint64(); + break; + case 7: + message.inferenceRps = reader.double(); + break; + case 8: + message.modelName = reader.string(); + break; + case 9: + message.validUntil = timestamp_1.Timestamp.decode(reader, reader.uint32()); + break; + case 10: + message.bondStatus = reader.int32(); + break; + case 11: + message.deposit = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 12: + message.reputations.push(reputation_1.Reputation.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMiner(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.startBlock)) + obj.startBlock = helpers_1.Long.fromValue(object.startBlock); + if ((0, helpers_1.isSet)(object.endBlock)) + obj.endBlock = helpers_1.Long.fromValue(object.endBlock); + if ((0, helpers_1.isSet)(object.torchDtype)) + obj.torchDtype = String(object.torchDtype); + if ((0, helpers_1.isSet)(object.quantType)) + obj.quantType = String(object.quantType); + if ((0, helpers_1.isSet)(object.cacheTokensLeft)) + obj.cacheTokensLeft = helpers_1.Long.fromValue(object.cacheTokensLeft); + if ((0, helpers_1.isSet)(object.inferenceRps)) + obj.inferenceRps = Number(object.inferenceRps); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.validUntil)) + obj.validUntil = (0, helpers_1.fromJsonTimestamp)(object.validUntil); + if ((0, helpers_1.isSet)(object.bondStatus)) + obj.bondStatus = (0, deposit_1.bondStatusFromJSON)(object.bondStatus); + if ((0, helpers_1.isSet)(object.deposit)) + obj.deposit = coin_1.Coin.fromJSON(object.deposit); + if (Array.isArray(object?.reputations)) + obj.reputations = object.reputations.map((e) => reputation_1.Reputation.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.startBlock !== undefined && (obj.startBlock = (message.startBlock || helpers_1.Long.UZERO).toString()); + message.endBlock !== undefined && (obj.endBlock = (message.endBlock || helpers_1.Long.UZERO).toString()); + message.torchDtype !== undefined && (obj.torchDtype = message.torchDtype); + message.quantType !== undefined && (obj.quantType = message.quantType); + message.cacheTokensLeft !== undefined && (obj.cacheTokensLeft = (message.cacheTokensLeft || helpers_1.Long.UZERO).toString()); + message.inferenceRps !== undefined && (obj.inferenceRps = message.inferenceRps); + message.modelName !== undefined && (obj.modelName = message.modelName); + message.validUntil !== undefined && (obj.validUntil = (0, helpers_1.fromTimestamp)(message.validUntil).toISOString()); + message.bondStatus !== undefined && (obj.bondStatus = (0, deposit_1.bondStatusToJSON)(message.bondStatus)); + message.deposit !== undefined && (obj.deposit = message.deposit ? coin_1.Coin.toJSON(message.deposit) : undefined); + if (message.reputations) { + obj.reputations = message.reputations.map(e => e ? reputation_1.Reputation.toJSON(e) : undefined); + } + else { + obj.reputations = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseMiner(); + message.nodeId = object.nodeId ?? ""; + if (object.startBlock !== undefined && object.startBlock !== null) { + message.startBlock = helpers_1.Long.fromValue(object.startBlock); + } + if (object.endBlock !== undefined && object.endBlock !== null) { + message.endBlock = helpers_1.Long.fromValue(object.endBlock); + } + message.torchDtype = object.torchDtype ?? ""; + message.quantType = object.quantType ?? ""; + if (object.cacheTokensLeft !== undefined && object.cacheTokensLeft !== null) { + message.cacheTokensLeft = helpers_1.Long.fromValue(object.cacheTokensLeft); + } + message.inferenceRps = object.inferenceRps ?? 0; + message.modelName = object.modelName ?? ""; + if (object.validUntil !== undefined && object.validUntil !== null) { + message.validUntil = timestamp_1.Timestamp.fromPartial(object.validUntil); + } + message.bondStatus = object.bondStatus ?? 0; + if (object.deposit !== undefined && object.deposit !== null) { + message.deposit = coin_1.Coin.fromPartial(object.deposit); + } + message.reputations = object.reputations?.map(e => reputation_1.Reputation.fromPartial(e)) || []; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZGh0L3YxL21pbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLCtEQUE0RDtBQUM1RCx1Q0FBNkU7QUFDN0UseURBQXNEO0FBQ3RELDZDQUEwQztBQUMxQywyQ0FBa0c7QUFDbEcsd0RBQTBDO0FBRTdCLFFBQUEsZUFBZSxHQUFHLFFBQVEsQ0FBQztBQWdCeEMsU0FBUyxlQUFlO0lBQ3RCLE9BQU87UUFDTCxNQUFNLEVBQUUsRUFBRTtRQUNWLFVBQVUsRUFBRSxjQUFJLENBQUMsS0FBSztRQUN0QixRQUFRLEVBQUUsY0FBSSxDQUFDLEtBQUs7UUFDcEIsVUFBVSxFQUFFLEVBQUU7UUFDZCxTQUFTLEVBQUUsRUFBRTtRQUNiLGVBQWUsRUFBRSxjQUFJLENBQUMsS0FBSztRQUMzQixZQUFZLEVBQUUsQ0FBQztRQUNmLFNBQVMsRUFBRSxFQUFFO1FBQ2IsVUFBVSxFQUFFLHFCQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUNyQyxVQUFVLEVBQUUsQ0FBQztRQUNiLE9BQU8sRUFBRSxXQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUM3QixXQUFXLEVBQUUsRUFBRTtLQUNoQixDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsS0FBSyxHQUFHO0lBQ25CLE9BQU8sRUFBRSxlQUFlO0lBQ3hCLE1BQU0sQ0FBQyxPQUFjLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDN0QsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUNqQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDL0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDOUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsU0FBUyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9B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 \ No newline at end of file diff --git a/dist/codec/dht/v1/model.d.ts b/dist/codec/dht/v1/model.d.ts new file mode 100644 index 0000000..978aa8a --- /dev/null +++ b/dist/codec/dht/v1/model.d.ts @@ -0,0 +1,97 @@ +import { Coin } from "../../cosmos/base/v1beta1/coin"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +export interface TokenPrice { + inputPrice: Coin; + outputPrice: Coin; +} +export interface Model { + creator: string; + modelName: string; + blockCids: string[]; + tokenPrice: TokenPrice; +} +export declare const TokenPrice: { + typeUrl: string; + encode(message: TokenPrice, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): TokenPrice; + fromJSON(object: any): TokenPrice; + toJSON(message: TokenPrice): JsonSafe; + fromPartial, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): TokenPrice; +}; +export declare const Model: { + typeUrl: string; + encode(message: Model, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Model; + fromJSON(object: any): Model; + toJSON(message: Model): JsonSafe; + fromPartial, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): Model; +}; diff --git a/dist/codec/dht/v1/model.js b/dist/codec/dht/v1/model.js new file mode 100644 index 0000000..6b3c212 --- /dev/null +++ b/dist/codec/dht/v1/model.js @@ -0,0 +1,181 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Model = exports.TokenPrice = exports.protobufPackage = void 0; +/* eslint-disable */ +const coin_1 = require("../../cosmos/base/v1beta1/coin"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +exports.protobufPackage = "dht.v1"; +function createBaseTokenPrice() { + return { + inputPrice: coin_1.Coin.fromPartial({}), + outputPrice: coin_1.Coin.fromPartial({}) + }; +} +exports.TokenPrice = { + typeUrl: "/dht.v1.TokenPrice", + encode(message, writer = _m0.Writer.create()) { + if (message.inputPrice !== undefined) { + coin_1.Coin.encode(message.inputPrice, writer.uint32(10).fork()).ldelim(); + } + if (message.outputPrice !== undefined) { + coin_1.Coin.encode(message.outputPrice, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTokenPrice(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.inputPrice = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 2: + message.outputPrice = coin_1.Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseTokenPrice(); + if ((0, helpers_1.isSet)(object.inputPrice)) + obj.inputPrice = coin_1.Coin.fromJSON(object.inputPrice); + if ((0, helpers_1.isSet)(object.outputPrice)) + obj.outputPrice = coin_1.Coin.fromJSON(object.outputPrice); + return obj; + }, + toJSON(message) { + const obj = {}; + message.inputPrice !== undefined && (obj.inputPrice = message.inputPrice ? coin_1.Coin.toJSON(message.inputPrice) : undefined); + message.outputPrice !== undefined && (obj.outputPrice = message.outputPrice ? coin_1.Coin.toJSON(message.outputPrice) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseTokenPrice(); + if (object.inputPrice !== undefined && object.inputPrice !== null) { + message.inputPrice = coin_1.Coin.fromPartial(object.inputPrice); + } + if (object.outputPrice !== undefined && object.outputPrice !== null) { + message.outputPrice = coin_1.Coin.fromPartial(object.outputPrice); + } + return message; + } +}; +function createBaseModel() { + return { + creator: "", + modelName: "", + blockCids: [], + tokenPrice: exports.TokenPrice.fromPartial({}) + }; +} +exports.Model = { + typeUrl: "/dht.v1.Model", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.modelName !== "") { + writer.uint32(18).string(message.modelName); + } + for (const v of message.blockCids) { + writer.uint32(26).string(v); + } + if (message.tokenPrice !== undefined) { + exports.TokenPrice.encode(message.tokenPrice, writer.uint32(34).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseModel(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.modelName = reader.string(); + break; + case 3: + message.blockCids.push(reader.string()); + break; + case 4: + message.tokenPrice = exports.TokenPrice.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseModel(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if (Array.isArray(object?.blockCids)) + obj.blockCids = object.blockCids.map((e) => String(e)); + if ((0, helpers_1.isSet)(object.tokenPrice)) + obj.tokenPrice = exports.TokenPrice.fromJSON(object.tokenPrice); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.modelName !== undefined && (obj.modelName = message.modelName); + if (message.blockCids) { + obj.blockCids = message.blockCids.map(e => e); + } + else { + obj.blockCids = []; + } + message.tokenPrice !== undefined && (obj.tokenPrice = message.tokenPrice ? exports.TokenPrice.toJSON(message.tokenPrice) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseModel(); + message.creator = object.creator ?? ""; + message.modelName = object.modelName ?? ""; + message.blockCids = object.blockCids?.map(e => e) || []; + if (object.tokenPrice !== undefined && object.tokenPrice !== null) { + message.tokenPrice = exports.TokenPrice.fromPartial(object.tokenPrice); + } + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZGh0L3YxL21vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLHlEQUFzRDtBQUN0RCx3REFBMEM7QUFDMUMsMkNBQTBEO0FBRTdDLFFBQUEsZUFBZSxHQUFHLFFBQVEsQ0FBQztBQVd4QyxTQUFTLG9CQUFvQjtJQUMzQixPQUFPO1FBQ0wsVUFBVSxFQUFFLFdBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQ2hDLFdBQVcsRUFBRSxXQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztLQUNsQyxDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsVUFBVSxHQUFHO0lBQ3hCLE9BQU8sRUFBRSxvQkFBb0I7SUFDN0IsTUFBTSxDQUFDLE9BQW1CLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDbEUsSUFBSSxPQUFPLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3JDLFdBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDckUsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFdBQVcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QyxXQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RFLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0s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 \ No newline at end of file diff --git a/dist/codec/dht/v1/model_block.d.ts b/dist/codec/dht/v1/model_block.d.ts new file mode 100644 index 0000000..a4d0ced --- /dev/null +++ b/dist/codec/dht/v1/model_block.d.ts @@ -0,0 +1,27 @@ +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +export interface ModelBlock { + modelName: string; + nodeId: string; + blockId: number; + cid: string; +} +export declare const ModelBlock: { + typeUrl: string; + encode(message: ModelBlock, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): ModelBlock; + fromJSON(object: any): ModelBlock; + toJSON(message: ModelBlock): JsonSafe; + fromPartial, never>>(object: I): ModelBlock; +}; diff --git a/dist/codec/dht/v1/model_block.js b/dist/codec/dht/v1/model_block.js new file mode 100644 index 0000000..dcb7651 --- /dev/null +++ b/dist/codec/dht/v1/model_block.js @@ -0,0 +1,111 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ModelBlock = exports.protobufPackage = void 0; +/* eslint-disable */ +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +exports.protobufPackage = "dht.v1"; +function createBaseModelBlock() { + return { + modelName: "", + nodeId: "", + blockId: 0, + cid: "" + }; +} +exports.ModelBlock = { + typeUrl: "/dht.v1.ModelBlock", + encode(message, writer = _m0.Writer.create()) { + if (message.modelName !== "") { + writer.uint32(10).string(message.modelName); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + if (message.blockId !== 0) { + writer.uint32(24).uint32(message.blockId); + } + if (message.cid !== "") { + writer.uint32(34).string(message.cid); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseModelBlock(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.modelName = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.blockId = reader.uint32(); + break; + case 4: + message.cid = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseModelBlock(); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.blockId)) + obj.blockId = Number(object.blockId); + if ((0, helpers_1.isSet)(object.cid)) + obj.cid = String(object.cid); + return obj; + }, + toJSON(message) { + const obj = {}; + message.modelName !== undefined && (obj.modelName = message.modelName); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.blockId !== undefined && (obj.blockId = Math.round(message.blockId)); + message.cid !== undefined && (obj.cid = message.cid); + return obj; + }, + fromPartial(object) { + const message = createBaseModelBlock(); + message.modelName = object.modelName ?? ""; + message.nodeId = object.nodeId ?? ""; + message.blockId = object.blockId ?? 0; + message.cid = object.cid ?? ""; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxfYmxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZGh0L3YxL21vZGVsX2Jsb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLHdEQUEwQztBQUMxQywyQ0FBMEQ7QUFFN0MsUUFBQSxlQUFlLEdBQUcsUUFBUSxDQUFDO0FBT3hDLFNBQVMsb0JBQW9CO0lBQzNCLE9BQU87UUFDTCxTQUFTLEVBQUUsRUFBRTtRQUNiLE1BQU0sRUFBRSxFQUFFO1FBQ1YsT0FBTyxFQUFFLENBQUM7UUFDVixHQUFHLEVBQUUsRUFBRTtLQUNSLENBQUM7QUFDSixDQUFDO0FBQ1ksUUFBQSxVQUFVLEdBQUc7SUFDeEIsT0FBTyxFQUFFLG9CQUFvQjtJQUM3QixNQUFNLENBQUMsT0FBbUIsRUFBRSxTQUFxQixHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUNsRSxJQUFJLE9BQU8sQ0FBQyxTQUFTLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDMUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDMUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxHQUFHLEtBQUssRUFBRSxFQUFF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 \ No newline at end of file diff --git a/dist/codec/dht/v1/node.d.ts b/dist/codec/dht/v1/node.d.ts new file mode 100644 index 0000000..c74f30d --- /dev/null +++ b/dist/codec/dht/v1/node.d.ts @@ -0,0 +1,104 @@ +/// +import { Long } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +export interface Node { + nodeId: string; + publicName: string; + version: string; + networkAddress: string; + walletAddress: string; + vram: Long; + networkRps: number; + nextPings: Uint8Array[]; + usingRelay: boolean; + labels: string[]; +} +export declare const Node: { + typeUrl: string; + encode(message: Node, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Node; + fromJSON(object: any): Node; + toJSON(message: Node): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + networkRps?: number | undefined; + nextPings?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; + usingRelay?: boolean | undefined; + labels?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>>(object: I): Node; +}; diff --git a/dist/codec/dht/v1/node.js b/dist/codec/dht/v1/node.js new file mode 100644 index 0000000..8f9917b --- /dev/null +++ b/dist/codec/dht/v1/node.js @@ -0,0 +1,189 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Node = exports.protobufPackage = void 0; +/* eslint-disable */ +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); +exports.protobufPackage = "dht.v1"; +function createBaseNode() { + return { + nodeId: "", + publicName: "", + version: "", + networkAddress: "", + walletAddress: "", + vram: helpers_1.Long.UZERO, + networkRps: 0, + nextPings: [], + usingRelay: false, + labels: [] + }; +} +exports.Node = { + typeUrl: "/dht.v1.Node", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + if (message.publicName !== "") { + writer.uint32(18).string(message.publicName); + } + if (message.version !== "") { + writer.uint32(26).string(message.version); + } + if (message.networkAddress !== "") { + writer.uint32(34).string(message.networkAddress); + } + if (message.walletAddress !== "") { + writer.uint32(42).string(message.walletAddress); + } + if (!message.vram.isZero()) { + writer.uint32(48).uint64(message.vram); + } + if (message.networkRps !== 0) { + writer.uint32(57).double(message.networkRps); + } + for (const v of message.nextPings) { + writer.uint32(66).bytes(v); + } + if (message.usingRelay === true) { + writer.uint32(72).bool(message.usingRelay); + } + for (const v of message.labels) { + writer.uint32(82).string(v); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseNode(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + case 2: + message.publicName = reader.string(); + break; + case 3: + message.version = reader.string(); + break; + case 4: + message.networkAddress = reader.string(); + break; + case 5: + message.walletAddress = reader.string(); + break; + case 6: + message.vram = reader.uint64(); + break; + case 7: + message.networkRps = reader.double(); + break; + case 8: + message.nextPings.push(reader.bytes()); + break; + case 9: + message.usingRelay = reader.bool(); + break; + case 10: + message.labels.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseNode(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.publicName)) + obj.publicName = String(object.publicName); + if ((0, helpers_1.isSet)(object.version)) + obj.version = String(object.version); + if ((0, helpers_1.isSet)(object.networkAddress)) + obj.networkAddress = String(object.networkAddress); + if ((0, helpers_1.isSet)(object.walletAddress)) + obj.walletAddress = String(object.walletAddress); + if ((0, helpers_1.isSet)(object.vram)) + obj.vram = helpers_1.Long.fromValue(object.vram); + if ((0, helpers_1.isSet)(object.networkRps)) + obj.networkRps = Number(object.networkRps); + if (Array.isArray(object?.nextPings)) + obj.nextPings = object.nextPings.map((e) => (0, helpers_1.bytesFromBase64)(e)); + if ((0, helpers_1.isSet)(object.usingRelay)) + obj.usingRelay = Boolean(object.usingRelay); + if (Array.isArray(object?.labels)) + obj.labels = object.labels.map((e) => String(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.publicName !== undefined && (obj.publicName = message.publicName); + message.version !== undefined && (obj.version = message.version); + message.networkAddress !== undefined && (obj.networkAddress = message.networkAddress); + message.walletAddress !== undefined && (obj.walletAddress = message.walletAddress); + message.vram !== undefined && (obj.vram = (message.vram || helpers_1.Long.UZERO).toString()); + message.networkRps !== undefined && (obj.networkRps = message.networkRps); + if (message.nextPings) { + obj.nextPings = message.nextPings.map(e => (0, helpers_1.base64FromBytes)(e !== undefined ? e : new Uint8Array())); + } + else { + obj.nextPings = []; + } + message.usingRelay !== undefined && (obj.usingRelay = message.usingRelay); + if (message.labels) { + obj.labels = message.labels.map(e => e); + } + else { + obj.labels = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseNode(); + message.nodeId = object.nodeId ?? ""; + message.publicName = object.publicName ?? ""; + message.version = object.version ?? ""; + message.networkAddress = object.networkAddress ?? ""; + message.walletAddress = object.walletAddress ?? ""; + if (object.vram !== undefined && object.vram !== null) { + message.vram = helpers_1.Long.fromValue(object.vram); + } + message.networkRps = object.networkRps ?? 0; + message.nextPings = object.nextPings?.map(e => e) || []; + message.usingRelay = object.usingRelay ?? false; + message.labels = object.labels?.map(e => e) || []; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9kaHQvdjEvbm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQiwyQ0FBa0c7QUFDbEcsd0RBQTBDO0FBRTdCLFFBQUEsZUFBZSxHQUFHLFFBQVEsQ0FBQztBQWF4QyxTQUFTLGNBQWM7SUFDckIsT0FBTztRQUNMLE1BQU0sRUFBRSxFQUFFO1FBQ1YsVUFBVSxFQUFFLEVBQUU7UUFDZCxPQUFPLEVBQUUsRUFBRTtRQUNYLGNBQWMsRUFBRSxFQUFFO1FBQ2xCLGFBQWEsRUFBRSxFQUFFO1FBQ2pCLElBQUksRUFBRSxjQUFJLENBQUMsS0FBSztRQUNoQixVQUFVLEVBQUUsQ0FBQztRQUNiLFNBQVMsRUFBRSxFQUFFO1FBQ2IsVUFBVSxFQUFFLEtBQUs7UUFDakIsTUFBTSxFQUFFLEVBQUU7S0FDWCxDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsSUFBSSxHQUFHO0lBQ2xCLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLE1BQU0sQ0FBQyxPQUFhLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDNUQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsVUFBVSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzNCLE1BQU0s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 \ No newline at end of file diff --git a/dist/codec/dht/v1/orchestrator.d.ts b/dist/codec/dht/v1/orchestrator.d.ts new file mode 100644 index 0000000..6b4605b --- /dev/null +++ b/dist/codec/dht/v1/orchestrator.d.ts @@ -0,0 +1,270 @@ +/// +import { Timestamp } from "../../google/protobuf/timestamp"; +import { BondStatus } from "./deposit"; +import { Coin } from "../../cosmos/base/v1beta1/coin"; +import { Reputation } from "./reputation"; +import { Long } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +/** Availability defines the availability of an Orchestrator. */ +export declare enum Availability { + READY = 0, + LOADING = 1, + IDLE = 2, + UNRECOGNIZED = -1 +} +export declare function availabilityFromJSON(object: any): Availability; +export declare function availabilityToJSON(object: Availability): string; +/** InferenceType defines the inference type of an Orchestrator. */ +export declare enum InferenceType { + DISTRIBUTED = 0, + NON_DISTRIBUTED = 1, + UNRECOGNIZED = -1 +} +export declare function inferenceTypeFromJSON(object: any): InferenceType; +export declare function inferenceTypeToJSON(object: InferenceType): string; +/** Orchestrator defines an orchestrator of a model. */ +export interface Orchestrator { + nodeId: string; + modelName: string; + inferenceType: InferenceType; + status: Availability; + blockCount: Long[]; + validUntil: Timestamp; + bondStatus: BondStatus; + deposit: Coin; + reputations: Reputation[]; +} +export declare const Orchestrator: { + typeUrl: string; + encode(message: Orchestrator, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Orchestrator; + fromJSON(object: any): Orchestrator; + toJSON(message: Orchestrator): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>))[] & Record, never>) | undefined; + validUntil?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + bondStatus?: BondStatus | undefined; + deposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + reputations?: ({ + name?: string | undefined; + score?: string | number | Long.Long | undefined; + }[] & ({ + name?: string | undefined; + score?: string | number | Long.Long | undefined; + } & { + name?: string | undefined; + score?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): Orchestrator; +}; diff --git a/dist/codec/dht/v1/orchestrator.js b/dist/codec/dht/v1/orchestrator.js new file mode 100644 index 0000000..f45b49a --- /dev/null +++ b/dist/codec/dht/v1/orchestrator.js @@ -0,0 +1,268 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Orchestrator = exports.inferenceTypeToJSON = exports.inferenceTypeFromJSON = exports.InferenceType = exports.availabilityToJSON = exports.availabilityFromJSON = exports.Availability = exports.protobufPackage = void 0; +/* eslint-disable */ +const timestamp_1 = require("../../google/protobuf/timestamp"); +const deposit_1 = require("./deposit"); +const coin_1 = require("../../cosmos/base/v1beta1/coin"); +const reputation_1 = require("./reputation"); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); +exports.protobufPackage = "dht.v1"; +/** Availability defines the availability of an Orchestrator. */ +var Availability; +(function (Availability) { + Availability[Availability["READY"] = 0] = "READY"; + Availability[Availability["LOADING"] = 1] = "LOADING"; + Availability[Availability["IDLE"] = 2] = "IDLE"; + Availability[Availability["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(Availability || (exports.Availability = Availability = {})); +function availabilityFromJSON(object) { + switch (object) { + case 0: + case "READY": + return Availability.READY; + case 1: + case "LOADING": + return Availability.LOADING; + case 2: + case "IDLE": + return Availability.IDLE; + case -1: + case "UNRECOGNIZED": + default: + return Availability.UNRECOGNIZED; + } +} +exports.availabilityFromJSON = availabilityFromJSON; +function availabilityToJSON(object) { + switch (object) { + case Availability.READY: + return "READY"; + case Availability.LOADING: + return "LOADING"; + case Availability.IDLE: + return "IDLE"; + case Availability.UNRECOGNIZED: + default: + return "UNRECOGNIZED"; + } +} +exports.availabilityToJSON = availabilityToJSON; +/** InferenceType defines the inference type of an Orchestrator. */ +var InferenceType; +(function (InferenceType) { + InferenceType[InferenceType["DISTRIBUTED"] = 0] = "DISTRIBUTED"; + InferenceType[InferenceType["NON_DISTRIBUTED"] = 1] = "NON_DISTRIBUTED"; + InferenceType[InferenceType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(InferenceType || (exports.InferenceType = InferenceType = {})); +function inferenceTypeFromJSON(object) { + switch (object) { + case 0: + case "DISTRIBUTED": + return InferenceType.DISTRIBUTED; + case 1: + case "NON_DISTRIBUTED": + return InferenceType.NON_DISTRIBUTED; + case -1: + case "UNRECOGNIZED": + default: + return InferenceType.UNRECOGNIZED; + } +} +exports.inferenceTypeFromJSON = inferenceTypeFromJSON; +function inferenceTypeToJSON(object) { + switch (object) { + case InferenceType.DISTRIBUTED: + return "DISTRIBUTED"; + case InferenceType.NON_DISTRIBUTED: + return "NON_DISTRIBUTED"; + case InferenceType.UNRECOGNIZED: + default: + return "UNRECOGNIZED"; + } +} +exports.inferenceTypeToJSON = inferenceTypeToJSON; +function createBaseOrchestrator() { + return { + nodeId: "", + modelName: "", + inferenceType: 0, + status: 0, + blockCount: [], + validUntil: timestamp_1.Timestamp.fromPartial({}), + bondStatus: 0, + deposit: coin_1.Coin.fromPartial({}), + reputations: [] + }; +} +exports.Orchestrator = { + typeUrl: "/dht.v1.Orchestrator", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + if (message.modelName !== "") { + writer.uint32(18).string(message.modelName); + } + if (message.inferenceType !== 0) { + writer.uint32(24).int32(message.inferenceType); + } + if (message.status !== 0) { + writer.uint32(32).int32(message.status); + } + writer.uint32(42).fork(); + for (const v of message.blockCount) { + writer.uint64(v); + } + writer.ldelim(); + if (message.validUntil !== undefined) { + timestamp_1.Timestamp.encode(message.validUntil, writer.uint32(50).fork()).ldelim(); + } + if (message.bondStatus !== 0) { + writer.uint32(56).int32(message.bondStatus); + } + if (message.deposit !== undefined) { + coin_1.Coin.encode(message.deposit, writer.uint32(66).fork()).ldelim(); + } + for (const v of message.reputations) { + reputation_1.Reputation.encode(v, writer.uint32(74).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseOrchestrator(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + case 2: + message.modelName = reader.string(); + break; + case 3: + message.inferenceType = reader.int32(); + break; + case 4: + message.status = reader.int32(); + break; + case 5: + if ((tag & 7) === 2) { + const end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) { + message.blockCount.push(reader.uint64()); + } + } + else { + message.blockCount.push(reader.uint64()); + } + break; + case 6: + message.validUntil = timestamp_1.Timestamp.decode(reader, reader.uint32()); + break; + case 7: + message.bondStatus = reader.int32(); + break; + case 8: + message.deposit = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 9: + message.reputations.push(reputation_1.Reputation.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseOrchestrator(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.inferenceType)) + obj.inferenceType = inferenceTypeFromJSON(object.inferenceType); + if ((0, helpers_1.isSet)(object.status)) + obj.status = availabilityFromJSON(object.status); + if (Array.isArray(object?.blockCount)) + obj.blockCount = object.blockCount.map((e) => helpers_1.Long.fromValue(e)); + if ((0, helpers_1.isSet)(object.validUntil)) + obj.validUntil = (0, helpers_1.fromJsonTimestamp)(object.validUntil); + if ((0, helpers_1.isSet)(object.bondStatus)) + obj.bondStatus = (0, deposit_1.bondStatusFromJSON)(object.bondStatus); + if ((0, helpers_1.isSet)(object.deposit)) + obj.deposit = coin_1.Coin.fromJSON(object.deposit); + if (Array.isArray(object?.reputations)) + obj.reputations = object.reputations.map((e) => reputation_1.Reputation.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.modelName !== undefined && (obj.modelName = message.modelName); + message.inferenceType !== undefined && (obj.inferenceType = inferenceTypeToJSON(message.inferenceType)); + message.status !== undefined && (obj.status = availabilityToJSON(message.status)); + if (message.blockCount) { + obj.blockCount = message.blockCount.map(e => (e || helpers_1.Long.UZERO).toString()); + } + else { + obj.blockCount = []; + } + message.validUntil !== undefined && (obj.validUntil = (0, helpers_1.fromTimestamp)(message.validUntil).toISOString()); + message.bondStatus !== undefined && (obj.bondStatus = (0, deposit_1.bondStatusToJSON)(message.bondStatus)); + message.deposit !== undefined && (obj.deposit = message.deposit ? coin_1.Coin.toJSON(message.deposit) : undefined); + if (message.reputations) { + obj.reputations = message.reputations.map(e => e ? reputation_1.Reputation.toJSON(e) : undefined); + } + else { + obj.reputations = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseOrchestrator(); + message.nodeId = object.nodeId ?? ""; + message.modelName = object.modelName ?? ""; + message.inferenceType = object.inferenceType ?? 0; + message.status = object.status ?? 0; + message.blockCount = object.blockCount?.map(e => helpers_1.Long.fromValue(e)) || []; + if (object.validUntil !== undefined && object.validUntil !== null) { + message.validUntil = timestamp_1.Timestamp.fromPartial(object.validUntil); + } + message.bondStatus = object.bondStatus ?? 0; + if (object.deposit !== undefined && object.deposit !== null) { + message.deposit = coin_1.Coin.fromPartial(object.deposit); + } + message.reputations = object.reputations?.map(e => reputation_1.Reputation.fromPartial(e)) || []; + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JjaGVzdHJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2RodC92MS9vcmNoZXN0cmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsK0RBQTREO0FBQzVELHVDQUE2RTtBQUM3RSx5REFBc0Q7QUFDdEQsNkNBQTBDO0FBQzFDLDJDQUFrRztBQUNsRyx3REFBMEM7QUFFN0IsUUFBQSxlQUFlLEdBQUcsUUFBUSxDQUFDO0FBQ3hDLGdFQUFnRTtBQUNoRSxJQUFZLFlBS1g7QUFMRCxXQUFZLFlBQVk7SUFDdEIsaURBQVMsQ0FBQTtJQUNULHFEQUFXLENBQUE7SUFDWCwrQ0FBUSxDQUFBO0lBQ1IsZ0VBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUxXLFlBQVksNEJBQVosWUFBWSxRQUt2QjtBQUNELFNBQWdCLG9CQUFvQixDQUFDLE1BQVc7SUFDOUMsUUFBUSxNQUFNLEVBQUUsQ0FBQztRQUNmLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxPQUFPO1lBQ1YsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBQzVCLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxTQUFTO1lBQ1osT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDO1FBQzlCLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxNQUFNO1lBQ1QsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQzNCLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDUixLQUFLLGNBQWMsQ0FBQztRQUNwQjtZQUNFLE9BQU8sWUFBWSxDQUFDLFlBQVksQ0FBQztJQUNyQyxDQUFDO0FBQ0gsQ0FBQztBQWhCRCxvREFnQkM7QUFDRCxTQUFnQixrQkFBa0IsQ0FBQyxNQUFvQjtJQUNyRCxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxZQUFZLENBQUMsS0FBSztZQUNyQixPQUFPLE9BQU8sQ0FBQztRQUNqQixLQUFLLFlBQVksQ0FBQyxPQUFPO1lBQ3ZCLE9BQU8sU0FBUyxDQUFDO1FBQ25CLEtBQUssWUFBWSxDQUFDLElBQUk7WUFDcEIsT0FBTyxNQUFNLENBQUM7UUFDaEIsS0FBSyxZQUFZLENBQUMsWUFBWSxDQUFDO1FBQy9CO1lBQ0UsT0FBTyxjQUFjLENBQUM7SUFDMUIsQ0FBQztBQUNILENBQUM7QUFaRCxnREFZQztBQUNELG1FQUFtRTtBQUNuRSxJQUFZLGFBSVg7QUFKRCxXQUFZLGFBQWE7SUFDdkIsK0RBQWUsQ0FBQTtJQUNmLHVFQUFtQixDQUFBO0lBQ25CLGtFQUFpQixDQUFBO0FBQ25CLENBQUMsRUFKVyxhQUFhLDZCQUFiLGFBQWEsUUFJeEI7QUFDRCxTQUFnQixxQkFBcUIsQ0FBQyxNQUFXO0lBQy9DLFFBQVEsTUFBTSxFQUFFLENBQUM7UUFDZixLQUFLLENBQUMsQ0FBQztRQUNQLEtBQUssYUFBYTtZQUNoQixPQUFPLGFBQWEsQ0FBQyxXQUFXLENBQUM7UUFDbkMsS0FBSyxDQUFDLENBQUM7UUFDUCxLQUFLLGlCQUFpQjtZQUNwQixPQUFPLGFBQWEsQ0FBQyxlQUFlLENBQUM7UUFDdkMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNSLEtBQUssY0FBYyxDQUFDO1FBQ3BCO1lBQ0UsT0FBTyxhQUFhLENBQUMsWUFBWSxDQUFDO0lBQ3RDLENBQUM7QUFDSCxDQUFDO0FBYkQsc0RBYUM7QUFDRCxTQUFnQixtQkFBbUIsQ0FBQyxNQUFxQjtJQUN2RCxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxhQUFhLENBQUMsV0FBVztZQUM1QixPQUFPLGFBQWEsQ0FBQztRQUN2QixLQUFLLGFBQWEsQ0FBQyxlQUFlO1lBQ2hDLE9BQU8saUJBQWlCLENBQUM7UUFDM0IsS0FBSyxhQUFhLENBQUMsWUFBWSxDQUFDO1FBQ2hDO1lBQ0UsT0FBTyxjQUFjLENBQUM7SUFDMUIsQ0FBQztBQUNILENBQUM7QUFWRCxrREFVQztBQWFELFNBQVMsc0JBQXNCO0lBQzdCLE9BQU87UUFDTCxNQUFNLEVBQUUsRUFBRTtRQUNWLFNBQVMsRUFBRSxFQUFFO1FBQ2IsYUFBYSxFQUFFLENBQUM7UUFDaEIsTUFBTSxFQUFFLENBQUM7UUFDVCxVQUFVLEVBQUUsRUFBRTtRQUNkLFVBQVUsRUFBRSxxQkFBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7UUFDckMsVUFBVSxFQUFFLENBQUM7UUFDYixPQUFPLEVBQUUsV0FBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7UUFDN0IsV0FBVyxFQUFFLEVBQUU7S0FDaEIsQ0FBQztBQUNKLENBQUM7QUFDWSxRQUFBLFlBQVksR0FBRztJQUMxQixPQUFPLEVBQUUsc0JBQXNCO0lBQy9CLE1BQU0sQ0FBQyxPQUFxQixFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ3BFLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUMxQixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFNBQVMsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUM3QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLGFBQWEsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNoQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsS0FBSyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuQixDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLElBQUksT0FBTyxDQUFDLFVBQVUsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNyQyxxQkFBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMxRSxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsVUFBVSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2xDLFdBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbEUsQ0FBQztRQUNELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3BDLHVCQUFVLENBQUMsTUFBTSxDQUFDLENBQUUsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0QsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLEdBQUcsR0FBRyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyxzQkFBc0IsRUFBRSxDQUFDO1FBQ3pDLE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUN4QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsUUFBUSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2xCLEtBQUssQ0FBQztvQkFDSixPQUFPLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDakMsTUFBTTtnQkFDUixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3BDLE1BQU07Z0JBQ1IsS0FBSyxDQUFDO29CQUNKLE9BQU8sQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLEtBQUssRUFBUyxDQUFDO29CQUM5QyxNQUFNO2dCQUNSLEtBQUssQ0FBQztvQkFDSixPQUFPLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQVMsQ0FBQztvQkFDdkMsTUFBTTtnQkFDUixLQUFLLENBQUM7b0JBQ0osSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQzt3QkFDcEIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7d0JBQzFDLE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLEVBQUUsQ0FBQzs0QkFDekIsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBVSxDQUFDLENBQUM7d0JBQ25ELENBQUM7b0JBQ0gsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQVUsQ0FBQyxDQUFDO29CQUNuRCxDQUFDO29CQUNELE1BQU07Z0JBQ1IsS0FBSyxDQUFDO29CQUNKLE9BQU8sQ0FBQyxVQUFVLEdBQUcscUJBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO29CQUMvRCxNQUFNO2dCQUNSLEtBQUssQ0FBQztvQkFDSixPQUFPLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQVMsQ0FBQztvQkFDM0MsTUFBTTtnQkFDUixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLE9BQU8sR0FBRyxXQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztvQkFDdkQsTUFBTTtnQkFDUixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsdUJBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ3JFLE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFDRCxRQUFRLENBQUMsTUFBVztRQUNsQixNQUFNLEdBQUcsR0FBRyxzQkFBc0IsRUFBRSxDQUFDO1FBQ3JDLElBQUksSUFBQSxlQUFLLEVBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUFFLEdBQUcsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RCxJQUFJLElBQUEsZUFBSyxFQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7WUFBRSxHQUFHLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEUsSUFBSSxJQUFBLGVBQUssRUFBQyxNQUFNLENBQUMsYUFBYSxDQUFDO1lBQUUsR0FBRyxDQUFDLGFBQWEsR0FBRyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakcsSUFBSSxJQUFBLGVBQUssRUFBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1lBQUUsR0FBRyxDQUFDLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0UsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUM7WUFBRSxHQUFHLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxjQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0csSUFBSSxJQUFBLGVBQUssRUFBQyxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQUUsR0FBRyxDQUFDLFVBQVUsR0FBRyxJQUFBLDJCQUFpQixFQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNwRixJQUFJLElBQUEsZUFBSyxFQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7WUFBRSxHQUFHLENBQUMsVUFBVSxHQUFHLElBQUEsNEJBQWtCLEVBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3JGLElBQUksSUFBQSxlQUFLLEVBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUFFLEdBQUcsQ0FBQyxPQUFPLEdBQUcsV0FBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUM7WUFBRSxHQUFHLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyx1QkFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JILE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUNELE1BQU0sQ0FBQyxPQUFxQjtRQUMxQixNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUM7UUFDcEIsT0FBTyxDQUFDLE1BQU0sS0FBSyxTQUFTLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5RCxPQUFPLENBQUMsU0FBUyxLQUFLLFNBQVMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZFLE9BQU8sQ0FBQyxhQUFhLEtBQUssU0FBUyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUN4RyxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDbEYsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsR0FBRyxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLGNBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLENBQUM7YUFBTSxDQUFDO1lBQ04sR0FBRyxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDdEIsQ0FBQztRQUNELE9BQU8sQ0FBQyxVQUFVLEtBQUssU0FBUyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsR0FBRyxJQUFBLHVCQUFhLEVBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDdkcsT0FBTyxDQUFDLFVBQVUsS0FBSyxTQUFTLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxHQUFHLElBQUEsMEJBQWdCLEVBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDNUYsT0FBTyxDQUFDLE9BQU8sS0FBSyxTQUFTLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1RyxJQUFJLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN4QixHQUFHLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkYsQ0FBQzthQUFNLENBQUM7WUFDTixHQUFHLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN2QixDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBQ0QsV0FBVyxDQUFnRCxNQUFTO1FBQ2xFLE1BQU0sT0FBTyxHQUFHLHNCQUFzQixFQUFFLENBQUM7UUFDekMsT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQztRQUNyQyxPQUFPLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1FBQzNDLE9BQU8sQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUM7UUFDbEQsT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQztRQUNwQyxPQUFPLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsY0FBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxRSxJQUFJLE1BQU0sQ0FBQyxVQUFVLEtBQUssU0FBUyxJQUFJLE1BQU0sQ0FBQyxVQUFVLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDbEUsT0FBTyxDQUFDLFVBQVUsR0FBRyxxQkFBUyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEUsQ0FBQztRQUNELE9BQU8sQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUM7UUFDNUMsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLFNBQVMsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQzVELE9BQU8sQ0FBQyxPQUFPLEdBQUcsV0FBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELE9BQU8sQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyx1QkFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNwRixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0YsQ0FBQyJ9 \ No newline at end of file diff --git a/dist/codec/dht/v1/params.d.ts b/dist/codec/dht/v1/params.d.ts new file mode 100644 index 0000000..0652229 --- /dev/null +++ b/dist/codec/dht/v1/params.d.ts @@ -0,0 +1,368 @@ +/// +import { Duration } from "../../google/protobuf/duration"; +import { Coin } from "../../cosmos/base/v1beta1/coin"; +import { TokenPrice } from "./model"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +/** Params defines the parameters for the module. */ +export interface Params { + orchestratorValidTime: Duration; + minerValidTime: Duration; + adminAccount: string; + orchestratorMinDeposit: Coin; + minerMinDeposit: Coin; + orchestratorUnbondingPeriod: Duration; + minerUnbondingPeriod: Duration; + labelAdminAccount: string; + reputationAdminAccount: string; + priceTokenDenoms: string[]; + modelDefaultTokenPrice?: TokenPrice; +} +export declare const Params: { + typeUrl: string; + encode(message: Params, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Params; + fromJSON(object: any): Params; + toJSON(message: Params): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + minerValidTime?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + adminAccount?: string | undefined; + orchestratorMinDeposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + minerMinDeposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + orchestratorUnbondingPeriod?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + minerUnbondingPeriod?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + labelAdminAccount?: string | undefined; + reputationAdminAccount?: string | undefined; + priceTokenDenoms?: (string[] & string[] & Record, never>) | undefined; + modelDefaultTokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): Params; +}; diff --git a/dist/codec/dht/v1/params.js b/dist/codec/dht/v1/params.js new file mode 100644 index 0000000..4d76632 --- /dev/null +++ b/dist/codec/dht/v1/params.js @@ -0,0 +1,210 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Params = exports.protobufPackage = void 0; +/* eslint-disable */ +const duration_1 = require("../../google/protobuf/duration"); +const coin_1 = require("../../cosmos/base/v1beta1/coin"); +const model_1 = require("./model"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +exports.protobufPackage = "dht.v1"; +function createBaseParams() { + return { + orchestratorValidTime: duration_1.Duration.fromPartial({}), + minerValidTime: duration_1.Duration.fromPartial({}), + adminAccount: "", + orchestratorMinDeposit: coin_1.Coin.fromPartial({}), + minerMinDeposit: coin_1.Coin.fromPartial({}), + orchestratorUnbondingPeriod: duration_1.Duration.fromPartial({}), + minerUnbondingPeriod: duration_1.Duration.fromPartial({}), + labelAdminAccount: "", + reputationAdminAccount: "", + priceTokenDenoms: [], + modelDefaultTokenPrice: undefined + }; +} +exports.Params = { + typeUrl: "/dht.v1.Params", + encode(message, writer = _m0.Writer.create()) { + if (message.orchestratorValidTime !== undefined) { + duration_1.Duration.encode(message.orchestratorValidTime, writer.uint32(10).fork()).ldelim(); + } + if (message.minerValidTime !== undefined) { + duration_1.Duration.encode(message.minerValidTime, writer.uint32(18).fork()).ldelim(); + } + if (message.adminAccount !== "") { + writer.uint32(26).string(message.adminAccount); + } + if (message.orchestratorMinDeposit !== undefined) { + coin_1.Coin.encode(message.orchestratorMinDeposit, writer.uint32(34).fork()).ldelim(); + } + if (message.minerMinDeposit !== undefined) { + coin_1.Coin.encode(message.minerMinDeposit, writer.uint32(42).fork()).ldelim(); + } + if (message.orchestratorUnbondingPeriod !== undefined) { + duration_1.Duration.encode(message.orchestratorUnbondingPeriod, writer.uint32(50).fork()).ldelim(); + } + if (message.minerUnbondingPeriod !== undefined) { + duration_1.Duration.encode(message.minerUnbondingPeriod, writer.uint32(58).fork()).ldelim(); + } + if (message.labelAdminAccount !== "") { + writer.uint32(66).string(message.labelAdminAccount); + } + if (message.reputationAdminAccount !== "") { + writer.uint32(74).string(message.reputationAdminAccount); + } + for (const v of message.priceTokenDenoms) { + writer.uint32(82).string(v); + } + if (message.modelDefaultTokenPrice !== undefined) { + model_1.TokenPrice.encode(message.modelDefaultTokenPrice, writer.uint32(90).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseParams(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.orchestratorValidTime = duration_1.Duration.decode(reader, reader.uint32()); + break; + case 2: + message.minerValidTime = duration_1.Duration.decode(reader, reader.uint32()); + break; + case 3: + message.adminAccount = reader.string(); + break; + case 4: + message.orchestratorMinDeposit = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 5: + message.minerMinDeposit = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 6: + message.orchestratorUnbondingPeriod = duration_1.Duration.decode(reader, reader.uint32()); + break; + case 7: + message.minerUnbondingPeriod = duration_1.Duration.decode(reader, reader.uint32()); + break; + case 8: + message.labelAdminAccount = reader.string(); + break; + case 9: + message.reputationAdminAccount = reader.string(); + break; + case 10: + message.priceTokenDenoms.push(reader.string()); + break; + case 11: + message.modelDefaultTokenPrice = model_1.TokenPrice.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseParams(); + if ((0, helpers_1.isSet)(object.orchestratorValidTime)) + obj.orchestratorValidTime = duration_1.Duration.fromJSON(object.orchestratorValidTime); + if ((0, helpers_1.isSet)(object.minerValidTime)) + obj.minerValidTime = duration_1.Duration.fromJSON(object.minerValidTime); + if ((0, helpers_1.isSet)(object.adminAccount)) + obj.adminAccount = String(object.adminAccount); + if ((0, helpers_1.isSet)(object.orchestratorMinDeposit)) + obj.orchestratorMinDeposit = coin_1.Coin.fromJSON(object.orchestratorMinDeposit); + if ((0, helpers_1.isSet)(object.minerMinDeposit)) + obj.minerMinDeposit = coin_1.Coin.fromJSON(object.minerMinDeposit); + if ((0, helpers_1.isSet)(object.orchestratorUnbondingPeriod)) + obj.orchestratorUnbondingPeriod = duration_1.Duration.fromJSON(object.orchestratorUnbondingPeriod); + if ((0, helpers_1.isSet)(object.minerUnbondingPeriod)) + obj.minerUnbondingPeriod = duration_1.Duration.fromJSON(object.minerUnbondingPeriod); + if ((0, helpers_1.isSet)(object.labelAdminAccount)) + obj.labelAdminAccount = String(object.labelAdminAccount); + if ((0, helpers_1.isSet)(object.reputationAdminAccount)) + obj.reputationAdminAccount = String(object.reputationAdminAccount); + if (Array.isArray(object?.priceTokenDenoms)) + obj.priceTokenDenoms = object.priceTokenDenoms.map((e) => String(e)); + if ((0, helpers_1.isSet)(object.modelDefaultTokenPrice)) + obj.modelDefaultTokenPrice = model_1.TokenPrice.fromJSON(object.modelDefaultTokenPrice); + return obj; + }, + toJSON(message) { + const obj = {}; + message.orchestratorValidTime !== undefined && (obj.orchestratorValidTime = message.orchestratorValidTime ? duration_1.Duration.toJSON(message.orchestratorValidTime) : undefined); + message.minerValidTime !== undefined && (obj.minerValidTime = message.minerValidTime ? duration_1.Duration.toJSON(message.minerValidTime) : undefined); + message.adminAccount !== undefined && (obj.adminAccount = message.adminAccount); + message.orchestratorMinDeposit !== undefined && (obj.orchestratorMinDeposit = message.orchestratorMinDeposit ? coin_1.Coin.toJSON(message.orchestratorMinDeposit) : undefined); + message.minerMinDeposit !== undefined && (obj.minerMinDeposit = message.minerMinDeposit ? coin_1.Coin.toJSON(message.minerMinDeposit) : undefined); + message.orchestratorUnbondingPeriod !== undefined && (obj.orchestratorUnbondingPeriod = message.orchestratorUnbondingPeriod ? duration_1.Duration.toJSON(message.orchestratorUnbondingPeriod) : undefined); + message.minerUnbondingPeriod !== undefined && (obj.minerUnbondingPeriod = message.minerUnbondingPeriod ? duration_1.Duration.toJSON(message.minerUnbondingPeriod) : undefined); + message.labelAdminAccount !== undefined && (obj.labelAdminAccount = message.labelAdminAccount); + message.reputationAdminAccount !== undefined && (obj.reputationAdminAccount = message.reputationAdminAccount); + if (message.priceTokenDenoms) { + obj.priceTokenDenoms = message.priceTokenDenoms.map(e => e); + } + else { + obj.priceTokenDenoms = []; + } + message.modelDefaultTokenPrice !== undefined && (obj.modelDefaultTokenPrice = message.modelDefaultTokenPrice ? model_1.TokenPrice.toJSON(message.modelDefaultTokenPrice) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseParams(); + if (object.orchestratorValidTime !== undefined && object.orchestratorValidTime !== null) { + message.orchestratorValidTime = duration_1.Duration.fromPartial(object.orchestratorValidTime); + } + if (object.minerValidTime !== undefined && object.minerValidTime !== null) { + message.minerValidTime = duration_1.Duration.fromPartial(object.minerValidTime); + } + message.adminAccount = object.adminAccount ?? ""; + if (object.orchestratorMinDeposit !== undefined && object.orchestratorMinDeposit !== null) { + message.orchestratorMinDeposit = coin_1.Coin.fromPartial(object.orchestratorMinDeposit); + } + if (object.minerMinDeposit !== undefined && object.minerMinDeposit !== null) { + message.minerMinDeposit = coin_1.Coin.fromPartial(object.minerMinDeposit); + } + if (object.orchestratorUnbondingPeriod !== undefined && object.orchestratorUnbondingPeriod !== null) { + message.orchestratorUnbondingPeriod = duration_1.Duration.fromPartial(object.orchestratorUnbondingPeriod); + } + if (object.minerUnbondingPeriod !== undefined && object.minerUnbondingPeriod !== null) { + message.minerUnbondingPeriod = duration_1.Duration.fromPartial(object.minerUnbondingPeriod); + } + message.labelAdminAccount = object.labelAdminAccount ?? ""; + message.reputationAdminAccount = object.reputationAdminAccount ?? ""; + message.priceTokenDenoms = object.priceTokenDenoms?.map(e => e) || []; + if (object.modelDefaultTokenPrice !== undefined && object.modelDefaultTokenPrice !== null) { + message.modelDefaultTokenPrice = model_1.TokenPrice.fromPartial(object.modelDefaultTokenPrice); + } + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2RodC92MS9wYXJhbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsNkRBQTBEO0FBQzFELHlEQUFzRDtBQUN0RCxtQ0FBcUM7QUFDckMsd0RBQTBDO0FBQzFDLDJDQUEwRDtBQUU3QyxRQUFBLGVBQWUsR0FBRyxRQUFRLENBQUM7QUFleEMsU0FBUyxnQkFBZ0I7SUFDdkIsT0FBTztRQUNMLHFCQUFxQixFQUFFLG1CQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUMvQyxjQUFjLEVBQUUsbUJBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQ3hDLFlBQVksRUFBRSxFQUFFO1FBQ2hCLHNCQUFzQixFQUFFLFdBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQzVDLGVBQWUsRUFBRSxXQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUNyQywyQkFBMkIsRUFBRSxtQkFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7UUFDckQsb0JBQW9CLEVBQUUsbUJBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQzlDLGlCQUFpQixFQUFFLEVBQUU7UUFDckIsc0JBQXNCLEVBQUUsRUFBRTtRQUMxQixnQkFBZ0IsRUFBRSxFQUFFO1FBQ3BCLHNCQUFzQixFQUFFLFNBQVM7S0FDbEMsQ0FBQztBQUNKLENBQUM7QUFDWSxRQUFBLE1BQU0sR0FBRztJQUNwQixPQUFPLEVBQUUsZ0JBQWdCO0lBQ3pCLE1BQU0sQ0FBQyxPQUFlLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDOUQsSUFBSSxPQUFPLENBQUMscUJBQXFCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDaEQsbUJBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLHFC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 \ No newline at end of file diff --git a/dist/codec/dht/v1/query.d.ts b/dist/codec/dht/v1/query.d.ts new file mode 100644 index 0000000..32845c0 --- /dev/null +++ b/dist/codec/dht/v1/query.d.ts @@ -0,0 +1,2668 @@ +/// +import { PageRequest, PageResponse } from "../../cosmos/base/query/v1beta1/pagination"; +import { InferenceType, Availability, Orchestrator } from "./orchestrator"; +import { Params } from "./params"; +import { Model } from "./model"; +import { ModelBlock } from "./model_block"; +import { Node } from "./node"; +import { Miner } from "./miner"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +import { Rpc } from "../../helpers"; +export declare const protobufPackage = "dht.v1"; +/** QueryParamsRequest is request type for the Query/Params RPC method. */ +export interface QueryParamsRequest { +} +/** QueryParamsResponse is response type for the Query/Params RPC method. */ +export interface QueryParamsResponse { + /** params holds all the parameters of this module. */ + params: Params; +} +export interface QueryGetModelRequest { + modelName: string; +} +export interface QueryGetModelResponse { + model?: Model; +} +export interface QueryGetModelBlocksRequest { + modelName: string; + pagination?: PageRequest; +} +export interface QueryGetModelBlocksResponse { + blocks: ModelBlock[]; + pagination?: PageResponse; +} +export interface QueryGetNodeRequest { + nodeId: string; +} +export interface QueryGetNodeResponse { + node?: Node; +} +export interface QueryGetMinerRequest { + nodeId: string; +} +export interface QueryGetMinerResponse { + miner?: Miner; + node?: Node; +} +export interface QueryGetOrchestratorRequest { + nodeId: string; +} +export interface QueryGetOrchestratorResponse { + orchestrator?: Orchestrator; + node?: Node; +} +export interface QueryGetOrchestratorsByParamsRequest { + inferenceType: InferenceType; + availability: Availability; + limit: number; + key: Uint8Array; +} +export interface QueryGetOrchestratorsByParamsResponse { + orchestrators: Orchestrator[]; + nextKey: Uint8Array; +} +export interface QueryGetAllOrchestratorRequest { + pagination?: PageRequest; +} +export interface QueryGetAllOrchestratorResponse { + orchestrators: Orchestrator[]; + pagination?: PageResponse; +} +export interface QueryGetOrchestratorHeartbeatRequest { + nodeId: string; +} +export interface QueryGetOrchestratorHeartbeatResponse { + timestamp: number; +} +export interface QueryGetMinerHeartbeatRequest { + nodeId: string; +} +export interface QueryGetMinerHeartbeatResponse { + timestamp: number; +} +export declare const QueryParamsRequest: { + typeUrl: string; + encode(_: QueryParamsRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryParamsRequest; + fromJSON(_: any): QueryParamsRequest; + toJSON(_: QueryParamsRequest): JsonSafe; + fromPartial, never>>(_: I): QueryParamsRequest; +}; +export declare const QueryParamsResponse: { + typeUrl: string; + encode(message: QueryParamsResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryParamsResponse; + fromJSON(object: any): QueryParamsResponse; + toJSON(message: QueryParamsResponse): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + minerValidTime?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + adminAccount?: string | undefined; + orchestratorMinDeposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + minerMinDeposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + orchestratorUnbondingPeriod?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + minerUnbondingPeriod?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + labelAdminAccount?: string | undefined; + reputationAdminAccount?: string | undefined; + priceTokenDenoms?: (string[] & string[] & Record, never>) | undefined; + modelDefaultTokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryParamsResponse; +}; +export declare const QueryGetModelRequest: { + typeUrl: string; + encode(message: QueryGetModelRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetModelRequest; + fromJSON(object: any): QueryGetModelRequest; + toJSON(message: QueryGetModelRequest): JsonSafe; + fromPartial, never>>(object: I): QueryGetModelRequest; +}; +export declare const QueryGetModelResponse: { + typeUrl: string; + encode(message: QueryGetModelResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetModelResponse; + fromJSON(object: any): QueryGetModelResponse; + toJSON(message: QueryGetModelResponse): JsonSafe; + fromPartial, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryGetModelResponse; +}; +export declare const QueryGetModelBlocksRequest: { + typeUrl: string; + encode(message: QueryGetModelBlocksRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetModelBlocksRequest; + fromJSON(object: any): QueryGetModelBlocksRequest; + toJSON(message: QueryGetModelBlocksRequest): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + limit?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + countTotal?: boolean | undefined; + reverse?: boolean | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryGetModelBlocksRequest; +}; +export declare const QueryGetModelBlocksResponse: { + typeUrl: string; + encode(message: QueryGetModelBlocksResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetModelBlocksResponse; + fromJSON(object: any): QueryGetModelBlocksResponse; + toJSON(message: QueryGetModelBlocksResponse): JsonSafe; + fromPartial, never>)[] & Record, never>) | undefined; + pagination?: ({ + nextKey?: Uint8Array | undefined; + total?: string | number | import("long").Long | undefined; + } & { + nextKey?: Uint8Array | undefined; + total?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryGetModelBlocksResponse; +}; +export declare const QueryGetNodeRequest: { + typeUrl: string; + encode(message: QueryGetNodeRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetNodeRequest; + fromJSON(object: any): QueryGetNodeRequest; + toJSON(message: QueryGetNodeRequest): JsonSafe; + fromPartial, never>>(object: I): QueryGetNodeRequest; +}; +export declare const QueryGetNodeResponse: { + typeUrl: string; + encode(message: QueryGetNodeResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetNodeResponse; + fromJSON(object: any): QueryGetNodeResponse; + toJSON(message: QueryGetNodeResponse): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + networkRps?: number | undefined; + nextPings?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; + usingRelay?: boolean | undefined; + labels?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryGetNodeResponse; +}; +export declare const QueryGetMinerRequest: { + typeUrl: string; + encode(message: QueryGetMinerRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetMinerRequest; + fromJSON(object: any): QueryGetMinerRequest; + toJSON(message: QueryGetMinerRequest): JsonSafe; + fromPartial, never>>(object: I): QueryGetMinerRequest; +}; +export declare const QueryGetMinerResponse: { + typeUrl: string; + encode(message: QueryGetMinerResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetMinerResponse; + fromJSON(object: any): QueryGetMinerResponse; + toJSON(message: QueryGetMinerResponse): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + endBlock?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + torchDtype?: string | undefined; + quantType?: string | undefined; + cacheTokensLeft?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + inferenceRps?: number | undefined; + modelName?: string | undefined; + validUntil?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + reputations?: ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] & ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + } & { + name?: string | undefined; + score?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>) | undefined; + node?: ({ + nodeId?: string | undefined; + publicName?: string | undefined; + version?: string | undefined; + networkAddress?: string | undefined; + walletAddress?: string | undefined; + vram?: string | number | import("long").Long | undefined; + networkRps?: number | undefined; + nextPings?: Uint8Array[] | undefined; + usingRelay?: boolean | undefined; + labels?: string[] | undefined; + } & { + nodeId?: string | undefined; + publicName?: string | undefined; + version?: string | undefined; + networkAddress?: string | undefined; + walletAddress?: string | undefined; + vram?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + networkRps?: number | undefined; + nextPings?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; + usingRelay?: boolean | undefined; + labels?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryGetMinerResponse; +}; +export declare const QueryGetOrchestratorRequest: { + typeUrl: string; + encode(message: QueryGetOrchestratorRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetOrchestratorRequest; + fromJSON(object: any): QueryGetOrchestratorRequest; + toJSON(message: QueryGetOrchestratorRequest): JsonSafe; + fromPartial, never>>(object: I): QueryGetOrchestratorRequest; +}; +export declare const QueryGetOrchestratorResponse: { + typeUrl: string; + encode(message: QueryGetOrchestratorResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetOrchestratorResponse; + fromJSON(object: any): QueryGetOrchestratorResponse; + toJSON(message: QueryGetOrchestratorResponse): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>))[] & Record, never>) | undefined; + validUntil?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + reputations?: ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] & ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + } & { + name?: string | undefined; + score?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>) | undefined; + node?: ({ + nodeId?: string | undefined; + publicName?: string | undefined; + version?: string | undefined; + networkAddress?: string | undefined; + walletAddress?: string | undefined; + vram?: string | number | import("long").Long | undefined; + networkRps?: number | undefined; + nextPings?: Uint8Array[] | undefined; + usingRelay?: boolean | undefined; + labels?: string[] | undefined; + } & { + nodeId?: string | undefined; + publicName?: string | undefined; + version?: string | undefined; + networkAddress?: string | undefined; + walletAddress?: string | undefined; + vram?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + networkRps?: number | undefined; + nextPings?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; + usingRelay?: boolean | undefined; + labels?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryGetOrchestratorResponse; +}; +export declare const QueryGetOrchestratorsByParamsRequest: { + typeUrl: string; + encode(message: QueryGetOrchestratorsByParamsRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetOrchestratorsByParamsRequest; + fromJSON(object: any): QueryGetOrchestratorsByParamsRequest; + toJSON(message: QueryGetOrchestratorsByParamsRequest): JsonSafe; + fromPartial, never>>(object: I): QueryGetOrchestratorsByParamsRequest; +}; +export declare const QueryGetOrchestratorsByParamsResponse: { + typeUrl: string; + encode(message: QueryGetOrchestratorsByParamsResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetOrchestratorsByParamsResponse; + fromJSON(object: any): QueryGetOrchestratorsByParamsResponse; + toJSON(message: QueryGetOrchestratorsByParamsResponse): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>))[] & Record, never>) | undefined; + validUntil?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + reputations?: ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] & ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + } & { + name?: string | undefined; + score?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + nextKey?: Uint8Array | undefined; + } & Record, never>>(object: I): QueryGetOrchestratorsByParamsResponse; +}; +export declare const QueryGetAllOrchestratorRequest: { + typeUrl: string; + encode(message: QueryGetAllOrchestratorRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetAllOrchestratorRequest; + fromJSON(object: any): QueryGetAllOrchestratorRequest; + toJSON(message: QueryGetAllOrchestratorRequest): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + limit?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + countTotal?: boolean | undefined; + reverse?: boolean | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryGetAllOrchestratorRequest; +}; +export declare const QueryGetAllOrchestratorResponse: { + typeUrl: string; + encode(message: QueryGetAllOrchestratorResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetAllOrchestratorResponse; + fromJSON(object: any): QueryGetAllOrchestratorResponse; + toJSON(message: QueryGetAllOrchestratorResponse): JsonSafe; + fromPartial import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>))[] & Record, never>) | undefined; + validUntil?: ({ + seconds?: string | number | import("long").Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + bondStatus?: import("./deposit").BondStatus | undefined; + deposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + reputations?: ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + }[] & ({ + name?: string | undefined; + score?: string | number | import("long").Long | undefined; + } & { + name?: string | undefined; + score?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + pagination?: ({ + nextKey?: Uint8Array | undefined; + total?: string | number | import("long").Long | undefined; + } & { + nextKey?: Uint8Array | undefined; + total?: string | number | (import("long").Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | import("long").Long) => import("long").Long; + and: (other: string | number | import("long").Long) => import("long").Long; + compare: (other: string | number | import("long").Long) => number; + comp: (other: string | number | import("long").Long) => number; + divide: (divisor: string | number | import("long").Long) => import("long").Long; + div: (divisor: string | number | import("long").Long) => import("long").Long; + equals: (other: string | number | import("long").Long) => boolean; + eq: (other: string | number | import("long").Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | import("long").Long) => boolean; + gt: (other: string | number | import("long").Long) => boolean; + greaterThanOrEqual: (other: string | number | import("long").Long) => boolean; + gte: (other: string | number | import("long").Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | import("long").Long) => boolean; + lt: (other: string | number | import("long").Long) => boolean; + lessThanOrEqual: (other: string | number | import("long").Long) => boolean; + lte: (other: string | number | import("long").Long) => boolean; + modulo: (other: string | number | import("long").Long) => import("long").Long; + mod: (other: string | number | import("long").Long) => import("long").Long; + multiply: (multiplier: string | number | import("long").Long) => import("long").Long; + mul: (multiplier: string | number | import("long").Long) => import("long").Long; + negate: () => import("long").Long; + neg: () => import("long").Long; + not: () => import("long").Long; + notEquals: (other: string | number | import("long").Long) => boolean; + neq: (other: string | number | import("long").Long) => boolean; + or: (other: string | number | import("long").Long) => import("long").Long; + shiftLeft: (numBits: number | import("long").Long) => import("long").Long; + shl: (numBits: number | import("long").Long) => import("long").Long; + shiftRight: (numBits: number | import("long").Long) => import("long").Long; + shr: (numBits: number | import("long").Long) => import("long").Long; + shiftRightUnsigned: (numBits: number | import("long").Long) => import("long").Long; + shru: (numBits: number | import("long").Long) => import("long").Long; + subtract: (subtrahend: string | number | import("long").Long) => import("long").Long; + sub: (subtrahend: string | number | import("long").Long) => import("long").Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => import("long").Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => import("long").Long; + xor: (other: string | number | import("long").Long) => import("long").Long; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): QueryGetAllOrchestratorResponse; +}; +export declare const QueryGetOrchestratorHeartbeatRequest: { + typeUrl: string; + encode(message: QueryGetOrchestratorHeartbeatRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetOrchestratorHeartbeatRequest; + fromJSON(object: any): QueryGetOrchestratorHeartbeatRequest; + toJSON(message: QueryGetOrchestratorHeartbeatRequest): JsonSafe; + fromPartial, never>>(object: I): QueryGetOrchestratorHeartbeatRequest; +}; +export declare const QueryGetOrchestratorHeartbeatResponse: { + typeUrl: string; + encode(message: QueryGetOrchestratorHeartbeatResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetOrchestratorHeartbeatResponse; + fromJSON(object: any): QueryGetOrchestratorHeartbeatResponse; + toJSON(message: QueryGetOrchestratorHeartbeatResponse): JsonSafe; + fromPartial, never>>(object: I): QueryGetOrchestratorHeartbeatResponse; +}; +export declare const QueryGetMinerHeartbeatRequest: { + typeUrl: string; + encode(message: QueryGetMinerHeartbeatRequest, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetMinerHeartbeatRequest; + fromJSON(object: any): QueryGetMinerHeartbeatRequest; + toJSON(message: QueryGetMinerHeartbeatRequest): JsonSafe; + fromPartial, never>>(object: I): QueryGetMinerHeartbeatRequest; +}; +export declare const QueryGetMinerHeartbeatResponse: { + typeUrl: string; + encode(message: QueryGetMinerHeartbeatResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetMinerHeartbeatResponse; + fromJSON(object: any): QueryGetMinerHeartbeatResponse; + toJSON(message: QueryGetMinerHeartbeatResponse): JsonSafe; + fromPartial, never>>(object: I): QueryGetMinerHeartbeatResponse; +}; +/** Query defines the gRPC querier service. */ +export interface Query { + /** Parameters queries the parameters of the module. */ + Params(request?: QueryParamsRequest): Promise; + GetModel(request: QueryGetModelRequest): Promise; + /** Queries a list of GetModelBlocks items. */ + GetModelBlocks(request: QueryGetModelBlocksRequest): Promise; + /** Queries a list of GetNode items. */ + GetNode(request: QueryGetNodeRequest): Promise; + /** Queries a list of GetMiner items. */ + GetMiner(request: QueryGetMinerRequest): Promise; + /** Queries a list of GetOrchestrator items. */ + GetOrchestrator(request: QueryGetOrchestratorRequest): Promise; + GetAllOrchestrator(request?: QueryGetAllOrchestratorRequest): Promise; + GetOrchestratorsByParams(request: QueryGetOrchestratorsByParamsRequest): Promise; + /** Queries a list of GetOrchestratorHeartbeat items. */ + GetOrchestratorHeartbeat(request: QueryGetOrchestratorHeartbeatRequest): Promise; + /** Queries a list of GetMinerHeartbeat items. */ + GetMinerHeartbeat(request: QueryGetMinerHeartbeatRequest): Promise; +} +export declare class QueryClientImpl implements Query { + private readonly rpc; + constructor(rpc: Rpc); + Params(request?: QueryParamsRequest): Promise; + GetModel(request: QueryGetModelRequest): Promise; + GetModelBlocks(request: QueryGetModelBlocksRequest): Promise; + GetNode(request: QueryGetNodeRequest): Promise; + GetMiner(request: QueryGetMinerRequest): Promise; + GetOrchestrator(request: QueryGetOrchestratorRequest): Promise; + GetAllOrchestrator(request?: QueryGetAllOrchestratorRequest): Promise; + GetOrchestratorsByParams(request: QueryGetOrchestratorsByParamsRequest): Promise; + GetOrchestratorHeartbeat(request: QueryGetOrchestratorHeartbeatRequest): Promise; + GetMinerHeartbeat(request: QueryGetMinerHeartbeatRequest): Promise; +} diff --git a/dist/codec/dht/v1/query.js b/dist/codec/dht/v1/query.js new file mode 100644 index 0000000..9f45c1d --- /dev/null +++ b/dist/codec/dht/v1/query.js @@ -0,0 +1,1170 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.QueryClientImpl = exports.QueryGetMinerHeartbeatResponse = exports.QueryGetMinerHeartbeatRequest = exports.QueryGetOrchestratorHeartbeatResponse = exports.QueryGetOrchestratorHeartbeatRequest = exports.QueryGetAllOrchestratorResponse = exports.QueryGetAllOrchestratorRequest = exports.QueryGetOrchestratorsByParamsResponse = exports.QueryGetOrchestratorsByParamsRequest = exports.QueryGetOrchestratorResponse = exports.QueryGetOrchestratorRequest = exports.QueryGetMinerResponse = exports.QueryGetMinerRequest = exports.QueryGetNodeResponse = exports.QueryGetNodeRequest = exports.QueryGetModelBlocksResponse = exports.QueryGetModelBlocksRequest = exports.QueryGetModelResponse = exports.QueryGetModelRequest = exports.QueryParamsResponse = exports.QueryParamsRequest = exports.protobufPackage = void 0; +/* eslint-disable */ +const pagination_1 = require("../../cosmos/base/query/v1beta1/pagination"); +const orchestrator_1 = require("./orchestrator"); +const params_1 = require("./params"); +const model_1 = require("./model"); +const model_block_1 = require("./model_block"); +const node_1 = require("./node"); +const miner_1 = require("./miner"); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +exports.protobufPackage = "dht.v1"; +function createBaseQueryParamsRequest() { + return {}; +} +exports.QueryParamsRequest = { + typeUrl: "/dht.v1.QueryParamsRequest", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryParamsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseQueryParamsRequest(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseQueryParamsRequest(); + return message; + } +}; +function createBaseQueryParamsResponse() { + return { + params: params_1.Params.fromPartial({}) + }; +} +exports.QueryParamsResponse = { + typeUrl: "/dht.v1.QueryParamsResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.params !== undefined) { + params_1.Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryParamsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.params = params_1.Params.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryParamsResponse(); + if ((0, helpers_1.isSet)(object.params)) + obj.params = params_1.Params.fromJSON(object.params); + return obj; + }, + toJSON(message) { + const obj = {}; + message.params !== undefined && (obj.params = message.params ? params_1.Params.toJSON(message.params) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryParamsResponse(); + if (object.params !== undefined && object.params !== null) { + message.params = params_1.Params.fromPartial(object.params); + } + return message; + } +}; +function createBaseQueryGetModelRequest() { + return { + modelName: "" + }; +} +exports.QueryGetModelRequest = { + typeUrl: "/dht.v1.QueryGetModelRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.modelName !== "") { + writer.uint32(10).string(message.modelName); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetModelRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.modelName = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetModelRequest(); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + return obj; + }, + toJSON(message) { + const obj = {}; + message.modelName !== undefined && (obj.modelName = message.modelName); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetModelRequest(); + message.modelName = object.modelName ?? ""; + return message; + } +}; +function createBaseQueryGetModelResponse() { + return { + model: undefined + }; +} +exports.QueryGetModelResponse = { + typeUrl: "/dht.v1.QueryGetModelResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.model !== undefined) { + model_1.Model.encode(message.model, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetModelResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.model = model_1.Model.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetModelResponse(); + if ((0, helpers_1.isSet)(object.model)) + obj.model = model_1.Model.fromJSON(object.model); + return obj; + }, + toJSON(message) { + const obj = {}; + message.model !== undefined && (obj.model = message.model ? model_1.Model.toJSON(message.model) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetModelResponse(); + if (object.model !== undefined && object.model !== null) { + message.model = model_1.Model.fromPartial(object.model); + } + return message; + } +}; +function createBaseQueryGetModelBlocksRequest() { + return { + modelName: "", + pagination: undefined + }; +} +exports.QueryGetModelBlocksRequest = { + typeUrl: "/dht.v1.QueryGetModelBlocksRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.modelName !== "") { + writer.uint32(10).string(message.modelName); + } + if (message.pagination !== undefined) { + pagination_1.PageRequest.encode(message.pagination, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetModelBlocksRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.modelName = reader.string(); + break; + case 2: + message.pagination = pagination_1.PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetModelBlocksRequest(); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageRequest.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + message.modelName !== undefined && (obj.modelName = message.modelName); + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageRequest.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetModelBlocksRequest(); + message.modelName = object.modelName ?? ""; + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageRequest.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryGetModelBlocksResponse() { + return { + blocks: [], + pagination: undefined + }; +} +exports.QueryGetModelBlocksResponse = { + typeUrl: "/dht.v1.QueryGetModelBlocksResponse", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.blocks) { + model_block_1.ModelBlock.encode(v, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + pagination_1.PageResponse.encode(message.pagination, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetModelBlocksResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.blocks.push(model_block_1.ModelBlock.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = pagination_1.PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetModelBlocksResponse(); + if (Array.isArray(object?.blocks)) + obj.blocks = object.blocks.map((e) => model_block_1.ModelBlock.fromJSON(e)); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageResponse.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.blocks) { + obj.blocks = message.blocks.map(e => e ? model_block_1.ModelBlock.toJSON(e) : undefined); + } + else { + obj.blocks = []; + } + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageResponse.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetModelBlocksResponse(); + message.blocks = object.blocks?.map(e => model_block_1.ModelBlock.fromPartial(e)) || []; + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageResponse.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryGetNodeRequest() { + return { + nodeId: "" + }; +} +exports.QueryGetNodeRequest = { + typeUrl: "/dht.v1.QueryGetNodeRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetNodeRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetNodeRequest(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetNodeRequest(); + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseQueryGetNodeResponse() { + return { + node: undefined + }; +} +exports.QueryGetNodeResponse = { + typeUrl: "/dht.v1.QueryGetNodeResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.node !== undefined) { + node_1.Node.encode(message.node, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetNodeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.node = node_1.Node.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetNodeResponse(); + if ((0, helpers_1.isSet)(object.node)) + obj.node = node_1.Node.fromJSON(object.node); + return obj; + }, + toJSON(message) { + const obj = {}; + message.node !== undefined && (obj.node = message.node ? node_1.Node.toJSON(message.node) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetNodeResponse(); + if (object.node !== undefined && object.node !== null) { + message.node = node_1.Node.fromPartial(object.node); + } + return message; + } +}; +function createBaseQueryGetMinerRequest() { + return { + nodeId: "" + }; +} +exports.QueryGetMinerRequest = { + typeUrl: "/dht.v1.QueryGetMinerRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetMinerRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetMinerRequest(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetMinerRequest(); + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseQueryGetMinerResponse() { + return { + miner: undefined, + node: undefined + }; +} +exports.QueryGetMinerResponse = { + typeUrl: "/dht.v1.QueryGetMinerResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.miner !== undefined) { + miner_1.Miner.encode(message.miner, writer.uint32(10).fork()).ldelim(); + } + if (message.node !== undefined) { + node_1.Node.encode(message.node, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetMinerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.miner = miner_1.Miner.decode(reader, reader.uint32()); + break; + case 2: + message.node = node_1.Node.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetMinerResponse(); + if ((0, helpers_1.isSet)(object.miner)) + obj.miner = miner_1.Miner.fromJSON(object.miner); + if ((0, helpers_1.isSet)(object.node)) + obj.node = node_1.Node.fromJSON(object.node); + return obj; + }, + toJSON(message) { + const obj = {}; + message.miner !== undefined && (obj.miner = message.miner ? miner_1.Miner.toJSON(message.miner) : undefined); + message.node !== undefined && (obj.node = message.node ? node_1.Node.toJSON(message.node) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetMinerResponse(); + if (object.miner !== undefined && object.miner !== null) { + message.miner = miner_1.Miner.fromPartial(object.miner); + } + if (object.node !== undefined && object.node !== null) { + message.node = node_1.Node.fromPartial(object.node); + } + return message; + } +}; +function createBaseQueryGetOrchestratorRequest() { + return { + nodeId: "" + }; +} +exports.QueryGetOrchestratorRequest = { + typeUrl: "/dht.v1.QueryGetOrchestratorRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetOrchestratorRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetOrchestratorRequest(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetOrchestratorRequest(); + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseQueryGetOrchestratorResponse() { + return { + orchestrator: undefined, + node: undefined + }; +} +exports.QueryGetOrchestratorResponse = { + typeUrl: "/dht.v1.QueryGetOrchestratorResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.orchestrator !== undefined) { + orchestrator_1.Orchestrator.encode(message.orchestrator, writer.uint32(10).fork()).ldelim(); + } + if (message.node !== undefined) { + node_1.Node.encode(message.node, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetOrchestratorResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.orchestrator = orchestrator_1.Orchestrator.decode(reader, reader.uint32()); + break; + case 2: + message.node = node_1.Node.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetOrchestratorResponse(); + if ((0, helpers_1.isSet)(object.orchestrator)) + obj.orchestrator = orchestrator_1.Orchestrator.fromJSON(object.orchestrator); + if ((0, helpers_1.isSet)(object.node)) + obj.node = node_1.Node.fromJSON(object.node); + return obj; + }, + toJSON(message) { + const obj = {}; + message.orchestrator !== undefined && (obj.orchestrator = message.orchestrator ? orchestrator_1.Orchestrator.toJSON(message.orchestrator) : undefined); + message.node !== undefined && (obj.node = message.node ? node_1.Node.toJSON(message.node) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetOrchestratorResponse(); + if (object.orchestrator !== undefined && object.orchestrator !== null) { + message.orchestrator = orchestrator_1.Orchestrator.fromPartial(object.orchestrator); + } + if (object.node !== undefined && object.node !== null) { + message.node = node_1.Node.fromPartial(object.node); + } + return message; + } +}; +function createBaseQueryGetOrchestratorsByParamsRequest() { + return { + inferenceType: 0, + availability: 0, + limit: 0, + key: new Uint8Array() + }; +} +exports.QueryGetOrchestratorsByParamsRequest = { + typeUrl: "/dht.v1.QueryGetOrchestratorsByParamsRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.inferenceType !== 0) { + writer.uint32(8).int32(message.inferenceType); + } + if (message.availability !== 0) { + writer.uint32(16).int32(message.availability); + } + if (message.limit !== 0) { + writer.uint32(24).uint32(message.limit); + } + if (message.key.length !== 0) { + writer.uint32(34).bytes(message.key); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetOrchestratorsByParamsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.inferenceType = reader.int32(); + break; + case 2: + message.availability = reader.int32(); + break; + case 3: + message.limit = reader.uint32(); + break; + case 4: + message.key = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetOrchestratorsByParamsRequest(); + if ((0, helpers_1.isSet)(object.inferenceType)) + obj.inferenceType = (0, orchestrator_1.inferenceTypeFromJSON)(object.inferenceType); + if ((0, helpers_1.isSet)(object.availability)) + obj.availability = (0, orchestrator_1.availabilityFromJSON)(object.availability); + if ((0, helpers_1.isSet)(object.limit)) + obj.limit = Number(object.limit); + if ((0, helpers_1.isSet)(object.key)) + obj.key = (0, helpers_1.bytesFromBase64)(object.key); + return obj; + }, + toJSON(message) { + const obj = {}; + message.inferenceType !== undefined && (obj.inferenceType = (0, orchestrator_1.inferenceTypeToJSON)(message.inferenceType)); + message.availability !== undefined && (obj.availability = (0, orchestrator_1.availabilityToJSON)(message.availability)); + message.limit !== undefined && (obj.limit = Math.round(message.limit)); + message.key !== undefined && (obj.key = (0, helpers_1.base64FromBytes)(message.key !== undefined ? message.key : new Uint8Array())); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetOrchestratorsByParamsRequest(); + message.inferenceType = object.inferenceType ?? 0; + message.availability = object.availability ?? 0; + message.limit = object.limit ?? 0; + message.key = object.key ?? new Uint8Array(); + return message; + } +}; +function createBaseQueryGetOrchestratorsByParamsResponse() { + return { + orchestrators: [], + nextKey: new Uint8Array() + }; +} +exports.QueryGetOrchestratorsByParamsResponse = { + typeUrl: "/dht.v1.QueryGetOrchestratorsByParamsResponse", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.orchestrators) { + orchestrator_1.Orchestrator.encode(v, writer.uint32(10).fork()).ldelim(); + } + if (message.nextKey.length !== 0) { + writer.uint32(18).bytes(message.nextKey); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetOrchestratorsByParamsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.orchestrators.push(orchestrator_1.Orchestrator.decode(reader, reader.uint32())); + break; + case 2: + message.nextKey = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetOrchestratorsByParamsResponse(); + if (Array.isArray(object?.orchestrators)) + obj.orchestrators = object.orchestrators.map((e) => orchestrator_1.Orchestrator.fromJSON(e)); + if ((0, helpers_1.isSet)(object.nextKey)) + obj.nextKey = (0, helpers_1.bytesFromBase64)(object.nextKey); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.orchestrators) { + obj.orchestrators = message.orchestrators.map(e => e ? orchestrator_1.Orchestrator.toJSON(e) : undefined); + } + else { + obj.orchestrators = []; + } + message.nextKey !== undefined && (obj.nextKey = (0, helpers_1.base64FromBytes)(message.nextKey !== undefined ? message.nextKey : new Uint8Array())); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetOrchestratorsByParamsResponse(); + message.orchestrators = object.orchestrators?.map(e => orchestrator_1.Orchestrator.fromPartial(e)) || []; + message.nextKey = object.nextKey ?? new Uint8Array(); + return message; + } +}; +function createBaseQueryGetAllOrchestratorRequest() { + return { + pagination: undefined + }; +} +exports.QueryGetAllOrchestratorRequest = { + typeUrl: "/dht.v1.QueryGetAllOrchestratorRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.pagination !== undefined) { + pagination_1.PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetAllOrchestratorRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = pagination_1.PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetAllOrchestratorRequest(); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageRequest.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageRequest.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetAllOrchestratorRequest(); + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageRequest.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryGetAllOrchestratorResponse() { + return { + orchestrators: [], + pagination: undefined + }; +} +exports.QueryGetAllOrchestratorResponse = { + typeUrl: "/dht.v1.QueryGetAllOrchestratorResponse", + encode(message, writer = _m0.Writer.create()) { + for (const v of message.orchestrators) { + orchestrator_1.Orchestrator.encode(v, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + pagination_1.PageResponse.encode(message.pagination, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetAllOrchestratorResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.orchestrators.push(orchestrator_1.Orchestrator.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = pagination_1.PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetAllOrchestratorResponse(); + if (Array.isArray(object?.orchestrators)) + obj.orchestrators = object.orchestrators.map((e) => orchestrator_1.Orchestrator.fromJSON(e)); + if ((0, helpers_1.isSet)(object.pagination)) + obj.pagination = pagination_1.PageResponse.fromJSON(object.pagination); + return obj; + }, + toJSON(message) { + const obj = {}; + if (message.orchestrators) { + obj.orchestrators = message.orchestrators.map(e => e ? orchestrator_1.Orchestrator.toJSON(e) : undefined); + } + else { + obj.orchestrators = []; + } + message.pagination !== undefined && (obj.pagination = message.pagination ? pagination_1.PageResponse.toJSON(message.pagination) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetAllOrchestratorResponse(); + message.orchestrators = object.orchestrators?.map(e => orchestrator_1.Orchestrator.fromPartial(e)) || []; + if (object.pagination !== undefined && object.pagination !== null) { + message.pagination = pagination_1.PageResponse.fromPartial(object.pagination); + } + return message; + } +}; +function createBaseQueryGetOrchestratorHeartbeatRequest() { + return { + nodeId: "" + }; +} +exports.QueryGetOrchestratorHeartbeatRequest = { + typeUrl: "/dht.v1.QueryGetOrchestratorHeartbeatRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetOrchestratorHeartbeatRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetOrchestratorHeartbeatRequest(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetOrchestratorHeartbeatRequest(); + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseQueryGetOrchestratorHeartbeatResponse() { + return { + timestamp: 0 + }; +} +exports.QueryGetOrchestratorHeartbeatResponse = { + typeUrl: "/dht.v1.QueryGetOrchestratorHeartbeatResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.timestamp !== 0) { + writer.uint32(8).int32(message.timestamp); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetOrchestratorHeartbeatResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.timestamp = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetOrchestratorHeartbeatResponse(); + if ((0, helpers_1.isSet)(object.timestamp)) + obj.timestamp = Number(object.timestamp); + return obj; + }, + toJSON(message) { + const obj = {}; + message.timestamp !== undefined && (obj.timestamp = Math.round(message.timestamp)); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetOrchestratorHeartbeatResponse(); + message.timestamp = object.timestamp ?? 0; + return message; + } +}; +function createBaseQueryGetMinerHeartbeatRequest() { + return { + nodeId: "" + }; +} +exports.QueryGetMinerHeartbeatRequest = { + typeUrl: "/dht.v1.QueryGetMinerHeartbeatRequest", + encode(message, writer = _m0.Writer.create()) { + if (message.nodeId !== "") { + writer.uint32(10).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetMinerHeartbeatRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetMinerHeartbeatRequest(); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetMinerHeartbeatRequest(); + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseQueryGetMinerHeartbeatResponse() { + return { + timestamp: 0 + }; +} +exports.QueryGetMinerHeartbeatResponse = { + typeUrl: "/dht.v1.QueryGetMinerHeartbeatResponse", + encode(message, writer = _m0.Writer.create()) { + if (message.timestamp !== 0) { + writer.uint32(8).int32(message.timestamp); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetMinerHeartbeatResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.timestamp = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseQueryGetMinerHeartbeatResponse(); + if ((0, helpers_1.isSet)(object.timestamp)) + obj.timestamp = Number(object.timestamp); + return obj; + }, + toJSON(message) { + const obj = {}; + message.timestamp !== undefined && (obj.timestamp = Math.round(message.timestamp)); + return obj; + }, + fromPartial(object) { + const message = createBaseQueryGetMinerHeartbeatResponse(); + message.timestamp = object.timestamp ?? 0; + return message; + } +}; +class QueryClientImpl { + constructor(rpc) { + this.rpc = rpc; + this.Params = this.Params.bind(this); + this.GetModel = this.GetModel.bind(this); + this.GetModelBlocks = this.GetModelBlocks.bind(this); + this.GetNode = this.GetNode.bind(this); + this.GetMiner = this.GetMiner.bind(this); + this.GetOrchestrator = this.GetOrchestrator.bind(this); + this.GetAllOrchestrator = this.GetAllOrchestrator.bind(this); + this.GetOrchestratorsByParams = this.GetOrchestratorsByParams.bind(this); + this.GetOrchestratorHeartbeat = this.GetOrchestratorHeartbeat.bind(this); + this.GetMinerHeartbeat = this.GetMinerHeartbeat.bind(this); + } + Params(request = {}) { + const data = exports.QueryParamsRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "Params", data); + return promise.then(data => exports.QueryParamsResponse.decode(new _m0.Reader(data))); + } + GetModel(request) { + const data = exports.QueryGetModelRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetModel", data); + return promise.then(data => exports.QueryGetModelResponse.decode(new _m0.Reader(data))); + } + GetModelBlocks(request) { + const data = exports.QueryGetModelBlocksRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetModelBlocks", data); + return promise.then(data => exports.QueryGetModelBlocksResponse.decode(new _m0.Reader(data))); + } + GetNode(request) { + const data = exports.QueryGetNodeRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetNode", data); + return promise.then(data => exports.QueryGetNodeResponse.decode(new _m0.Reader(data))); + } + GetMiner(request) { + const data = exports.QueryGetMinerRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetMiner", data); + return promise.then(data => exports.QueryGetMinerResponse.decode(new _m0.Reader(data))); + } + GetOrchestrator(request) { + const data = exports.QueryGetOrchestratorRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetOrchestrator", data); + return promise.then(data => exports.QueryGetOrchestratorResponse.decode(new _m0.Reader(data))); + } + GetAllOrchestrator(request = { + pagination: pagination_1.PageRequest.fromPartial({}) + }) { + const data = exports.QueryGetAllOrchestratorRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetAllOrchestrator", data); + return promise.then(data => exports.QueryGetAllOrchestratorResponse.decode(new _m0.Reader(data))); + } + GetOrchestratorsByParams(request) { + const data = exports.QueryGetOrchestratorsByParamsRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetOrchestratorsByParams", data); + return promise.then(data => exports.QueryGetOrchestratorsByParamsResponse.decode(new _m0.Reader(data))); + } + GetOrchestratorHeartbeat(request) { + const data = exports.QueryGetOrchestratorHeartbeatRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetOrchestratorHeartbeat", data); + return promise.then(data => exports.QueryGetOrchestratorHeartbeatResponse.decode(new _m0.Reader(data))); + } + GetMinerHeartbeat(request) { + const data = exports.QueryGetMinerHeartbeatRequest.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Query", "GetMinerHeartbeat", data); + return promise.then(data => exports.QueryGetMinerHeartbeatResponse.decode(new _m0.Reader(data))); + } +} +exports.QueryClientImpl = QueryClientImpl; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZGh0L3YxL3F1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLDJFQUF1RjtBQUN2RixpREFBaUs7QUFDaksscUNBQWtDO0FBQ2xDLG1DQUFnQztBQUNoQywrQ0FBMkM7QUFDM0MsaUNBQThCO0FBQzlCLG1DQUFnQztBQUNoQyx3REFBMEM7QUFFMUMsMkNBQWlHO0FBQ3BGLFFBQUEsZUFBZSxHQUFHLFFBQVEsQ0FBQztBQXVFeEMsU0FBUyw0QkFBNEI7SUFDbkMsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDO0FBQ1ksUUFBQSxrQkFBa0IsR0FBRztJQUNoQyxPQUFPLEVBQUUsNEJBQTRCO0lBQ3JDLE1BQU0sQ0FBQyxDQUFxQixFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ3BFLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLEdBQUcsR0FBRyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyw0QkFBNEIsRUFBRSxDQUFDO1FBQy9DLE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUN4QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsUUFB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 \ No newline at end of file diff --git a/dist/codec/dht/v1/reputation.d.ts b/dist/codec/dht/v1/reputation.d.ts new file mode 100644 index 0000000..ded9594 --- /dev/null +++ b/dist/codec/dht/v1/reputation.d.ts @@ -0,0 +1,80 @@ +/// +import { Long } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +export interface Reputation { + name: string; + score: Long; +} +export declare const Reputation: { + typeUrl: string; + encode(message: Reputation, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): Reputation; + fromJSON(object: any): Reputation; + toJSON(message: Reputation): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + } & Record, never>>(object: I): Reputation; +}; diff --git a/dist/codec/dht/v1/reputation.js b/dist/codec/dht/v1/reputation.js new file mode 100644 index 0000000..21aa1fe --- /dev/null +++ b/dist/codec/dht/v1/reputation.js @@ -0,0 +1,91 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Reputation = exports.protobufPackage = void 0; +/* eslint-disable */ +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); +exports.protobufPackage = "dht.v1"; +function createBaseReputation() { + return { + name: "", + score: helpers_1.Long.ZERO + }; +} +exports.Reputation = { + typeUrl: "/dht.v1.Reputation", + encode(message, writer = _m0.Writer.create()) { + if (message.name !== "") { + writer.uint32(10).string(message.name); + } + if (!message.score.isZero()) { + writer.uint32(16).int64(message.score); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseReputation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.score = reader.int64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseReputation(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if ((0, helpers_1.isSet)(object.score)) + obj.score = helpers_1.Long.fromValue(object.score); + return obj; + }, + toJSON(message) { + const obj = {}; + message.name !== undefined && (obj.name = message.name); + message.score !== undefined && (obj.score = (message.score || helpers_1.Long.ZERO).toString()); + return obj; + }, + fromPartial(object) { + const message = createBaseReputation(); + message.name = object.name ?? ""; + if (object.score !== undefined && object.score !== null) { + message.score = helpers_1.Long.fromValue(object.score); + } + return message; + } +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwdXRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9kaHQvdjEvcmVwdXRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQiwyQ0FBZ0U7QUFDaEUsd0RBQTBDO0FBRTdCLFFBQUEsZUFBZSxHQUFHLFFBQVEsQ0FBQztBQUt4QyxTQUFTLG9CQUFvQjtJQUMzQixPQUFPO1FBQ0wsSUFBSSxFQUFFLEVBQUU7UUFDUixLQUFLLEVBQUUsY0FBSSxDQUFDLElBQUk7S0FDakIsQ0FBQztBQUNKLENBQUM7QUFDWSxRQUFBLFVBQVUsR0FBRztJQUN4QixPQUFPLEVBQUUsb0JBQW9CO0lBQzdCLE1BQU0sQ0FBQyxPQUFtQixFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ2xFLElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUN4QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDNUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0sR0FBRyxLQUFLLFlBQVksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0UsSUFBSSxHQUFHLEdBQUcsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUM7UUFDbEUsTUFBTSxPQUFPLEdBQUcsb0JBQW9CLEVBQUUsQ0FBQztRQUN2QyxPQUFPLE1BQU0sQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUM7WUFDeEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzVCLFFBQVEsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNsQixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQy9CLE1BQU07Z0JBQ1IsS0FBSyxDQUFDO29CQUNKLE9BQU8sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssRUFBVSxDQUFDO29CQUN2QyxNQUFNO2dCQUNSO29CQUNFLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUN6QixNQUFNO1lBQ1YsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ0QsUUFBUSxDQUFDLE1BQVc7UUFDbEIsTUFBTSxHQUFHLEdBQUcsb0JBQW9CLEVBQUUsQ0FBQztRQUNuQyxJQUFJLElBQUEsZUFBSyxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFBRSxHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkQsSUFBSSxJQUFBLGVBQUssRUFBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQUUsR0FBRyxDQUFDLEtBQUssR0FBRyxjQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsRSxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFDRCxNQUFNLENBQUMsT0FBbUI7UUFDeEIsTUFBTSxHQUFHLEdBQVEsRUFBRSxDQUFDO1FBQ3BCLE9BQU8sQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEQsT0FBTyxDQUFDLEtBQUssS0FBSyxTQUFTLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxjQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNyRixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFDRCxXQUFXLENBQThDLE1BQVM7UUFDaEUsTUFBTSxPQUFPLEdBQUcsb0JBQW9CLEVBQUUsQ0FBQztRQUN2QyxPQUFPLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxTQUFTLElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN4RCxPQUFPLENBQUMsS0FBSyxHQUFHLGNBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0YsQ0FBQyJ9 \ No newline at end of file diff --git a/dist/codec/dht/v1/tx.d.ts b/dist/codec/dht/v1/tx.d.ts new file mode 100644 index 0000000..9ec71d9 --- /dev/null +++ b/dist/codec/dht/v1/tx.d.ts @@ -0,0 +1,1649 @@ +/// +import { Params } from "./params"; +import { TokenPrice } from "./model"; +import { Availability, InferenceType } from "./orchestrator"; +import { Coin } from "../../cosmos/base/v1beta1/coin"; +import { Reputation } from "./reputation"; +import { Long, Rpc } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; +export declare const protobufPackage = "dht.v1"; +/** MsgUpdateParams is the Msg/UpdateParams request type. */ +export interface MsgUpdateParams { + /** + * authority is the address that controls the module (defaults to x/gov unless + * overwritten). + */ + authority: string; + /** NOTE: All parameters must be supplied. */ + params: Params; +} +/** + * MsgUpdateParamsResponse defines the response structure for executing a + * MsgUpdateParams message. + */ +export interface MsgUpdateParamsResponse { +} +export interface MsgRegisterModel { + creator: string; + modelName: string; + blockCids: string[]; + allowList: string[]; + tokenPrice?: TokenPrice; +} +export interface MsgRegisterModelResponse { +} +export interface MsgRegisterNode { + creator: string; + nodeId: string; + publicName: string; + version: string; + networkAddress: string; + walletAddress: string; + vram: Long; + networkRps: number; + usingRelay: boolean; + nextPings: Uint8Array[]; +} +export interface MsgRegisterNodeResponse { +} +export interface MsgDeleteNode { + creator: string; + nodeId: string; +} +export interface MsgDeleteNodeResponse { +} +export interface MsgRegisterMiner { + creator: string; + nodeId: string; + startBlock: Long; + endBlock: Long; + blockIds: number[]; + torchDtype: string; + quantType: string; + cacheTokensLeft: Long; + inferenceRps: number; + modelName: string; +} +export interface MsgRegisterMinerResponse { +} +export interface MsgDeleteMiner { + creator: string; + nodeId: string; +} +export interface MsgDeleteMinerResponse { +} +export interface MsgRegisterOrchestrator { + creator: string; + nodeId: string; + status: Availability; + blockCount: Long[]; + minerIds: string[]; + inferenceType: InferenceType; + modelName: string; +} +export interface MsgRegisterOrchestratorResponse { +} +export interface MsgDeleteOrchestrator { + creator: string; + nodeId: string; +} +export interface MsgDeleteOrchestratorResponse { +} +export interface MsgOrchestratorHeartbeat { + creator: string; + nodeId: string; +} +export interface MsgOrchestratorHeartbeatResponse { +} +export interface MsgMinerHeartbeat { + creator: string; + nodeId: string; +} +export interface MsgMinerHeartbeatResponse { +} +/** AddMinerDeposit defines a request for depositing tokens to the miner. */ +export interface MsgAddMinerDeposit { + depositor: string; + nodeId: string; + amount: Coin; +} +/** MsgAddMinerDepositResponse defines the response for rpc AddMinerDeposit */ +export interface MsgAddMinerDepositResponse { +} +/** WithdrawMiner defines a request for withdrawing tokens from the miner. */ +export interface MsgWithdrawMiner { + depositor: string; + nodeId: string; + amount: Coin; + receiver: string; +} +/** MsgWithdrawMinerResponse defines the response for rpc WithdrawMiner */ +export interface MsgWithdrawMinerResponse { +} +/** AddOrchestratorDeposit defines a request for depositing tokens to the orchestrator. */ +export interface MsgAddOrchestratorDeposit { + depositor: string; + nodeId: string; + amount: Coin; +} +/** MsgAddOrchestratorDepositResponse defines the response for rpc AddOrchestratorDeposit */ +export interface MsgAddOrchestratorDepositResponse { +} +/** WithdrawOrchestrator defines a request for withdrawing tokens from the orchestrator. */ +export interface MsgWithdrawOrchestrator { + depositor: string; + nodeId: string; + amount: Coin; + receiver: string; +} +/** MsgWithdrawOrchestratorResponse defines the response for rpc WithdrawOrchestrator */ +export interface MsgWithdrawOrchestratorResponse { +} +/** MsgUpdateMinerLabel defines a method for updating the miner label. */ +export interface MsgUpdateNodeLabel { + creator: string; + nodeId: string; + /** NOTE: All labels need to be provided */ + labels: string[]; +} +/** MsgUpdateMinerLabelResponse defines the MsgUpdateMinerLabel response type. */ +export interface MsgUpdateNodeLabelResponse { +} +/** MsgUpdateModel defines a request for updating allow_list from model. */ +export interface MsgUpdateModel { + account: string; + modelName: string; + /** NOTE: All allow list need to be provided */ + allowList: string[]; + /** NOTE: All token prices need to be provided */ + tokenPrice: TokenPrice; +} +/** MsgUpdateModelResponse defines the MsgUpdateModel response type */ +export interface MsgUpdateModelResponse { +} +/** MsgUpdateModelCreatorAllowList defines a request for updating model_creators. */ +export interface MsgUpdateModelCreatorAllowList { + account: string; + modelCreators: string[]; +} +/** MsgModelCreatorAllowListResponse defines the MsgUpdateModelCreatorAllowList response type */ +export interface MsgModelCreatorAllowListResponse { +} +/** MsgUpdateMinerReputation defines a request for updating miner reputation. */ +export interface MsgUpdateMinerReputation { + creator: string; + nodeId: string; + /** NOTE: All reputations need to be provided */ + reputations: Reputation[]; +} +/** MsgUpdateMinerReputationResponse defines the MsgUpdateMinerReputation response type. */ +export interface MsgUpdateMinerReputationResponse { +} +/** MsgUpdateOrchestratorReputation defines a request for updating orchestrator reputation. */ +export interface MsgUpdateOrchestratorReputation { + creator: string; + nodeId: string; + /** NOTE: All reputations need to be provided */ + reputations: Reputation[]; +} +/** MsgUpdateOrchestratorReputationResponse defines the MsgUpdateOrchestratorReputation response type. */ +export interface MsgUpdateOrchestratorReputationResponse { +} +export declare const MsgUpdateParams: { + typeUrl: string; + encode(message: MsgUpdateParams, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateParams; + fromJSON(object: any): MsgUpdateParams; + toJSON(message: MsgUpdateParams): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + minerValidTime?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + adminAccount?: string | undefined; + orchestratorMinDeposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + minerMinDeposit?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + orchestratorUnbondingPeriod?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + minerUnbondingPeriod?: ({ + seconds?: string | number | Long.Long | undefined; + nanos?: number | undefined; + } & { + seconds?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + nanos?: number | undefined; + } & Record, never>) | undefined; + labelAdminAccount?: string | undefined; + reputationAdminAccount?: string | undefined; + priceTokenDenoms?: (string[] & string[] & Record, never>) | undefined; + modelDefaultTokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): MsgUpdateParams; +}; +export declare const MsgUpdateParamsResponse: { + typeUrl: string; + encode(_: MsgUpdateParamsResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateParamsResponse; + fromJSON(_: any): MsgUpdateParamsResponse; + toJSON(_: MsgUpdateParamsResponse): JsonSafe; + fromPartial, never>>(_: I): MsgUpdateParamsResponse; +}; +export declare const MsgRegisterModel: { + typeUrl: string; + encode(message: MsgRegisterModel, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterModel; + fromJSON(object: any): MsgRegisterModel; + toJSON(message: MsgRegisterModel): JsonSafe; + fromPartial, never>) | undefined; + allowList?: (string[] & string[] & Record, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): MsgRegisterModel; +}; +export declare const MsgRegisterModelResponse: { + typeUrl: string; + encode(_: MsgRegisterModelResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterModelResponse; + fromJSON(_: any): MsgRegisterModelResponse; + toJSON(_: MsgRegisterModelResponse): JsonSafe; + fromPartial, never>>(_: I): MsgRegisterModelResponse; +}; +export declare const MsgRegisterNode: { + typeUrl: string; + encode(message: MsgRegisterNode, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterNode; + fromJSON(object: any): MsgRegisterNode; + toJSON(message: MsgRegisterNode): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + networkRps?: number | undefined; + usingRelay?: boolean | undefined; + nextPings?: (Uint8Array[] & Uint8Array[] & Record, never>) | undefined; + } & Record, never>>(object: I): MsgRegisterNode; +}; +export declare const MsgRegisterNodeResponse: { + typeUrl: string; + encode(_: MsgRegisterNodeResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterNodeResponse; + fromJSON(_: any): MsgRegisterNodeResponse; + toJSON(_: MsgRegisterNodeResponse): JsonSafe; + fromPartial, never>>(_: I): MsgRegisterNodeResponse; +}; +export declare const MsgDeleteNode: { + typeUrl: string; + encode(message: MsgDeleteNode, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgDeleteNode; + fromJSON(object: any): MsgDeleteNode; + toJSON(message: MsgDeleteNode): JsonSafe; + fromPartial, never>>(object: I): MsgDeleteNode; +}; +export declare const MsgDeleteNodeResponse: { + typeUrl: string; + encode(_: MsgDeleteNodeResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgDeleteNodeResponse; + fromJSON(_: any): MsgDeleteNodeResponse; + toJSON(_: MsgDeleteNodeResponse): JsonSafe; + fromPartial, never>>(_: I): MsgDeleteNodeResponse; +}; +export declare const MsgRegisterMiner: { + typeUrl: string; + encode(message: MsgRegisterMiner, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterMiner; + fromJSON(object: any): MsgRegisterMiner; + toJSON(message: MsgRegisterMiner): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + endBlock?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + blockIds?: (number[] & number[] & Record, never>) | undefined; + torchDtype?: string | undefined; + quantType?: string | undefined; + cacheTokensLeft?: string | number | (Long.Long & { + high: number; + low: number; + unsigned: boolean; + add: (addend: string | number | Long.Long) => Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + inferenceRps?: number | undefined; + modelName?: string | undefined; + } & Record, never>>(object: I): MsgRegisterMiner; +}; +export declare const MsgRegisterMinerResponse: { + typeUrl: string; + encode(_: MsgRegisterMinerResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterMinerResponse; + fromJSON(_: any): MsgRegisterMinerResponse; + toJSON(_: MsgRegisterMinerResponse): JsonSafe; + fromPartial, never>>(_: I): MsgRegisterMinerResponse; +}; +export declare const MsgDeleteMiner: { + typeUrl: string; + encode(message: MsgDeleteMiner, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgDeleteMiner; + fromJSON(object: any): MsgDeleteMiner; + toJSON(message: MsgDeleteMiner): JsonSafe; + fromPartial, never>>(object: I): MsgDeleteMiner; +}; +export declare const MsgDeleteMinerResponse: { + typeUrl: string; + encode(_: MsgDeleteMinerResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgDeleteMinerResponse; + fromJSON(_: any): MsgDeleteMinerResponse; + toJSON(_: MsgDeleteMinerResponse): JsonSafe; + fromPartial, never>>(_: I): MsgDeleteMinerResponse; +}; +export declare const MsgRegisterOrchestrator: { + typeUrl: string; + encode(message: MsgRegisterOrchestrator, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterOrchestrator; + fromJSON(object: any): MsgRegisterOrchestrator; + toJSON(message: MsgRegisterOrchestrator): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>))[] & Record, never>) | undefined; + minerIds?: (string[] & string[] & Record, never>) | undefined; + inferenceType?: InferenceType | undefined; + modelName?: string | undefined; + } & Record, never>>(object: I): MsgRegisterOrchestrator; +}; +export declare const MsgRegisterOrchestratorResponse: { + typeUrl: string; + encode(_: MsgRegisterOrchestratorResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgRegisterOrchestratorResponse; + fromJSON(_: any): MsgRegisterOrchestratorResponse; + toJSON(_: MsgRegisterOrchestratorResponse): JsonSafe; + fromPartial, never>>(_: I): MsgRegisterOrchestratorResponse; +}; +export declare const MsgDeleteOrchestrator: { + typeUrl: string; + encode(message: MsgDeleteOrchestrator, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgDeleteOrchestrator; + fromJSON(object: any): MsgDeleteOrchestrator; + toJSON(message: MsgDeleteOrchestrator): JsonSafe; + fromPartial, never>>(object: I): MsgDeleteOrchestrator; +}; +export declare const MsgDeleteOrchestratorResponse: { + typeUrl: string; + encode(_: MsgDeleteOrchestratorResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgDeleteOrchestratorResponse; + fromJSON(_: any): MsgDeleteOrchestratorResponse; + toJSON(_: MsgDeleteOrchestratorResponse): JsonSafe; + fromPartial, never>>(_: I): MsgDeleteOrchestratorResponse; +}; +export declare const MsgOrchestratorHeartbeat: { + typeUrl: string; + encode(message: MsgOrchestratorHeartbeat, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgOrchestratorHeartbeat; + fromJSON(object: any): MsgOrchestratorHeartbeat; + toJSON(message: MsgOrchestratorHeartbeat): JsonSafe; + fromPartial, never>>(object: I): MsgOrchestratorHeartbeat; +}; +export declare const MsgOrchestratorHeartbeatResponse: { + typeUrl: string; + encode(_: MsgOrchestratorHeartbeatResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgOrchestratorHeartbeatResponse; + fromJSON(_: any): MsgOrchestratorHeartbeatResponse; + toJSON(_: MsgOrchestratorHeartbeatResponse): JsonSafe; + fromPartial, never>>(_: I): MsgOrchestratorHeartbeatResponse; +}; +export declare const MsgMinerHeartbeat: { + typeUrl: string; + encode(message: MsgMinerHeartbeat, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgMinerHeartbeat; + fromJSON(object: any): MsgMinerHeartbeat; + toJSON(message: MsgMinerHeartbeat): JsonSafe; + fromPartial, never>>(object: I): MsgMinerHeartbeat; +}; +export declare const MsgMinerHeartbeatResponse: { + typeUrl: string; + encode(_: MsgMinerHeartbeatResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgMinerHeartbeatResponse; + fromJSON(_: any): MsgMinerHeartbeatResponse; + toJSON(_: MsgMinerHeartbeatResponse): JsonSafe; + fromPartial, never>>(_: I): MsgMinerHeartbeatResponse; +}; +export declare const MsgAddMinerDeposit: { + typeUrl: string; + encode(message: MsgAddMinerDeposit, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgAddMinerDeposit; + fromJSON(object: any): MsgAddMinerDeposit; + toJSON(message: MsgAddMinerDeposit): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>>(object: I): MsgAddMinerDeposit; +}; +export declare const MsgAddMinerDepositResponse: { + typeUrl: string; + encode(_: MsgAddMinerDepositResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgAddMinerDepositResponse; + fromJSON(_: any): MsgAddMinerDepositResponse; + toJSON(_: MsgAddMinerDepositResponse): JsonSafe; + fromPartial, never>>(_: I): MsgAddMinerDepositResponse; +}; +export declare const MsgWithdrawMiner: { + typeUrl: string; + encode(message: MsgWithdrawMiner, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgWithdrawMiner; + fromJSON(object: any): MsgWithdrawMiner; + toJSON(message: MsgWithdrawMiner): JsonSafe; + fromPartial, never>) | undefined; + receiver?: string | undefined; + } & Record, never>>(object: I): MsgWithdrawMiner; +}; +export declare const MsgWithdrawMinerResponse: { + typeUrl: string; + encode(_: MsgWithdrawMinerResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgWithdrawMinerResponse; + fromJSON(_: any): MsgWithdrawMinerResponse; + toJSON(_: MsgWithdrawMinerResponse): JsonSafe; + fromPartial, never>>(_: I): MsgWithdrawMinerResponse; +}; +export declare const MsgAddOrchestratorDeposit: { + typeUrl: string; + encode(message: MsgAddOrchestratorDeposit, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgAddOrchestratorDeposit; + fromJSON(object: any): MsgAddOrchestratorDeposit; + toJSON(message: MsgAddOrchestratorDeposit): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>>(object: I): MsgAddOrchestratorDeposit; +}; +export declare const MsgAddOrchestratorDepositResponse: { + typeUrl: string; + encode(_: MsgAddOrchestratorDepositResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgAddOrchestratorDepositResponse; + fromJSON(_: any): MsgAddOrchestratorDepositResponse; + toJSON(_: MsgAddOrchestratorDepositResponse): JsonSafe; + fromPartial, never>>(_: I): MsgAddOrchestratorDepositResponse; +}; +export declare const MsgWithdrawOrchestrator: { + typeUrl: string; + encode(message: MsgWithdrawOrchestrator, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgWithdrawOrchestrator; + fromJSON(object: any): MsgWithdrawOrchestrator; + toJSON(message: MsgWithdrawOrchestrator): JsonSafe; + fromPartial, never>) | undefined; + receiver?: string | undefined; + } & Record, never>>(object: I): MsgWithdrawOrchestrator; +}; +export declare const MsgWithdrawOrchestratorResponse: { + typeUrl: string; + encode(_: MsgWithdrawOrchestratorResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgWithdrawOrchestratorResponse; + fromJSON(_: any): MsgWithdrawOrchestratorResponse; + toJSON(_: MsgWithdrawOrchestratorResponse): JsonSafe; + fromPartial, never>>(_: I): MsgWithdrawOrchestratorResponse; +}; +export declare const MsgUpdateNodeLabel: { + typeUrl: string; + encode(message: MsgUpdateNodeLabel, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateNodeLabel; + fromJSON(object: any): MsgUpdateNodeLabel; + toJSON(message: MsgUpdateNodeLabel): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>>(object: I): MsgUpdateNodeLabel; +}; +export declare const MsgUpdateNodeLabelResponse: { + typeUrl: string; + encode(_: MsgUpdateNodeLabelResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateNodeLabelResponse; + fromJSON(_: any): MsgUpdateNodeLabelResponse; + toJSON(_: MsgUpdateNodeLabelResponse): JsonSafe; + fromPartial, never>>(_: I): MsgUpdateNodeLabelResponse; +}; +export declare const MsgUpdateModel: { + typeUrl: string; + encode(message: MsgUpdateModel, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateModel; + fromJSON(object: any): MsgUpdateModel; + toJSON(message: MsgUpdateModel): JsonSafe; + fromPartial, never>) | undefined; + tokenPrice?: ({ + inputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + outputPrice?: { + denom?: string | undefined; + amount?: string | undefined; + } | undefined; + } & { + inputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + outputPrice?: ({ + denom?: string | undefined; + amount?: string | undefined; + } & { + denom?: string | undefined; + amount?: string | undefined; + } & Record, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): MsgUpdateModel; +}; +export declare const MsgUpdateModelResponse: { + typeUrl: string; + encode(_: MsgUpdateModelResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateModelResponse; + fromJSON(_: any): MsgUpdateModelResponse; + toJSON(_: MsgUpdateModelResponse): JsonSafe; + fromPartial, never>>(_: I): MsgUpdateModelResponse; +}; +export declare const MsgUpdateModelCreatorAllowList: { + typeUrl: string; + encode(message: MsgUpdateModelCreatorAllowList, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateModelCreatorAllowList; + fromJSON(object: any): MsgUpdateModelCreatorAllowList; + toJSON(message: MsgUpdateModelCreatorAllowList): JsonSafe; + fromPartial, never>) | undefined; + } & Record, never>>(object: I): MsgUpdateModelCreatorAllowList; +}; +export declare const MsgModelCreatorAllowListResponse: { + typeUrl: string; + encode(_: MsgModelCreatorAllowListResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgModelCreatorAllowListResponse; + fromJSON(_: any): MsgModelCreatorAllowListResponse; + toJSON(_: MsgModelCreatorAllowListResponse): JsonSafe; + fromPartial, never>>(_: I): MsgModelCreatorAllowListResponse; +}; +export declare const MsgUpdateMinerReputation: { + typeUrl: string; + encode(message: MsgUpdateMinerReputation, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateMinerReputation; + fromJSON(object: any): MsgUpdateMinerReputation; + toJSON(message: MsgUpdateMinerReputation): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): MsgUpdateMinerReputation; +}; +export declare const MsgUpdateMinerReputationResponse: { + typeUrl: string; + encode(_: MsgUpdateMinerReputationResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateMinerReputationResponse; + fromJSON(_: any): MsgUpdateMinerReputationResponse; + toJSON(_: MsgUpdateMinerReputationResponse): JsonSafe; + fromPartial, never>>(_: I): MsgUpdateMinerReputationResponse; +}; +export declare const MsgUpdateOrchestratorReputation: { + typeUrl: string; + encode(message: MsgUpdateOrchestratorReputation, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateOrchestratorReputation; + fromJSON(object: any): MsgUpdateOrchestratorReputation; + toJSON(message: MsgUpdateOrchestratorReputation): JsonSafe; + fromPartial Long.Long; + and: (other: string | number | Long.Long) => Long.Long; + compare: (other: string | number | Long.Long) => number; + comp: (other: string | number | Long.Long) => number; + divide: (divisor: string | number | Long.Long) => Long.Long; + div: (divisor: string | number | Long.Long) => Long.Long; + equals: (other: string | number | Long.Long) => boolean; + eq: (other: string | number | Long.Long) => boolean; + getHighBits: () => number; + getHighBitsUnsigned: () => number; + getLowBits: () => number; + getLowBitsUnsigned: () => number; + getNumBitsAbs: () => number; + greaterThan: (other: string | number | Long.Long) => boolean; + gt: (other: string | number | Long.Long) => boolean; + greaterThanOrEqual: (other: string | number | Long.Long) => boolean; + gte: (other: string | number | Long.Long) => boolean; + isEven: () => boolean; + isNegative: () => boolean; + isOdd: () => boolean; + isPositive: () => boolean; + isZero: () => boolean; + lessThan: (other: string | number | Long.Long) => boolean; + lt: (other: string | number | Long.Long) => boolean; + lessThanOrEqual: (other: string | number | Long.Long) => boolean; + lte: (other: string | number | Long.Long) => boolean; + modulo: (other: string | number | Long.Long) => Long.Long; + mod: (other: string | number | Long.Long) => Long.Long; + multiply: (multiplier: string | number | Long.Long) => Long.Long; + mul: (multiplier: string | number | Long.Long) => Long.Long; + negate: () => Long.Long; + neg: () => Long.Long; + not: () => Long.Long; + notEquals: (other: string | number | Long.Long) => boolean; + neq: (other: string | number | Long.Long) => boolean; + or: (other: string | number | Long.Long) => Long.Long; + shiftLeft: (numBits: number | Long.Long) => Long.Long; + shl: (numBits: number | Long.Long) => Long.Long; + shiftRight: (numBits: number | Long.Long) => Long.Long; + shr: (numBits: number | Long.Long) => Long.Long; + shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long; + shru: (numBits: number | Long.Long) => Long.Long; + subtract: (subtrahend: string | number | Long.Long) => Long.Long; + sub: (subtrahend: string | number | Long.Long) => Long.Long; + toInt: () => number; + toNumber: () => number; + toBytes: (le?: boolean | undefined) => number[]; + toBytesLE: () => number[]; + toBytesBE: () => number[]; + toSigned: () => Long.Long; + toString: (radix?: number | undefined) => string; + toUnsigned: () => Long.Long; + xor: (other: string | number | Long.Long) => Long.Long; + } & Record, never>) | undefined; + } & Record, never>)[] & Record, never>) | undefined; + } & Record, never>>(object: I): MsgUpdateOrchestratorReputation; +}; +export declare const MsgUpdateOrchestratorReputationResponse: { + typeUrl: string; + encode(_: MsgUpdateOrchestratorReputationResponse, writer?: _m0.Writer): _m0.Writer; + decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateOrchestratorReputationResponse; + fromJSON(_: any): MsgUpdateOrchestratorReputationResponse; + toJSON(_: MsgUpdateOrchestratorReputationResponse): JsonSafe; + fromPartial, never>>(_: I): MsgUpdateOrchestratorReputationResponse; +}; +/** Msg defines the Msg service. */ +export interface Msg { + /** + * UpdateParams defines a (governance) operation for updating the module + * parameters. The authority defaults to the x/gov module account. + */ + UpdateParams(request: MsgUpdateParams): Promise; + UpdateModelCreatorAllowList(request: MsgUpdateModelCreatorAllowList): Promise; + RegisterModel(request: MsgRegisterModel): Promise; + UpdateModel(request: MsgUpdateModel): Promise; + /** rpc DeleteModel(MsgDeleteModel) returns (MsgDeleteModelResponse); */ + RegisterNode(request: MsgRegisterNode): Promise; + DeleteNode(request: MsgDeleteNode): Promise; + RegisterMiner(request: MsgRegisterMiner): Promise; + DeleteMiner(request: MsgDeleteMiner): Promise; + RegisterOrchestrator(request: MsgRegisterOrchestrator): Promise; + DeleteOrchestrator(request: MsgDeleteOrchestrator): Promise; + OrchestratorHeartbeat(request: MsgOrchestratorHeartbeat): Promise; + MinerHeartbeat(request: MsgMinerHeartbeat): Promise; + /** AddMinerDeposit defines a method for depositing tokens to the miner. */ + AddMinerDeposit(request: MsgAddMinerDeposit): Promise; + /** WithdrawMiner defines a method for withdrawing tokens from the miner. */ + WithdrawMiner(request: MsgWithdrawMiner): Promise; + /** AddOrchestratorDeposit defines a method for depositing tokens to the orchestrator. */ + AddOrchestratorDeposit(request: MsgAddOrchestratorDeposit): Promise; + /** WithdrawOrchestrator defines a method for withdrawing tokens from the orchestrator. */ + WithdrawOrchestrator(request: MsgWithdrawOrchestrator): Promise; + /** + * TODO optimize and streamline interfaces + * UpdateNodeLabel defines a method for updating the node label. + */ + UpdateNodeLabel(request: MsgUpdateNodeLabel): Promise; + /** UpdateMinerReputation defines a method for updating the miner reputation. */ + UpdateMinerReputation(request: MsgUpdateMinerReputation): Promise; + /** UpdateOrchestratorReputation defines a method for updating the orchestrator reputation. */ + UpdateOrchestratorReputation(request: MsgUpdateOrchestratorReputation): Promise; +} +export declare class MsgClientImpl implements Msg { + private readonly rpc; + constructor(rpc: Rpc); + UpdateParams(request: MsgUpdateParams): Promise; + UpdateModelCreatorAllowList(request: MsgUpdateModelCreatorAllowList): Promise; + RegisterModel(request: MsgRegisterModel): Promise; + UpdateModel(request: MsgUpdateModel): Promise; + RegisterNode(request: MsgRegisterNode): Promise; + DeleteNode(request: MsgDeleteNode): Promise; + RegisterMiner(request: MsgRegisterMiner): Promise; + DeleteMiner(request: MsgDeleteMiner): Promise; + RegisterOrchestrator(request: MsgRegisterOrchestrator): Promise; + DeleteOrchestrator(request: MsgDeleteOrchestrator): Promise; + OrchestratorHeartbeat(request: MsgOrchestratorHeartbeat): Promise; + MinerHeartbeat(request: MsgMinerHeartbeat): Promise; + AddMinerDeposit(request: MsgAddMinerDeposit): Promise; + WithdrawMiner(request: MsgWithdrawMiner): Promise; + AddOrchestratorDeposit(request: MsgAddOrchestratorDeposit): Promise; + WithdrawOrchestrator(request: MsgWithdrawOrchestrator): Promise; + UpdateNodeLabel(request: MsgUpdateNodeLabel): Promise; + UpdateMinerReputation(request: MsgUpdateMinerReputation): Promise; + UpdateOrchestratorReputation(request: MsgUpdateOrchestratorReputation): Promise; +} diff --git a/dist/codec/dht/v1/tx.js b/dist/codec/dht/v1/tx.js new file mode 100644 index 0000000..8a0c595 --- /dev/null +++ b/dist/codec/dht/v1/tx.js @@ -0,0 +1,2405 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MsgClientImpl = exports.MsgUpdateOrchestratorReputationResponse = exports.MsgUpdateOrchestratorReputation = exports.MsgUpdateMinerReputationResponse = exports.MsgUpdateMinerReputation = exports.MsgModelCreatorAllowListResponse = exports.MsgUpdateModelCreatorAllowList = exports.MsgUpdateModelResponse = exports.MsgUpdateModel = exports.MsgUpdateNodeLabelResponse = exports.MsgUpdateNodeLabel = exports.MsgWithdrawOrchestratorResponse = exports.MsgWithdrawOrchestrator = exports.MsgAddOrchestratorDepositResponse = exports.MsgAddOrchestratorDeposit = exports.MsgWithdrawMinerResponse = exports.MsgWithdrawMiner = exports.MsgAddMinerDepositResponse = exports.MsgAddMinerDeposit = exports.MsgMinerHeartbeatResponse = exports.MsgMinerHeartbeat = exports.MsgOrchestratorHeartbeatResponse = exports.MsgOrchestratorHeartbeat = exports.MsgDeleteOrchestratorResponse = exports.MsgDeleteOrchestrator = exports.MsgRegisterOrchestratorResponse = exports.MsgRegisterOrchestrator = exports.MsgDeleteMinerResponse = exports.MsgDeleteMiner = exports.MsgRegisterMinerResponse = exports.MsgRegisterMiner = exports.MsgDeleteNodeResponse = exports.MsgDeleteNode = exports.MsgRegisterNodeResponse = exports.MsgRegisterNode = exports.MsgRegisterModelResponse = exports.MsgRegisterModel = exports.MsgUpdateParamsResponse = exports.MsgUpdateParams = exports.protobufPackage = void 0; +/* eslint-disable */ +const params_1 = require("./params"); +const model_1 = require("./model"); +const orchestrator_1 = require("./orchestrator"); +const coin_1 = require("../../cosmos/base/v1beta1/coin"); +const reputation_1 = require("./reputation"); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); +exports.protobufPackage = "dht.v1"; +function createBaseMsgUpdateParams() { + return { + authority: "", + params: params_1.Params.fromPartial({}) + }; +} +exports.MsgUpdateParams = { + typeUrl: "/dht.v1.MsgUpdateParams", + encode(message, writer = _m0.Writer.create()) { + if (message.authority !== "") { + writer.uint32(10).string(message.authority); + } + if (message.params !== undefined) { + params_1.Params.encode(message.params, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateParams(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.authority = reader.string(); + break; + case 2: + message.params = params_1.Params.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgUpdateParams(); + if ((0, helpers_1.isSet)(object.authority)) + obj.authority = String(object.authority); + if ((0, helpers_1.isSet)(object.params)) + obj.params = params_1.Params.fromJSON(object.params); + return obj; + }, + toJSON(message) { + const obj = {}; + message.authority !== undefined && (obj.authority = message.authority); + message.params !== undefined && (obj.params = message.params ? params_1.Params.toJSON(message.params) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgUpdateParams(); + message.authority = object.authority ?? ""; + if (object.params !== undefined && object.params !== null) { + message.params = params_1.Params.fromPartial(object.params); + } + return message; + } +}; +function createBaseMsgUpdateParamsResponse() { + return {}; +} +exports.MsgUpdateParamsResponse = { + typeUrl: "/dht.v1.MsgUpdateParamsResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateParamsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgUpdateParamsResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgUpdateParamsResponse(); + return message; + } +}; +function createBaseMsgRegisterModel() { + return { + creator: "", + modelName: "", + blockCids: [], + allowList: [], + tokenPrice: undefined + }; +} +exports.MsgRegisterModel = { + typeUrl: "/dht.v1.MsgRegisterModel", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.modelName !== "") { + writer.uint32(18).string(message.modelName); + } + for (const v of message.blockCids) { + writer.uint32(26).string(v); + } + for (const v of message.allowList) { + writer.uint32(34).string(v); + } + if (message.tokenPrice !== undefined) { + model_1.TokenPrice.encode(message.tokenPrice, writer.uint32(42).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterModel(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.modelName = reader.string(); + break; + case 3: + message.blockCids.push(reader.string()); + break; + case 4: + message.allowList.push(reader.string()); + break; + case 5: + message.tokenPrice = model_1.TokenPrice.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgRegisterModel(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if (Array.isArray(object?.blockCids)) + obj.blockCids = object.blockCids.map((e) => String(e)); + if (Array.isArray(object?.allowList)) + obj.allowList = object.allowList.map((e) => String(e)); + if ((0, helpers_1.isSet)(object.tokenPrice)) + obj.tokenPrice = model_1.TokenPrice.fromJSON(object.tokenPrice); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.modelName !== undefined && (obj.modelName = message.modelName); + if (message.blockCids) { + obj.blockCids = message.blockCids.map(e => e); + } + else { + obj.blockCids = []; + } + if (message.allowList) { + obj.allowList = message.allowList.map(e => e); + } + else { + obj.allowList = []; + } + message.tokenPrice !== undefined && (obj.tokenPrice = message.tokenPrice ? model_1.TokenPrice.toJSON(message.tokenPrice) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgRegisterModel(); + message.creator = object.creator ?? ""; + message.modelName = object.modelName ?? ""; + message.blockCids = object.blockCids?.map(e => e) || []; + message.allowList = object.allowList?.map(e => e) || []; + if (object.tokenPrice !== undefined && object.tokenPrice !== null) { + message.tokenPrice = model_1.TokenPrice.fromPartial(object.tokenPrice); + } + return message; + } +}; +function createBaseMsgRegisterModelResponse() { + return {}; +} +exports.MsgRegisterModelResponse = { + typeUrl: "/dht.v1.MsgRegisterModelResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterModelResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgRegisterModelResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgRegisterModelResponse(); + return message; + } +}; +function createBaseMsgRegisterNode() { + return { + creator: "", + nodeId: "", + publicName: "", + version: "", + networkAddress: "", + walletAddress: "", + vram: helpers_1.Long.UZERO, + networkRps: 0, + usingRelay: false, + nextPings: [] + }; +} +exports.MsgRegisterNode = { + typeUrl: "/dht.v1.MsgRegisterNode", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + if (message.publicName !== "") { + writer.uint32(26).string(message.publicName); + } + if (message.version !== "") { + writer.uint32(34).string(message.version); + } + if (message.networkAddress !== "") { + writer.uint32(42).string(message.networkAddress); + } + if (message.walletAddress !== "") { + writer.uint32(50).string(message.walletAddress); + } + if (!message.vram.isZero()) { + writer.uint32(56).uint64(message.vram); + } + if (message.networkRps !== 0) { + writer.uint32(65).double(message.networkRps); + } + if (message.usingRelay === true) { + writer.uint32(72).bool(message.usingRelay); + } + for (const v of message.nextPings) { + writer.uint32(82).bytes(v); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterNode(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.publicName = reader.string(); + break; + case 4: + message.version = reader.string(); + break; + case 5: + message.networkAddress = reader.string(); + break; + case 6: + message.walletAddress = reader.string(); + break; + case 7: + message.vram = reader.uint64(); + break; + case 8: + message.networkRps = reader.double(); + break; + case 9: + message.usingRelay = reader.bool(); + break; + case 10: + message.nextPings.push(reader.bytes()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgRegisterNode(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.publicName)) + obj.publicName = String(object.publicName); + if ((0, helpers_1.isSet)(object.version)) + obj.version = String(object.version); + if ((0, helpers_1.isSet)(object.networkAddress)) + obj.networkAddress = String(object.networkAddress); + if ((0, helpers_1.isSet)(object.walletAddress)) + obj.walletAddress = String(object.walletAddress); + if ((0, helpers_1.isSet)(object.vram)) + obj.vram = helpers_1.Long.fromValue(object.vram); + if ((0, helpers_1.isSet)(object.networkRps)) + obj.networkRps = Number(object.networkRps); + if ((0, helpers_1.isSet)(object.usingRelay)) + obj.usingRelay = Boolean(object.usingRelay); + if (Array.isArray(object?.nextPings)) + obj.nextPings = object.nextPings.map((e) => (0, helpers_1.bytesFromBase64)(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.publicName !== undefined && (obj.publicName = message.publicName); + message.version !== undefined && (obj.version = message.version); + message.networkAddress !== undefined && (obj.networkAddress = message.networkAddress); + message.walletAddress !== undefined && (obj.walletAddress = message.walletAddress); + message.vram !== undefined && (obj.vram = (message.vram || helpers_1.Long.UZERO).toString()); + message.networkRps !== undefined && (obj.networkRps = message.networkRps); + message.usingRelay !== undefined && (obj.usingRelay = message.usingRelay); + if (message.nextPings) { + obj.nextPings = message.nextPings.map(e => (0, helpers_1.base64FromBytes)(e !== undefined ? e : new Uint8Array())); + } + else { + obj.nextPings = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseMsgRegisterNode(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + message.publicName = object.publicName ?? ""; + message.version = object.version ?? ""; + message.networkAddress = object.networkAddress ?? ""; + message.walletAddress = object.walletAddress ?? ""; + if (object.vram !== undefined && object.vram !== null) { + message.vram = helpers_1.Long.fromValue(object.vram); + } + message.networkRps = object.networkRps ?? 0; + message.usingRelay = object.usingRelay ?? false; + message.nextPings = object.nextPings?.map(e => e) || []; + return message; + } +}; +function createBaseMsgRegisterNodeResponse() { + return {}; +} +exports.MsgRegisterNodeResponse = { + typeUrl: "/dht.v1.MsgRegisterNodeResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterNodeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgRegisterNodeResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgRegisterNodeResponse(); + return message; + } +}; +function createBaseMsgDeleteNode() { + return { + creator: "", + nodeId: "" + }; +} +exports.MsgDeleteNode = { + typeUrl: "/dht.v1.MsgDeleteNode", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteNode(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgDeleteNode(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgDeleteNode(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseMsgDeleteNodeResponse() { + return {}; +} +exports.MsgDeleteNodeResponse = { + typeUrl: "/dht.v1.MsgDeleteNodeResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteNodeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgDeleteNodeResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgDeleteNodeResponse(); + return message; + } +}; +function createBaseMsgRegisterMiner() { + return { + creator: "", + nodeId: "", + startBlock: helpers_1.Long.UZERO, + endBlock: helpers_1.Long.UZERO, + blockIds: [], + torchDtype: "", + quantType: "", + cacheTokensLeft: helpers_1.Long.UZERO, + inferenceRps: 0, + modelName: "" + }; +} +exports.MsgRegisterMiner = { + typeUrl: "/dht.v1.MsgRegisterMiner", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + if (!message.startBlock.isZero()) { + writer.uint32(24).uint64(message.startBlock); + } + if (!message.endBlock.isZero()) { + writer.uint32(32).uint64(message.endBlock); + } + writer.uint32(42).fork(); + for (const v of message.blockIds) { + writer.uint32(v); + } + writer.ldelim(); + if (message.torchDtype !== "") { + writer.uint32(50).string(message.torchDtype); + } + if (message.quantType !== "") { + writer.uint32(58).string(message.quantType); + } + if (!message.cacheTokensLeft.isZero()) { + writer.uint32(64).uint64(message.cacheTokensLeft); + } + if (message.inferenceRps !== 0) { + writer.uint32(73).double(message.inferenceRps); + } + if (message.modelName !== "") { + writer.uint32(82).string(message.modelName); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterMiner(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.startBlock = reader.uint64(); + break; + case 4: + message.endBlock = reader.uint64(); + break; + case 5: + if ((tag & 7) === 2) { + const end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) { + message.blockIds.push(reader.uint32()); + } + } + else { + message.blockIds.push(reader.uint32()); + } + break; + case 6: + message.torchDtype = reader.string(); + break; + case 7: + message.quantType = reader.string(); + break; + case 8: + message.cacheTokensLeft = reader.uint64(); + break; + case 9: + message.inferenceRps = reader.double(); + break; + case 10: + message.modelName = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgRegisterMiner(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.startBlock)) + obj.startBlock = helpers_1.Long.fromValue(object.startBlock); + if ((0, helpers_1.isSet)(object.endBlock)) + obj.endBlock = helpers_1.Long.fromValue(object.endBlock); + if (Array.isArray(object?.blockIds)) + obj.blockIds = object.blockIds.map((e) => Number(e)); + if ((0, helpers_1.isSet)(object.torchDtype)) + obj.torchDtype = String(object.torchDtype); + if ((0, helpers_1.isSet)(object.quantType)) + obj.quantType = String(object.quantType); + if ((0, helpers_1.isSet)(object.cacheTokensLeft)) + obj.cacheTokensLeft = helpers_1.Long.fromValue(object.cacheTokensLeft); + if ((0, helpers_1.isSet)(object.inferenceRps)) + obj.inferenceRps = Number(object.inferenceRps); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.startBlock !== undefined && (obj.startBlock = (message.startBlock || helpers_1.Long.UZERO).toString()); + message.endBlock !== undefined && (obj.endBlock = (message.endBlock || helpers_1.Long.UZERO).toString()); + if (message.blockIds) { + obj.blockIds = message.blockIds.map(e => Math.round(e)); + } + else { + obj.blockIds = []; + } + message.torchDtype !== undefined && (obj.torchDtype = message.torchDtype); + message.quantType !== undefined && (obj.quantType = message.quantType); + message.cacheTokensLeft !== undefined && (obj.cacheTokensLeft = (message.cacheTokensLeft || helpers_1.Long.UZERO).toString()); + message.inferenceRps !== undefined && (obj.inferenceRps = message.inferenceRps); + message.modelName !== undefined && (obj.modelName = message.modelName); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgRegisterMiner(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + if (object.startBlock !== undefined && object.startBlock !== null) { + message.startBlock = helpers_1.Long.fromValue(object.startBlock); + } + if (object.endBlock !== undefined && object.endBlock !== null) { + message.endBlock = helpers_1.Long.fromValue(object.endBlock); + } + message.blockIds = object.blockIds?.map(e => e) || []; + message.torchDtype = object.torchDtype ?? ""; + message.quantType = object.quantType ?? ""; + if (object.cacheTokensLeft !== undefined && object.cacheTokensLeft !== null) { + message.cacheTokensLeft = helpers_1.Long.fromValue(object.cacheTokensLeft); + } + message.inferenceRps = object.inferenceRps ?? 0; + message.modelName = object.modelName ?? ""; + return message; + } +}; +function createBaseMsgRegisterMinerResponse() { + return {}; +} +exports.MsgRegisterMinerResponse = { + typeUrl: "/dht.v1.MsgRegisterMinerResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterMinerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgRegisterMinerResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgRegisterMinerResponse(); + return message; + } +}; +function createBaseMsgDeleteMiner() { + return { + creator: "", + nodeId: "" + }; +} +exports.MsgDeleteMiner = { + typeUrl: "/dht.v1.MsgDeleteMiner", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteMiner(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgDeleteMiner(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgDeleteMiner(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseMsgDeleteMinerResponse() { + return {}; +} +exports.MsgDeleteMinerResponse = { + typeUrl: "/dht.v1.MsgDeleteMinerResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteMinerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgDeleteMinerResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgDeleteMinerResponse(); + return message; + } +}; +function createBaseMsgRegisterOrchestrator() { + return { + creator: "", + nodeId: "", + status: 0, + blockCount: [], + minerIds: [], + inferenceType: 0, + modelName: "" + }; +} +exports.MsgRegisterOrchestrator = { + typeUrl: "/dht.v1.MsgRegisterOrchestrator", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + if (message.status !== 0) { + writer.uint32(24).int32(message.status); + } + writer.uint32(34).fork(); + for (const v of message.blockCount) { + writer.uint64(v); + } + writer.ldelim(); + for (const v of message.minerIds) { + writer.uint32(42).string(v); + } + if (message.inferenceType !== 0) { + writer.uint32(48).int32(message.inferenceType); + } + if (message.modelName !== "") { + writer.uint32(58).string(message.modelName); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterOrchestrator(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.status = reader.int32(); + break; + case 4: + if ((tag & 7) === 2) { + const end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) { + message.blockCount.push(reader.uint64()); + } + } + else { + message.blockCount.push(reader.uint64()); + } + break; + case 5: + message.minerIds.push(reader.string()); + break; + case 6: + message.inferenceType = reader.int32(); + break; + case 7: + message.modelName = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgRegisterOrchestrator(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.status)) + obj.status = (0, orchestrator_1.availabilityFromJSON)(object.status); + if (Array.isArray(object?.blockCount)) + obj.blockCount = object.blockCount.map((e) => helpers_1.Long.fromValue(e)); + if (Array.isArray(object?.minerIds)) + obj.minerIds = object.minerIds.map((e) => String(e)); + if ((0, helpers_1.isSet)(object.inferenceType)) + obj.inferenceType = (0, orchestrator_1.inferenceTypeFromJSON)(object.inferenceType); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.status !== undefined && (obj.status = (0, orchestrator_1.availabilityToJSON)(message.status)); + if (message.blockCount) { + obj.blockCount = message.blockCount.map(e => (e || helpers_1.Long.UZERO).toString()); + } + else { + obj.blockCount = []; + } + if (message.minerIds) { + obj.minerIds = message.minerIds.map(e => e); + } + else { + obj.minerIds = []; + } + message.inferenceType !== undefined && (obj.inferenceType = (0, orchestrator_1.inferenceTypeToJSON)(message.inferenceType)); + message.modelName !== undefined && (obj.modelName = message.modelName); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgRegisterOrchestrator(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + message.status = object.status ?? 0; + message.blockCount = object.blockCount?.map(e => helpers_1.Long.fromValue(e)) || []; + message.minerIds = object.minerIds?.map(e => e) || []; + message.inferenceType = object.inferenceType ?? 0; + message.modelName = object.modelName ?? ""; + return message; + } +}; +function createBaseMsgRegisterOrchestratorResponse() { + return {}; +} +exports.MsgRegisterOrchestratorResponse = { + typeUrl: "/dht.v1.MsgRegisterOrchestratorResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterOrchestratorResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgRegisterOrchestratorResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgRegisterOrchestratorResponse(); + return message; + } +}; +function createBaseMsgDeleteOrchestrator() { + return { + creator: "", + nodeId: "" + }; +} +exports.MsgDeleteOrchestrator = { + typeUrl: "/dht.v1.MsgDeleteOrchestrator", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteOrchestrator(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgDeleteOrchestrator(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgDeleteOrchestrator(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseMsgDeleteOrchestratorResponse() { + return {}; +} +exports.MsgDeleteOrchestratorResponse = { + typeUrl: "/dht.v1.MsgDeleteOrchestratorResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteOrchestratorResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgDeleteOrchestratorResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgDeleteOrchestratorResponse(); + return message; + } +}; +function createBaseMsgOrchestratorHeartbeat() { + return { + creator: "", + nodeId: "" + }; +} +exports.MsgOrchestratorHeartbeat = { + typeUrl: "/dht.v1.MsgOrchestratorHeartbeat", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOrchestratorHeartbeat(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgOrchestratorHeartbeat(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgOrchestratorHeartbeat(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseMsgOrchestratorHeartbeatResponse() { + return {}; +} +exports.MsgOrchestratorHeartbeatResponse = { + typeUrl: "/dht.v1.MsgOrchestratorHeartbeatResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOrchestratorHeartbeatResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgOrchestratorHeartbeatResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgOrchestratorHeartbeatResponse(); + return message; + } +}; +function createBaseMsgMinerHeartbeat() { + return { + creator: "", + nodeId: "" + }; +} +exports.MsgMinerHeartbeat = { + typeUrl: "/dht.v1.MsgMinerHeartbeat", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgMinerHeartbeat(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgMinerHeartbeat(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgMinerHeartbeat(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + return message; + } +}; +function createBaseMsgMinerHeartbeatResponse() { + return {}; +} +exports.MsgMinerHeartbeatResponse = { + typeUrl: "/dht.v1.MsgMinerHeartbeatResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgMinerHeartbeatResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgMinerHeartbeatResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgMinerHeartbeatResponse(); + return message; + } +}; +function createBaseMsgAddMinerDeposit() { + return { + depositor: "", + nodeId: "", + amount: coin_1.Coin.fromPartial({}) + }; +} +exports.MsgAddMinerDeposit = { + typeUrl: "/dht.v1.MsgAddMinerDeposit", + encode(message, writer = _m0.Writer.create()) { + if (message.depositor !== "") { + writer.uint32(10).string(message.depositor); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + if (message.amount !== undefined) { + coin_1.Coin.encode(message.amount, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAddMinerDeposit(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositor = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.amount = coin_1.Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgAddMinerDeposit(); + if ((0, helpers_1.isSet)(object.depositor)) + obj.depositor = String(object.depositor); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = coin_1.Coin.fromJSON(object.amount); + return obj; + }, + toJSON(message) { + const obj = {}; + message.depositor !== undefined && (obj.depositor = message.depositor); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.amount !== undefined && (obj.amount = message.amount ? coin_1.Coin.toJSON(message.amount) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgAddMinerDeposit(); + message.depositor = object.depositor ?? ""; + message.nodeId = object.nodeId ?? ""; + if (object.amount !== undefined && object.amount !== null) { + message.amount = coin_1.Coin.fromPartial(object.amount); + } + return message; + } +}; +function createBaseMsgAddMinerDepositResponse() { + return {}; +} +exports.MsgAddMinerDepositResponse = { + typeUrl: "/dht.v1.MsgAddMinerDepositResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAddMinerDepositResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgAddMinerDepositResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgAddMinerDepositResponse(); + return message; + } +}; +function createBaseMsgWithdrawMiner() { + return { + depositor: "", + nodeId: "", + amount: coin_1.Coin.fromPartial({}), + receiver: "" + }; +} +exports.MsgWithdrawMiner = { + typeUrl: "/dht.v1.MsgWithdrawMiner", + encode(message, writer = _m0.Writer.create()) { + if (message.depositor !== "") { + writer.uint32(10).string(message.depositor); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + if (message.amount !== undefined) { + coin_1.Coin.encode(message.amount, writer.uint32(26).fork()).ldelim(); + } + if (message.receiver !== "") { + writer.uint32(34).string(message.receiver); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgWithdrawMiner(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositor = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.amount = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 4: + message.receiver = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgWithdrawMiner(); + if ((0, helpers_1.isSet)(object.depositor)) + obj.depositor = String(object.depositor); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = coin_1.Coin.fromJSON(object.amount); + if ((0, helpers_1.isSet)(object.receiver)) + obj.receiver = String(object.receiver); + return obj; + }, + toJSON(message) { + const obj = {}; + message.depositor !== undefined && (obj.depositor = message.depositor); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.amount !== undefined && (obj.amount = message.amount ? coin_1.Coin.toJSON(message.amount) : undefined); + message.receiver !== undefined && (obj.receiver = message.receiver); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgWithdrawMiner(); + message.depositor = object.depositor ?? ""; + message.nodeId = object.nodeId ?? ""; + if (object.amount !== undefined && object.amount !== null) { + message.amount = coin_1.Coin.fromPartial(object.amount); + } + message.receiver = object.receiver ?? ""; + return message; + } +}; +function createBaseMsgWithdrawMinerResponse() { + return {}; +} +exports.MsgWithdrawMinerResponse = { + typeUrl: "/dht.v1.MsgWithdrawMinerResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgWithdrawMinerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgWithdrawMinerResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgWithdrawMinerResponse(); + return message; + } +}; +function createBaseMsgAddOrchestratorDeposit() { + return { + depositor: "", + nodeId: "", + amount: coin_1.Coin.fromPartial({}) + }; +} +exports.MsgAddOrchestratorDeposit = { + typeUrl: "/dht.v1.MsgAddOrchestratorDeposit", + encode(message, writer = _m0.Writer.create()) { + if (message.depositor !== "") { + writer.uint32(10).string(message.depositor); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + if (message.amount !== undefined) { + coin_1.Coin.encode(message.amount, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAddOrchestratorDeposit(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositor = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.amount = coin_1.Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgAddOrchestratorDeposit(); + if ((0, helpers_1.isSet)(object.depositor)) + obj.depositor = String(object.depositor); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = coin_1.Coin.fromJSON(object.amount); + return obj; + }, + toJSON(message) { + const obj = {}; + message.depositor !== undefined && (obj.depositor = message.depositor); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.amount !== undefined && (obj.amount = message.amount ? coin_1.Coin.toJSON(message.amount) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgAddOrchestratorDeposit(); + message.depositor = object.depositor ?? ""; + message.nodeId = object.nodeId ?? ""; + if (object.amount !== undefined && object.amount !== null) { + message.amount = coin_1.Coin.fromPartial(object.amount); + } + return message; + } +}; +function createBaseMsgAddOrchestratorDepositResponse() { + return {}; +} +exports.MsgAddOrchestratorDepositResponse = { + typeUrl: "/dht.v1.MsgAddOrchestratorDepositResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAddOrchestratorDepositResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgAddOrchestratorDepositResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgAddOrchestratorDepositResponse(); + return message; + } +}; +function createBaseMsgWithdrawOrchestrator() { + return { + depositor: "", + nodeId: "", + amount: coin_1.Coin.fromPartial({}), + receiver: "" + }; +} +exports.MsgWithdrawOrchestrator = { + typeUrl: "/dht.v1.MsgWithdrawOrchestrator", + encode(message, writer = _m0.Writer.create()) { + if (message.depositor !== "") { + writer.uint32(10).string(message.depositor); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + if (message.amount !== undefined) { + coin_1.Coin.encode(message.amount, writer.uint32(26).fork()).ldelim(); + } + if (message.receiver !== "") { + writer.uint32(34).string(message.receiver); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgWithdrawOrchestrator(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositor = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.amount = coin_1.Coin.decode(reader, reader.uint32()); + break; + case 4: + message.receiver = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgWithdrawOrchestrator(); + if ((0, helpers_1.isSet)(object.depositor)) + obj.depositor = String(object.depositor); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if ((0, helpers_1.isSet)(object.amount)) + obj.amount = coin_1.Coin.fromJSON(object.amount); + if ((0, helpers_1.isSet)(object.receiver)) + obj.receiver = String(object.receiver); + return obj; + }, + toJSON(message) { + const obj = {}; + message.depositor !== undefined && (obj.depositor = message.depositor); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + message.amount !== undefined && (obj.amount = message.amount ? coin_1.Coin.toJSON(message.amount) : undefined); + message.receiver !== undefined && (obj.receiver = message.receiver); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgWithdrawOrchestrator(); + message.depositor = object.depositor ?? ""; + message.nodeId = object.nodeId ?? ""; + if (object.amount !== undefined && object.amount !== null) { + message.amount = coin_1.Coin.fromPartial(object.amount); + } + message.receiver = object.receiver ?? ""; + return message; + } +}; +function createBaseMsgWithdrawOrchestratorResponse() { + return {}; +} +exports.MsgWithdrawOrchestratorResponse = { + typeUrl: "/dht.v1.MsgWithdrawOrchestratorResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgWithdrawOrchestratorResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgWithdrawOrchestratorResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgWithdrawOrchestratorResponse(); + return message; + } +}; +function createBaseMsgUpdateNodeLabel() { + return { + creator: "", + nodeId: "", + labels: [] + }; +} +exports.MsgUpdateNodeLabel = { + typeUrl: "/dht.v1.MsgUpdateNodeLabel", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + for (const v of message.labels) { + writer.uint32(26).string(v); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateNodeLabel(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.labels.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgUpdateNodeLabel(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if (Array.isArray(object?.labels)) + obj.labels = object.labels.map((e) => String(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + if (message.labels) { + obj.labels = message.labels.map(e => e); + } + else { + obj.labels = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseMsgUpdateNodeLabel(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + message.labels = object.labels?.map(e => e) || []; + return message; + } +}; +function createBaseMsgUpdateNodeLabelResponse() { + return {}; +} +exports.MsgUpdateNodeLabelResponse = { + typeUrl: "/dht.v1.MsgUpdateNodeLabelResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateNodeLabelResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgUpdateNodeLabelResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgUpdateNodeLabelResponse(); + return message; + } +}; +function createBaseMsgUpdateModel() { + return { + account: "", + modelName: "", + allowList: [], + tokenPrice: model_1.TokenPrice.fromPartial({}) + }; +} +exports.MsgUpdateModel = { + typeUrl: "/dht.v1.MsgUpdateModel", + encode(message, writer = _m0.Writer.create()) { + if (message.account !== "") { + writer.uint32(10).string(message.account); + } + if (message.modelName !== "") { + writer.uint32(18).string(message.modelName); + } + for (const v of message.allowList) { + writer.uint32(26).string(v); + } + if (message.tokenPrice !== undefined) { + model_1.TokenPrice.encode(message.tokenPrice, writer.uint32(34).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateModel(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.account = reader.string(); + break; + case 2: + message.modelName = reader.string(); + break; + case 3: + message.allowList.push(reader.string()); + break; + case 4: + message.tokenPrice = model_1.TokenPrice.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgUpdateModel(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if ((0, helpers_1.isSet)(object.modelName)) + obj.modelName = String(object.modelName); + if (Array.isArray(object?.allowList)) + obj.allowList = object.allowList.map((e) => String(e)); + if ((0, helpers_1.isSet)(object.tokenPrice)) + obj.tokenPrice = model_1.TokenPrice.fromJSON(object.tokenPrice); + return obj; + }, + toJSON(message) { + const obj = {}; + message.account !== undefined && (obj.account = message.account); + message.modelName !== undefined && (obj.modelName = message.modelName); + if (message.allowList) { + obj.allowList = message.allowList.map(e => e); + } + else { + obj.allowList = []; + } + message.tokenPrice !== undefined && (obj.tokenPrice = message.tokenPrice ? model_1.TokenPrice.toJSON(message.tokenPrice) : undefined); + return obj; + }, + fromPartial(object) { + const message = createBaseMsgUpdateModel(); + message.account = object.account ?? ""; + message.modelName = object.modelName ?? ""; + message.allowList = object.allowList?.map(e => e) || []; + if (object.tokenPrice !== undefined && object.tokenPrice !== null) { + message.tokenPrice = model_1.TokenPrice.fromPartial(object.tokenPrice); + } + return message; + } +}; +function createBaseMsgUpdateModelResponse() { + return {}; +} +exports.MsgUpdateModelResponse = { + typeUrl: "/dht.v1.MsgUpdateModelResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateModelResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgUpdateModelResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgUpdateModelResponse(); + return message; + } +}; +function createBaseMsgUpdateModelCreatorAllowList() { + return { + account: "", + modelCreators: [] + }; +} +exports.MsgUpdateModelCreatorAllowList = { + typeUrl: "/dht.v1.MsgUpdateModelCreatorAllowList", + encode(message, writer = _m0.Writer.create()) { + if (message.account !== "") { + writer.uint32(10).string(message.account); + } + for (const v of message.modelCreators) { + writer.uint32(18).string(v); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateModelCreatorAllowList(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.account = reader.string(); + break; + case 2: + message.modelCreators.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgUpdateModelCreatorAllowList(); + if ((0, helpers_1.isSet)(object.account)) + obj.account = String(object.account); + if (Array.isArray(object?.modelCreators)) + obj.modelCreators = object.modelCreators.map((e) => String(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.account !== undefined && (obj.account = message.account); + if (message.modelCreators) { + obj.modelCreators = message.modelCreators.map(e => e); + } + else { + obj.modelCreators = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseMsgUpdateModelCreatorAllowList(); + message.account = object.account ?? ""; + message.modelCreators = object.modelCreators?.map(e => e) || []; + return message; + } +}; +function createBaseMsgModelCreatorAllowListResponse() { + return {}; +} +exports.MsgModelCreatorAllowListResponse = { + typeUrl: "/dht.v1.MsgModelCreatorAllowListResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgModelCreatorAllowListResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgModelCreatorAllowListResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgModelCreatorAllowListResponse(); + return message; + } +}; +function createBaseMsgUpdateMinerReputation() { + return { + creator: "", + nodeId: "", + reputations: [] + }; +} +exports.MsgUpdateMinerReputation = { + typeUrl: "/dht.v1.MsgUpdateMinerReputation", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + for (const v of message.reputations) { + reputation_1.Reputation.encode(v, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateMinerReputation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.reputations.push(reputation_1.Reputation.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgUpdateMinerReputation(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if (Array.isArray(object?.reputations)) + obj.reputations = object.reputations.map((e) => reputation_1.Reputation.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + if (message.reputations) { + obj.reputations = message.reputations.map(e => e ? reputation_1.Reputation.toJSON(e) : undefined); + } + else { + obj.reputations = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseMsgUpdateMinerReputation(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + message.reputations = object.reputations?.map(e => reputation_1.Reputation.fromPartial(e)) || []; + return message; + } +}; +function createBaseMsgUpdateMinerReputationResponse() { + return {}; +} +exports.MsgUpdateMinerReputationResponse = { + typeUrl: "/dht.v1.MsgUpdateMinerReputationResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateMinerReputationResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgUpdateMinerReputationResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgUpdateMinerReputationResponse(); + return message; + } +}; +function createBaseMsgUpdateOrchestratorReputation() { + return { + creator: "", + nodeId: "", + reputations: [] + }; +} +exports.MsgUpdateOrchestratorReputation = { + typeUrl: "/dht.v1.MsgUpdateOrchestratorReputation", + encode(message, writer = _m0.Writer.create()) { + if (message.creator !== "") { + writer.uint32(10).string(message.creator); + } + if (message.nodeId !== "") { + writer.uint32(18).string(message.nodeId); + } + for (const v of message.reputations) { + reputation_1.Reputation.encode(v, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateOrchestratorReputation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.nodeId = reader.string(); + break; + case 3: + message.reputations.push(reputation_1.Reputation.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object) { + const obj = createBaseMsgUpdateOrchestratorReputation(); + if ((0, helpers_1.isSet)(object.creator)) + obj.creator = String(object.creator); + if ((0, helpers_1.isSet)(object.nodeId)) + obj.nodeId = String(object.nodeId); + if (Array.isArray(object?.reputations)) + obj.reputations = object.reputations.map((e) => reputation_1.Reputation.fromJSON(e)); + return obj; + }, + toJSON(message) { + const obj = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.nodeId !== undefined && (obj.nodeId = message.nodeId); + if (message.reputations) { + obj.reputations = message.reputations.map(e => e ? reputation_1.Reputation.toJSON(e) : undefined); + } + else { + obj.reputations = []; + } + return obj; + }, + fromPartial(object) { + const message = createBaseMsgUpdateOrchestratorReputation(); + message.creator = object.creator ?? ""; + message.nodeId = object.nodeId ?? ""; + message.reputations = object.reputations?.map(e => reputation_1.Reputation.fromPartial(e)) || []; + return message; + } +}; +function createBaseMsgUpdateOrchestratorReputationResponse() { + return {}; +} +exports.MsgUpdateOrchestratorReputationResponse = { + typeUrl: "/dht.v1.MsgUpdateOrchestratorReputationResponse", + encode(_, writer = _m0.Writer.create()) { + return writer; + }, + decode(input, length) { + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateOrchestratorReputationResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_) { + const obj = createBaseMsgUpdateOrchestratorReputationResponse(); + return obj; + }, + toJSON(_) { + const obj = {}; + return obj; + }, + fromPartial(_) { + const message = createBaseMsgUpdateOrchestratorReputationResponse(); + return message; + } +}; +class MsgClientImpl { + constructor(rpc) { + this.rpc = rpc; + this.UpdateParams = this.UpdateParams.bind(this); + this.UpdateModelCreatorAllowList = this.UpdateModelCreatorAllowList.bind(this); + this.RegisterModel = this.RegisterModel.bind(this); + this.UpdateModel = this.UpdateModel.bind(this); + this.RegisterNode = this.RegisterNode.bind(this); + this.DeleteNode = this.DeleteNode.bind(this); + this.RegisterMiner = this.RegisterMiner.bind(this); + this.DeleteMiner = this.DeleteMiner.bind(this); + this.RegisterOrchestrator = this.RegisterOrchestrator.bind(this); + this.DeleteOrchestrator = this.DeleteOrchestrator.bind(this); + this.OrchestratorHeartbeat = this.OrchestratorHeartbeat.bind(this); + this.MinerHeartbeat = this.MinerHeartbeat.bind(this); + this.AddMinerDeposit = this.AddMinerDeposit.bind(this); + this.WithdrawMiner = this.WithdrawMiner.bind(this); + this.AddOrchestratorDeposit = this.AddOrchestratorDeposit.bind(this); + this.WithdrawOrchestrator = this.WithdrawOrchestrator.bind(this); + this.UpdateNodeLabel = this.UpdateNodeLabel.bind(this); + this.UpdateMinerReputation = this.UpdateMinerReputation.bind(this); + this.UpdateOrchestratorReputation = this.UpdateOrchestratorReputation.bind(this); + } + UpdateParams(request) { + const data = exports.MsgUpdateParams.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "UpdateParams", data); + return promise.then(data => exports.MsgUpdateParamsResponse.decode(new _m0.Reader(data))); + } + UpdateModelCreatorAllowList(request) { + const data = exports.MsgUpdateModelCreatorAllowList.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "UpdateModelCreatorAllowList", data); + return promise.then(data => exports.MsgModelCreatorAllowListResponse.decode(new _m0.Reader(data))); + } + RegisterModel(request) { + const data = exports.MsgRegisterModel.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "RegisterModel", data); + return promise.then(data => exports.MsgRegisterModelResponse.decode(new _m0.Reader(data))); + } + UpdateModel(request) { + const data = exports.MsgUpdateModel.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "UpdateModel", data); + return promise.then(data => exports.MsgUpdateModelResponse.decode(new _m0.Reader(data))); + } + RegisterNode(request) { + const data = exports.MsgRegisterNode.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "RegisterNode", data); + return promise.then(data => exports.MsgRegisterNodeResponse.decode(new _m0.Reader(data))); + } + DeleteNode(request) { + const data = exports.MsgDeleteNode.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "DeleteNode", data); + return promise.then(data => exports.MsgDeleteNodeResponse.decode(new _m0.Reader(data))); + } + RegisterMiner(request) { + const data = exports.MsgRegisterMiner.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "RegisterMiner", data); + return promise.then(data => exports.MsgRegisterMinerResponse.decode(new _m0.Reader(data))); + } + DeleteMiner(request) { + const data = exports.MsgDeleteMiner.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "DeleteMiner", data); + return promise.then(data => exports.MsgDeleteMinerResponse.decode(new _m0.Reader(data))); + } + RegisterOrchestrator(request) { + const data = exports.MsgRegisterOrchestrator.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "RegisterOrchestrator", data); + return promise.then(data => exports.MsgRegisterOrchestratorResponse.decode(new _m0.Reader(data))); + } + DeleteOrchestrator(request) { + const data = exports.MsgDeleteOrchestrator.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "DeleteOrchestrator", data); + return promise.then(data => exports.MsgDeleteOrchestratorResponse.decode(new _m0.Reader(data))); + } + OrchestratorHeartbeat(request) { + const data = exports.MsgOrchestratorHeartbeat.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "OrchestratorHeartbeat", data); + return promise.then(data => exports.MsgOrchestratorHeartbeatResponse.decode(new _m0.Reader(data))); + } + MinerHeartbeat(request) { + const data = exports.MsgMinerHeartbeat.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "MinerHeartbeat", data); + return promise.then(data => exports.MsgMinerHeartbeatResponse.decode(new _m0.Reader(data))); + } + AddMinerDeposit(request) { + const data = exports.MsgAddMinerDeposit.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "AddMinerDeposit", data); + return promise.then(data => exports.MsgAddMinerDepositResponse.decode(new _m0.Reader(data))); + } + WithdrawMiner(request) { + const data = exports.MsgWithdrawMiner.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "WithdrawMiner", data); + return promise.then(data => exports.MsgWithdrawMinerResponse.decode(new _m0.Reader(data))); + } + AddOrchestratorDeposit(request) { + const data = exports.MsgAddOrchestratorDeposit.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "AddOrchestratorDeposit", data); + return promise.then(data => exports.MsgAddOrchestratorDepositResponse.decode(new _m0.Reader(data))); + } + WithdrawOrchestrator(request) { + const data = exports.MsgWithdrawOrchestrator.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "WithdrawOrchestrator", data); + return promise.then(data => exports.MsgWithdrawOrchestratorResponse.decode(new _m0.Reader(data))); + } + UpdateNodeLabel(request) { + const data = exports.MsgUpdateNodeLabel.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "UpdateNodeLabel", data); + return promise.then(data => exports.MsgUpdateNodeLabelResponse.decode(new _m0.Reader(data))); + } + UpdateMinerReputation(request) { + const data = exports.MsgUpdateMinerReputation.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "UpdateMinerReputation", data); + return promise.then(data => exports.MsgUpdateMinerReputationResponse.decode(new _m0.Reader(data))); + } + UpdateOrchestratorReputation(request) { + const data = exports.MsgUpdateOrchestratorReputation.encode(request).finish(); + const promise = this.rpc.request("dht.v1.Msg", "UpdateOrchestratorReputation", data); + return promise.then(data => exports.MsgUpdateOrchestratorReputationResponse.decode(new _m0.Reader(data))); + } +} +exports.MsgClientImpl = MsgClientImpl; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZGh0L3YxL3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLHFDQUFrQztBQUNsQyxtQ0FBcUM7QUFDckMsaURBQW1KO0FBQ25KLHlEQUFzRDtBQUN0RCw2Q0FBMEM7QUFDMUMsMkNBQXVHO0FBQ3ZHLHdEQUEwQztBQUU3QixRQUFBLGVBQWUsR0FBRyxRQUFRLENBQUM7QUFvS3hDLFNBQVMseUJBQXlCO0lBQ2hDLE9BQU87UUFDTCxTQUFTLEVBQUUsRUFBRTtRQUNiLE1BQU0sRUFBRSxlQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztLQUMvQixDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsZUFBZSxHQUFHO0lBQzdCLE9BQU8sRUFBRSx5QkFBeUI7SUFDbEMsTUFBTSxDQUFDLE9BQXdCLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDdkUsSUFBSSxPQUFPLENBQUMsU0FBUyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLGVBQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbkUsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxHQUFH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RyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDdkUsSUFBSSxPQUFPLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzNCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsVUFBVSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzNCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsY0FBYyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNuRCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsYUFBYSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ2pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUMzQixNQUFNLENBQUMsTUFBTSxDQUFD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 \ No newline at end of file diff --git a/dist/codec/gogoproto/gogo.d.ts b/dist/codec/gogoproto/gogo.d.ts index 885d30b..cb0ff5c 100644 --- a/dist/codec/gogoproto/gogo.d.ts +++ b/dist/codec/gogoproto/gogo.d.ts @@ -1 +1 @@ -export declare const protobufPackage = "gogoproto"; +export {}; diff --git a/dist/codec/gogoproto/gogo.js b/dist/codec/gogoproto/gogo.js index 6467279..36e9c64 100644 --- a/dist/codec/gogoproto/gogo.js +++ b/dist/codec/gogoproto/gogo.js @@ -1,6 +1,3 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.protobufPackage = void 0; -/* eslint-disable */ -exports.protobufPackage = "gogoproto"; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29nby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2RlYy9nb2dvcHJvdG8vZ29nby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvQkFBb0I7QUFDUCxRQUFBLGVBQWUsR0FBRyxXQUFXLENBQUMifQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29nby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2RlYy9nb2dvcHJvdG8vZ29nby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0= \ No newline at end of file diff --git a/dist/codec/google/api/annotations.d.ts b/dist/codec/google/api/annotations.d.ts index a64daf0..cb0ff5c 100644 --- a/dist/codec/google/api/annotations.d.ts +++ b/dist/codec/google/api/annotations.d.ts @@ -1 +1 @@ -export declare const protobufPackage = "google.api"; +export {}; diff --git a/dist/codec/google/api/annotations.js b/dist/codec/google/api/annotations.js index c991ab7..436a71f 100644 --- a/dist/codec/google/api/annotations.js +++ b/dist/codec/google/api/annotations.js @@ -1,6 +1,3 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.protobufPackage = void 0; -/* eslint-disable */ -exports.protobufPackage = "google.api"; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZ29vZ2xlL2FwaS9hbm5vdGF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvQkFBb0I7QUFDUCxRQUFBLGVBQWUsR0FBRyxZQUFZLENBQUMifQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZ29vZ2xlL2FwaS9hbm5vdGF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0= \ No newline at end of file diff --git a/dist/codec/google/api/http.d.ts b/dist/codec/google/api/http.d.ts index 18a1b0d..b62c0b9 100644 --- a/dist/codec/google/api/http.d.ts +++ b/dist/codec/google/api/http.d.ts @@ -1,5 +1,5 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; export declare const protobufPackage = "google.api"; /** * Defines the HTTP configuration for an API service. It contains a list of @@ -250,22 +250,22 @@ export interface HttpRule { */ selector: string; /** Used for listing and getting information about resources. */ - get: string | undefined; + get?: string; /** Used for updating a resource. */ - put: string | undefined; + put?: string; /** Used for creating a resource. */ - post: string | undefined; + post?: string; /** Used for deleting a resource. */ - delete: string | undefined; + delete?: string; /** Used for updating a resource. */ - patch: string | undefined; + patch?: string; /** * The custom pattern is used for specifying an HTTP method that is not * included in the `pattern` field, such as HEAD, or "*" to leave the * HTTP method unspecified for this rule. The wild-card rule is useful * for services that provide content to Web (HTML) clients. */ - custom?: CustomHttpPattern | undefined; + custom?: CustomHttpPattern; /** * The name of the request field whose value is mapped to the HTTP body, or * `*` for mapping all fields not captured by the path pattern to the HTTP @@ -294,10 +294,11 @@ export interface CustomHttpPattern { path: string; } export declare const Http: { + typeUrl: string; encode(message: Http, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Http; fromJSON(object: any): Http; - toJSON(message: Http): unknown; + toJSON(message: Http): JsonSafe; fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -401,7 +402,7 @@ export declare const Http: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -445,7 +446,7 @@ export declare const Http: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -489,7 +490,7 @@ export declare const Http: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -533,7 +534,7 @@ export declare const Http: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_4 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -577,7 +578,7 @@ export declare const Http: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -621,7 +622,7 @@ export declare const Http: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -665,7 +666,7 @@ export declare const Http: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_7 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -709,7 +710,7 @@ export declare const Http: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_8 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -750,7 +751,7 @@ export declare const Http: { custom?: ({ kind?: string | undefined; path?: string | undefined; - } & any & { [K_9 in Exclude]: never; }) | undefined; + } & any & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -781,7 +782,7 @@ export declare const Http: { body?: string | undefined; responseBody?: string | undefined; additionalBindings?: any[] | undefined; - } & any & { [K_10 in Exclude]: never; })[] & { [K_11 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_12 in Exclude]: never; })[] & { [K_13 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_14 in Exclude]: never; })[] & { [K_15 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_16 in Exclude]: never; })[] & { [K_17 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_18 in Exclude]: never; })[] & { [K_19 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_20 in Exclude]: never; })[] & { [K_21 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_22 in Exclude]: never; })[] & { [K_23 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_24 in Exclude]: never; })[] & { [K_25 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_26 in Exclude]: never; })[] & { [K_27 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_28 in Exclude]: never; })[] & { [K_29 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_30 in Exclude]: never; })[] & { [K_31 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; fullyDecodeReservedExpansion?: boolean | undefined; - } & { [K_32 in Exclude]: never; }>(object: I): Http; + } & Record, never>>(object: I): Http; }; export declare const HttpRule: { + typeUrl: string; encode(message: HttpRule, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): HttpRule; fromJSON(object: any): HttpRule; - toJSON(message: HttpRule): unknown; + toJSON(message: HttpRule): JsonSafe; fromPartial]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1025,7 +1027,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_1 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1069,7 +1071,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1113,7 +1115,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1157,7 +1159,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_4 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1201,7 +1203,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1245,7 +1247,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1289,7 +1291,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_7 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1333,7 +1335,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_8 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1377,7 +1379,7 @@ export declare const HttpRule: { } & { kind?: string | undefined; path?: string | undefined; - } & { [K_9 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1418,7 +1420,7 @@ export declare const HttpRule: { custom?: ({ kind?: string | undefined; path?: string | undefined; - } & any & { [K_10 in Exclude]: never; }) | undefined; + } & any & Record, never>) | undefined; body?: string | undefined; responseBody?: string | undefined; additionalBindings?: ({ @@ -1449,7 +1451,7 @@ export declare const HttpRule: { body?: string | undefined; responseBody?: string | undefined; additionalBindings?: any[] | undefined; - } & any & { [K_11 in Exclude]: never; })[] & { [K_12 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_13 in Exclude]: never; })[] & { [K_14 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_15 in Exclude]: never; })[] & { [K_16 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_17 in Exclude]: never; })[] & { [K_18 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_19 in Exclude]: never; })[] & { [K_20 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_21 in Exclude]: never; })[] & { [K_22 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_23 in Exclude]: never; })[] & { [K_24 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_25 in Exclude]: never; })[] & { [K_26 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_27 in Exclude]: never; })[] & { [K_28 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_29 in Exclude]: never; })[] & { [K_30 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_31 in Exclude]: never; })[] & { [K_32 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_33 in Exclude]: never; }>(object: I): HttpRule; + }[]>, never>) | undefined; + } & Record, never>>(object: I): HttpRule; }; export declare const CustomHttpPattern: { + typeUrl: string; encode(message: CustomHttpPattern, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CustomHttpPattern; fromJSON(object: any): CustomHttpPattern; - toJSON(message: CustomHttpPattern): unknown; + toJSON(message: CustomHttpPattern): JsonSafe; fromPartial]: never; }>(object: I): CustomHttpPattern; + } & Record, never>>(object: I): CustomHttpPattern; }; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; -}; -export {}; diff --git a/dist/codec/google/api/http.js b/dist/codec/google/api/http.js index 95308d0..40fde96 100644 --- a/dist/codec/google/api/http.js +++ b/dist/codec/google/api/http.js @@ -1,18 +1,42 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.CustomHttpPattern = exports.HttpRule = exports.Http = exports.protobufPackage = void 0; /* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const _m0 = __importStar(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); exports.protobufPackage = "google.api"; function createBaseHttp() { - return { rules: [], fullyDecodeReservedExpansion: false }; + return { + rules: [], + fullyDecodeReservedExpansion: false + }; } exports.Http = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.api.Http", + encode(message, writer = _m0.Writer.create()) { for (const v of message.rules) { exports.HttpRule.encode(v, writer.uint32(10).fork()).ldelim(); } @@ -22,7 +46,7 @@ exports.Http = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseHttp(); while (reader.pos < end) { @@ -42,34 +66,30 @@ exports.Http = { return message; }, fromJSON(object) { - return { - rules: Array.isArray(object?.rules) - ? object.rules.map((e) => exports.HttpRule.fromJSON(e)) - : [], - fullyDecodeReservedExpansion: isSet(object.fullyDecodeReservedExpansion) - ? Boolean(object.fullyDecodeReservedExpansion) - : false, - }; + const obj = createBaseHttp(); + if (Array.isArray(object?.rules)) + obj.rules = object.rules.map((e) => exports.HttpRule.fromJSON(e)); + if ((0, helpers_1.isSet)(object.fullyDecodeReservedExpansion)) + obj.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion); + return obj; }, toJSON(message) { const obj = {}; if (message.rules) { - obj.rules = message.rules.map((e) => e ? exports.HttpRule.toJSON(e) : undefined); + obj.rules = message.rules.map(e => e ? exports.HttpRule.toJSON(e) : undefined); } else { obj.rules = []; } - message.fullyDecodeReservedExpansion !== undefined && - (obj.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion); + message.fullyDecodeReservedExpansion !== undefined && (obj.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion); return obj; }, fromPartial(object) { const message = createBaseHttp(); - message.rules = object.rules?.map((e) => exports.HttpRule.fromPartial(e)) || []; - message.fullyDecodeReservedExpansion = - object.fullyDecodeReservedExpansion ?? false; + message.rules = object.rules?.map(e => exports.HttpRule.fromPartial(e)) || []; + message.fullyDecodeReservedExpansion = object.fullyDecodeReservedExpansion ?? false; return message; - }, + } }; function createBaseHttpRule() { return { @@ -82,11 +102,12 @@ function createBaseHttpRule() { custom: undefined, body: "", responseBody: "", - additionalBindings: [], + additionalBindings: [] }; } exports.HttpRule = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.api.HttpRule", + encode(message, writer = _m0.Writer.create()) { if (message.selector !== "") { writer.uint32(10).string(message.selector); } @@ -120,7 +141,7 @@ exports.HttpRule = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseHttpRule(); while (reader.pos < end) { @@ -164,24 +185,28 @@ exports.HttpRule = { return message; }, fromJSON(object) { - return { - selector: isSet(object.selector) ? String(object.selector) : "", - get: isSet(object.get) ? String(object.get) : undefined, - put: isSet(object.put) ? String(object.put) : undefined, - post: isSet(object.post) ? String(object.post) : undefined, - delete: isSet(object.delete) ? String(object.delete) : undefined, - patch: isSet(object.patch) ? String(object.patch) : undefined, - custom: isSet(object.custom) - ? exports.CustomHttpPattern.fromJSON(object.custom) - : undefined, - body: isSet(object.body) ? String(object.body) : "", - responseBody: isSet(object.responseBody) - ? String(object.responseBody) - : "", - additionalBindings: Array.isArray(object?.additionalBindings) - ? object.additionalBindings.map((e) => exports.HttpRule.fromJSON(e)) - : [], - }; + const obj = createBaseHttpRule(); + if ((0, helpers_1.isSet)(object.selector)) + obj.selector = String(object.selector); + if ((0, helpers_1.isSet)(object.get)) + obj.get = String(object.get); + if ((0, helpers_1.isSet)(object.put)) + obj.put = String(object.put); + if ((0, helpers_1.isSet)(object.post)) + obj.post = String(object.post); + if ((0, helpers_1.isSet)(object.delete)) + obj.delete = String(object.delete); + if ((0, helpers_1.isSet)(object.patch)) + obj.patch = String(object.patch); + if ((0, helpers_1.isSet)(object.custom)) + obj.custom = exports.CustomHttpPattern.fromJSON(object.custom); + if ((0, helpers_1.isSet)(object.body)) + obj.body = String(object.body); + if ((0, helpers_1.isSet)(object.responseBody)) + obj.responseBody = String(object.responseBody); + if (Array.isArray(object?.additionalBindings)) + obj.additionalBindings = object.additionalBindings.map((e) => exports.HttpRule.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; @@ -191,15 +216,11 @@ exports.HttpRule = { message.post !== undefined && (obj.post = message.post); message.delete !== undefined && (obj.delete = message.delete); message.patch !== undefined && (obj.patch = message.patch); - message.custom !== undefined && - (obj.custom = message.custom - ? exports.CustomHttpPattern.toJSON(message.custom) - : undefined); + message.custom !== undefined && (obj.custom = message.custom ? exports.CustomHttpPattern.toJSON(message.custom) : undefined); message.body !== undefined && (obj.body = message.body); - message.responseBody !== undefined && - (obj.responseBody = message.responseBody); + message.responseBody !== undefined && (obj.responseBody = message.responseBody); if (message.additionalBindings) { - obj.additionalBindings = message.additionalBindings.map((e) => e ? exports.HttpRule.toJSON(e) : undefined); + obj.additionalBindings = message.additionalBindings.map(e => e ? exports.HttpRule.toJSON(e) : undefined); } else { obj.additionalBindings = []; @@ -214,22 +235,24 @@ exports.HttpRule = { message.post = object.post ?? undefined; message.delete = object.delete ?? undefined; message.patch = object.patch ?? undefined; - message.custom = - object.custom !== undefined && object.custom !== null - ? exports.CustomHttpPattern.fromPartial(object.custom) - : undefined; + if (object.custom !== undefined && object.custom !== null) { + message.custom = exports.CustomHttpPattern.fromPartial(object.custom); + } message.body = object.body ?? ""; message.responseBody = object.responseBody ?? ""; - message.additionalBindings = - object.additionalBindings?.map((e) => exports.HttpRule.fromPartial(e)) || []; + message.additionalBindings = object.additionalBindings?.map(e => exports.HttpRule.fromPartial(e)) || []; return message; - }, + } }; function createBaseCustomHttpPattern() { - return { kind: "", path: "" }; + return { + kind: "", + path: "" + }; } exports.CustomHttpPattern = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.api.CustomHttpPattern", + encode(message, writer = _m0.Writer.create()) { if (message.kind !== "") { writer.uint32(10).string(message.kind); } @@ -239,7 +262,7 @@ exports.CustomHttpPattern = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseCustomHttpPattern(); while (reader.pos < end) { @@ -259,10 +282,12 @@ exports.CustomHttpPattern = { return message; }, fromJSON(object) { - return { - kind: isSet(object.kind) ? String(object.kind) : "", - path: isSet(object.path) ? String(object.path) : "", - }; + const obj = createBaseCustomHttpPattern(); + if ((0, helpers_1.isSet)(object.kind)) + obj.kind = String(object.kind); + if ((0, helpers_1.isSet)(object.path)) + obj.path = String(object.path); + return obj; }, toJSON(message) { const obj = {}; @@ -275,13 +300,6 @@ exports.CustomHttpPattern = { message.kind = object.kind ?? ""; message.path = object.path ?? ""; return message; - }, + } }; -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9nb29nbGUvYXBpL2h0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QixpRUFBcUM7QUFFeEIsUUFBQSxlQUFlLEdBQUcsWUFBWSxDQUFDO0FBeVM1QyxTQUFTLGNBQWM7SUFDckIsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsNEJBQTRCLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFDNUQsQ0FBQztBQUVZLFFBQUEsSUFBSSxHQUFHO0lBQ2xCLE1BQU0sQ0FBQyxPQUFhLEVBQUUsU0FBcUIsaUJBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQzVELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlCLGdCQUFRLENBQUMsTUFBTSxDQUFDLENBQUUsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDekQsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLDRCQUE0QixLQUFLLElBQUksRUFBRSxDQUFDO1lBQ2xELE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0sR0FBRyxLQUFLLFlBQVksaUJBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxpQkFBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLEdBQUcsR0FBRyxNQUFNLEtBQUssU0FBUyxD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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9nb29nbGUvYXBpL2h0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsd0RBQTBDO0FBQzFDLDJDQUEwRDtBQUU3QyxRQUFBLGVBQWUsR0FBRyxZQUFZLENBQUM7QUFxUzVDLFNBQVMsY0FBYztJQUNyQixPQUFPO1FBQ0wsS0FBSyxFQUFFLEVBQUU7UUFDVCw0QkFBNEIsRUFBRSxLQUFLO0tBQ3BDLENBQUM7QUFDSixDQUFDO0FBQ1ksUUFBQSxJQUFJLEdBQUc7SUFDbEIsT0FBTyxFQUFFLGtCQUFrQjtJQUMzQixNQUFNLENBQUMsT0FBYSxFQUFFLFNBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQzVELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlCLGdCQUFRLENBQUMsTUFBTSxDQUFDLENBQUUsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDekQsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLDRCQUE0QixLQUFLLElBQUksRUFBRSxDQUFDO1lBQ2xELE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0sR0FBRyxLQUFLLFlBQVksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENB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 \ No newline at end of file diff --git a/dist/codec/google/protobuf/descriptor.d.ts b/dist/codec/google/protobuf/descriptor.d.ts index b92c432..3340530 100644 --- a/dist/codec/google/protobuf/descriptor.d.ts +++ b/dist/codec/google/protobuf/descriptor.d.ts @@ -1,6 +1,109 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; +/// +import { Long } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; export declare const protobufPackage = "google.protobuf"; +export declare enum FieldDescriptorProto_Type { + /** + * TYPE_DOUBLE - 0 is reserved for errors. + * Order is weird for historical reasons. + */ + TYPE_DOUBLE = 1, + TYPE_FLOAT = 2, + /** + * TYPE_INT64 - Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if + * negative values are likely. + */ + TYPE_INT64 = 3, + TYPE_UINT64 = 4, + /** + * TYPE_INT32 - Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if + * negative values are likely. + */ + TYPE_INT32 = 5, + TYPE_FIXED64 = 6, + TYPE_FIXED32 = 7, + TYPE_BOOL = 8, + TYPE_STRING = 9, + /** + * TYPE_GROUP - Tag-delimited aggregate. + * Group type is deprecated and not supported in proto3. However, Proto3 + * implementations should still be able to parse the group wire format and + * treat group fields as unknown fields. + */ + TYPE_GROUP = 10, + /** TYPE_MESSAGE - Length-delimited aggregate. */ + TYPE_MESSAGE = 11, + /** TYPE_BYTES - New in version 2. */ + TYPE_BYTES = 12, + TYPE_UINT32 = 13, + TYPE_ENUM = 14, + TYPE_SFIXED32 = 15, + TYPE_SFIXED64 = 16, + /** TYPE_SINT32 - Uses ZigZag encoding. */ + TYPE_SINT32 = 17, + /** TYPE_SINT64 - Uses ZigZag encoding. */ + TYPE_SINT64 = 18, + UNRECOGNIZED = -1 +} +export declare function fieldDescriptorProto_TypeFromJSON(object: any): FieldDescriptorProto_Type; +export declare function fieldDescriptorProto_TypeToJSON(object: FieldDescriptorProto_Type): string; +export declare enum FieldDescriptorProto_Label { + /** LABEL_OPTIONAL - 0 is reserved for errors */ + LABEL_OPTIONAL = 1, + LABEL_REQUIRED = 2, + LABEL_REPEATED = 3, + UNRECOGNIZED = -1 +} +export declare function fieldDescriptorProto_LabelFromJSON(object: any): FieldDescriptorProto_Label; +export declare function fieldDescriptorProto_LabelToJSON(object: FieldDescriptorProto_Label): string; +/** Generated classes can be optimized for speed or code size. */ +export declare enum FileOptions_OptimizeMode { + /** SPEED - Generate complete code for parsing, serialization, */ + SPEED = 1, + /** CODE_SIZE - etc. */ + CODE_SIZE = 2, + /** LITE_RUNTIME - Generate code using MessageLite and the lite runtime. */ + LITE_RUNTIME = 3, + UNRECOGNIZED = -1 +} +export declare function fileOptions_OptimizeModeFromJSON(object: any): FileOptions_OptimizeMode; +export declare function fileOptions_OptimizeModeToJSON(object: FileOptions_OptimizeMode): string; +export declare enum FieldOptions_CType { + /** STRING - Default mode. */ + STRING = 0, + CORD = 1, + STRING_PIECE = 2, + UNRECOGNIZED = -1 +} +export declare function fieldOptions_CTypeFromJSON(object: any): FieldOptions_CType; +export declare function fieldOptions_CTypeToJSON(object: FieldOptions_CType): string; +export declare enum FieldOptions_JSType { + /** JS_NORMAL - Use the default type. */ + JS_NORMAL = 0, + /** JS_STRING - Use JavaScript strings. */ + JS_STRING = 1, + /** JS_NUMBER - Use JavaScript numbers. */ + JS_NUMBER = 2, + UNRECOGNIZED = -1 +} +export declare function fieldOptions_JSTypeFromJSON(object: any): FieldOptions_JSType; +export declare function fieldOptions_JSTypeToJSON(object: FieldOptions_JSType): string; +/** + * Is this method side-effect-free (or safe in HTTP parlance), or idempotent, + * or neither? HTTP based RPC implementation may choose GET verb for safe + * methods, and PUT verb for idempotent methods instead of the default POST. + */ +export declare enum MethodOptions_IdempotencyLevel { + IDEMPOTENCY_UNKNOWN = 0, + /** NO_SIDE_EFFECTS - implies idempotent */ + NO_SIDE_EFFECTS = 1, + /** IDEMPOTENT - idempotent, but may have side effects */ + IDEMPOTENT = 2, + UNRECOGNIZED = -1 +} +export declare function methodOptions_IdempotencyLevelFromJSON(object: any): MethodOptions_IdempotencyLevel; +export declare function methodOptions_IdempotencyLevelToJSON(object: MethodOptions_IdempotencyLevel): string; /** * The protocol compiler can output a FileDescriptorSet containing the .proto * files it parses. @@ -109,6 +212,7 @@ export interface FieldDescriptorProto { * For booleans, "true" or "false". * For strings, contains the default text contents (not escaped in any way). * For bytes, contains the C escaped value. All bytes >= 128 are escaped. + * TODO(kenton): Base-64 encode? */ defaultValue: string; /** @@ -124,85 +228,7 @@ export interface FieldDescriptorProto { */ jsonName: string; options?: FieldOptions; - /** - * If true, this is a proto3 "optional". When a proto3 field is optional, it - * tracks presence regardless of field type. - * - * When proto3_optional is true, this field must be belong to a oneof to - * signal to old proto3 clients that presence is tracked for this field. This - * oneof is known as a "synthetic" oneof, and this field must be its sole - * member (each proto3 optional field gets its own synthetic oneof). Synthetic - * oneofs exist in the descriptor only, and do not generate any API. Synthetic - * oneofs must be ordered after all "real" oneofs. - * - * For message fields, proto3_optional doesn't create any semantic change, - * since non-repeated message fields always track presence. However it still - * indicates the semantic detail of whether the user wrote "optional" or not. - * This can be useful for round-tripping the .proto file. For consistency we - * give message fields a synthetic oneof also, even though it is not required - * to track presence. This is especially important because the parser can't - * tell if a field is a message or an enum, so it must always create a - * synthetic oneof. - * - * Proto2 optional fields do not set this flag, because they already indicate - * optional with `LABEL_OPTIONAL`. - */ - proto3Optional: boolean; } -export declare enum FieldDescriptorProto_Type { - /** - * TYPE_DOUBLE - 0 is reserved for errors. - * Order is weird for historical reasons. - */ - TYPE_DOUBLE = 1, - TYPE_FLOAT = 2, - /** - * TYPE_INT64 - Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if - * negative values are likely. - */ - TYPE_INT64 = 3, - TYPE_UINT64 = 4, - /** - * TYPE_INT32 - Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if - * negative values are likely. - */ - TYPE_INT32 = 5, - TYPE_FIXED64 = 6, - TYPE_FIXED32 = 7, - TYPE_BOOL = 8, - TYPE_STRING = 9, - /** - * TYPE_GROUP - Tag-delimited aggregate. - * Group type is deprecated and not supported in proto3. However, Proto3 - * implementations should still be able to parse the group wire format and - * treat group fields as unknown fields. - */ - TYPE_GROUP = 10, - /** TYPE_MESSAGE - Length-delimited aggregate. */ - TYPE_MESSAGE = 11, - /** TYPE_BYTES - New in version 2. */ - TYPE_BYTES = 12, - TYPE_UINT32 = 13, - TYPE_ENUM = 14, - TYPE_SFIXED32 = 15, - TYPE_SFIXED64 = 16, - /** TYPE_SINT32 - Uses ZigZag encoding. */ - TYPE_SINT32 = 17, - /** TYPE_SINT64 - Uses ZigZag encoding. */ - TYPE_SINT64 = 18, - UNRECOGNIZED = -1 -} -export declare function fieldDescriptorProto_TypeFromJSON(object: any): FieldDescriptorProto_Type; -export declare function fieldDescriptorProto_TypeToJSON(object: FieldDescriptorProto_Type): string; -export declare enum FieldDescriptorProto_Label { - /** LABEL_OPTIONAL - 0 is reserved for errors */ - LABEL_OPTIONAL = 1, - LABEL_REQUIRED = 2, - LABEL_REPEATED = 3, - UNRECOGNIZED = -1 -} -export declare function fieldDescriptorProto_LabelFromJSON(object: any): FieldDescriptorProto_Label; -export declare function fieldDescriptorProto_LabelToJSON(object: FieldDescriptorProto_Label): string; /** Describes a oneof. */ export interface OneofDescriptorProto { name: string; @@ -275,27 +301,24 @@ export interface FileOptions { */ javaPackage: string; /** - * Controls the name of the wrapper Java class generated for the .proto file. - * That class will always contain the .proto file's getDescriptor() method as - * well as any top-level extensions defined in the .proto file. - * If java_multiple_files is disabled, then all the other classes from the - * .proto file will be nested inside the single wrapper outer class. + * If set, all the classes from the .proto file are wrapped in a single + * outer class with the given name. This applies to both Proto1 + * (equivalent to the old "--one_java_file" option) and Proto2 (where + * a .proto always translates to a single class, but you may want to + * explicitly choose the class name). */ javaOuterClassname: string; /** - * If enabled, then the Java code generator will generate a separate .java + * If set true, then the Java code generator will generate a separate .java * file for each top-level message, enum, and service defined in the .proto - * file. Thus, these types will *not* be nested inside the wrapper class - * named by java_outer_classname. However, the wrapper class will still be + * file. Thus, these types will *not* be nested inside the outer class + * named by java_outer_classname. However, the outer class will still be * generated to contain the file's getDescriptor() method as well as any * top-level extensions defined in the file. */ javaMultipleFiles: boolean; - /** - * This option does nothing. - * - * @deprecated - */ + /** This option does nothing. */ + /** @deprecated */ javaGenerateEqualsAndHash: boolean; /** * If set true, then the Java2 code generator will generate code that @@ -386,18 +409,6 @@ export interface FileOptions { */ uninterpretedOption: UninterpretedOption[]; } -/** Generated classes can be optimized for speed or code size. */ -export declare enum FileOptions_OptimizeMode { - /** SPEED - Generate complete code for parsing, serialization, */ - SPEED = 1, - /** CODE_SIZE - etc. */ - CODE_SIZE = 2, - /** LITE_RUNTIME - Generate code using MessageLite and the lite runtime. */ - LITE_RUNTIME = 3, - UNRECOGNIZED = -1 -} -export declare function fileOptions_OptimizeModeFromJSON(object: any): FileOptions_OptimizeMode; -export declare function fileOptions_OptimizeModeToJSON(object: FileOptions_OptimizeMode): string; export interface MessageOptions { /** * Set true to use the old proto1 MessageSet wire format for extensions. @@ -519,20 +530,8 @@ export interface FieldOptions { * implementation must either *always* check its required fields, or *never* * check its required fields, regardless of whether or not the message has * been parsed. - * - * As of 2021, lazy does no correctness checks on the byte stream during - * parsing. This may lead to crashes if and when an invalid byte stream is - * finally parsed upon access. - * - * TODO(b/211906113): Enable validation on lazy fields. */ lazy: boolean; - /** - * unverified_lazy does no correctness checks on the byte stream. This should - * only be used where lazy with verification is prohibitive for performance - * reasons. - */ - unverifiedLazy: boolean; /** * Is this field deprecated? * Depending on the target platform, this can emit Deprecated annotations @@ -545,26 +544,6 @@ export interface FieldOptions { /** The parser stores options it doesn't recognize here. See above. */ uninterpretedOption: UninterpretedOption[]; } -export declare enum FieldOptions_CType { - /** STRING - Default mode. */ - STRING = 0, - CORD = 1, - STRING_PIECE = 2, - UNRECOGNIZED = -1 -} -export declare function fieldOptions_CTypeFromJSON(object: any): FieldOptions_CType; -export declare function fieldOptions_CTypeToJSON(object: FieldOptions_CType): string; -export declare enum FieldOptions_JSType { - /** JS_NORMAL - Use the default type. */ - JS_NORMAL = 0, - /** JS_STRING - Use JavaScript strings. */ - JS_STRING = 1, - /** JS_NUMBER - Use JavaScript numbers. */ - JS_NUMBER = 2, - UNRECOGNIZED = -1 -} -export declare function fieldOptions_JSTypeFromJSON(object: any): FieldOptions_JSType; -export declare function fieldOptions_JSTypeToJSON(object: FieldOptions_JSType): string; export interface OneofOptions { /** The parser stores options it doesn't recognize here. See above. */ uninterpretedOption: UninterpretedOption[]; @@ -619,21 +598,6 @@ export interface MethodOptions { /** The parser stores options it doesn't recognize here. See above. */ uninterpretedOption: UninterpretedOption[]; } -/** - * Is this method side-effect-free (or safe in HTTP parlance), or idempotent, - * or neither? HTTP based RPC implementation may choose GET verb for safe - * methods, and PUT verb for idempotent methods instead of the default POST. - */ -export declare enum MethodOptions_IdempotencyLevel { - IDEMPOTENCY_UNKNOWN = 0, - /** NO_SIDE_EFFECTS - implies idempotent */ - NO_SIDE_EFFECTS = 1, - /** IDEMPOTENT - idempotent, but may have side effects */ - IDEMPOTENT = 2, - UNRECOGNIZED = -1 -} -export declare function methodOptions_IdempotencyLevelFromJSON(object: any): MethodOptions_IdempotencyLevel; -export declare function methodOptions_IdempotencyLevelToJSON(object: MethodOptions_IdempotencyLevel): string; /** * A message representing a option the parser does not recognize. This only * appears in options protos created by the compiler::Parser class. @@ -724,8 +688,8 @@ export interface SourceCodeInfo_Location { * location. * * Each element is a field number or an index. They form a path from - * the root FileDescriptorProto to the place where the definition occurs. - * For example, this path: + * the root FileDescriptorProto to the place where the definition. For + * example, this path: * [ 4, 3, 2, 7, 1 ] * refers to: * file.message_type(3) // 4, 3 @@ -795,9 +759,9 @@ export interface SourceCodeInfo_Location { * optional string corge = 5; * /* Block comment attached * * to corge. Leading asterisks - * * will be removed. * / + * * will be removed. *\/ * /* Block comment attached to - * * grault. * / + * * grault. *\/ * optional int32 grault = 6; * * // ignored detached comments. @@ -839,10 +803,11 @@ export interface GeneratedCodeInfo_Annotation { end: number; } export declare const FileDescriptorSet: { + typeUrl: string; encode(message: FileDescriptorSet, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): FileDescriptorSet; fromJSON(object: any): FileDescriptorSet; - toJSON(message: FileDescriptorSet): unknown; + toJSON(message: FileDescriptorSet): JsonSafe; fromPartial]: never; }) | undefined; - publicDependency?: (number[] & number[] & { [K_1 in Exclude]: never; }) | undefined; - weakDependency?: (number[] & number[] & { [K_2 in Exclude]: never; }) | undefined; + dependency?: (string[] & string[] & Record, never>) | undefined; + publicDependency?: (number[] & number[] & Record, never>) | undefined; + weakDependency?: (number[] & number[] & Record, never>) | undefined; messageType?: ({ name?: string | undefined; field?: { @@ -1883,7 +1830,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -1899,7 +1845,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -1916,7 +1861,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -1932,7 +1876,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -2053,7 +1996,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2069,7 +2011,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -2086,7 +2027,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2102,7 +2042,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -2223,7 +2162,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2239,7 +2177,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -2255,7 +2192,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2271,7 +2207,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -2287,7 +2222,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2307,7 +2241,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -2342,10 +2275,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_3 in Exclude]: never; })[] & { [K_4 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -2404,7 +2337,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -2462,11 +2395,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_7 in Exclude]: never; })[] & { [K_8 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_9 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_10 in Exclude]: never; })[] & { [K_11 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -2528,7 +2458,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2544,7 +2473,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -2560,7 +2488,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2576,7 +2503,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -2592,7 +2518,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2612,7 +2537,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -2647,10 +2571,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_12 in Exclude]: never; })[] & { [K_13 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -2709,7 +2633,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_14 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -2767,11 +2691,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_15 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_16 in Exclude]: never; })[] & { [K_17 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_18 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_19 in Exclude]: never; })[] & { [K_20 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -2835,7 +2756,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2851,7 +2771,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -2868,7 +2787,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -2884,7 +2802,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -3005,7 +2922,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3021,7 +2937,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -3038,7 +2953,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3054,7 +2968,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -3175,7 +3088,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3191,7 +3103,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -3207,7 +3118,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3223,7 +3133,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -3239,7 +3148,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3259,7 +3167,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -3294,10 +3201,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_21 in Exclude]: never; })[] & { [K_22 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -3356,7 +3263,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_23 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -3414,11 +3321,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_24 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_25 in Exclude]: never; })[] & { [K_26 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_27 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_28 in Exclude]: never; })[] & { [K_29 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -3480,7 +3384,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3496,7 +3399,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -3512,7 +3414,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3528,7 +3429,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -3544,7 +3444,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3564,7 +3463,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -3599,10 +3497,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_30 in Exclude]: never; })[] & { [K_31 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -3661,7 +3559,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_32 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -3719,11 +3617,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_33 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_34 in Exclude]: never; })[] & { [K_35 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_36 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_37 in Exclude]: never; })[] & { [K_38 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -3787,7 +3682,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3803,7 +3697,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -3820,7 +3713,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3836,7 +3728,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -3957,7 +3848,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -3973,7 +3863,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -3990,7 +3879,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4006,7 +3894,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -4127,7 +4014,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4143,7 +4029,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -4159,7 +4044,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4175,7 +4059,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -4191,7 +4074,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4211,7 +4093,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -4246,10 +4127,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_39 in Exclude]: never; })[] & { [K_40 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -4308,7 +4189,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_41 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -4366,11 +4247,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_42 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_43 in Exclude]: never; })[] & { [K_44 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_45 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_46 in Exclude]: never; })[] & { [K_47 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -4432,7 +4310,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4448,7 +4325,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -4464,7 +4340,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4480,7 +4355,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -4496,7 +4370,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4516,7 +4389,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -4551,10 +4423,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_48 in Exclude]: never; })[] & { [K_49 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -4613,7 +4485,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_50 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -4671,11 +4543,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_51 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_52 in Exclude]: never; })[] & { [K_53 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_54 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_55 in Exclude]: never; })[] & { [K_56 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -4739,7 +4608,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4755,7 +4623,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -4772,7 +4639,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4788,7 +4654,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -4909,7 +4774,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4925,7 +4789,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -4942,7 +4805,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -4958,7 +4820,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -5079,7 +4940,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5095,7 +4955,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -5111,7 +4970,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5127,7 +4985,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -5143,7 +5000,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5163,7 +5019,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -5198,10 +5053,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_57 in Exclude]: never; })[] & { [K_58 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -5260,7 +5115,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_59 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -5318,11 +5173,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_60 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_61 in Exclude]: never; })[] & { [K_62 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_63 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_64 in Exclude]: never; })[] & { [K_65 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -5384,7 +5236,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5400,7 +5251,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -5416,7 +5266,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5432,7 +5281,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -5448,7 +5296,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5468,7 +5315,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -5503,10 +5349,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_66 in Exclude]: never; })[] & { [K_67 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -5565,7 +5411,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_68 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -5623,11 +5469,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_69 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_70 in Exclude]: never; })[] & { [K_71 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_72 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_73 in Exclude]: never; })[] & { [K_74 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -5691,7 +5534,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5707,7 +5549,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -5724,7 +5565,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5740,7 +5580,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -5861,7 +5700,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5877,7 +5715,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -5894,7 +5731,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -5910,7 +5746,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -6031,7 +5866,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6047,7 +5881,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -6063,7 +5896,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6079,7 +5911,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -6095,7 +5926,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6115,7 +5945,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -6150,10 +5979,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_75 in Exclude]: never; })[] & { [K_76 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -6212,7 +6041,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_77 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -6270,11 +6099,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_78 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_79 in Exclude]: never; })[] & { [K_80 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_81 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_82 in Exclude]: never; })[] & { [K_83 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -6336,7 +6162,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6352,7 +6177,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -6368,7 +6192,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6384,7 +6207,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -6400,7 +6222,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6420,7 +6241,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -6455,10 +6275,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_84 in Exclude]: never; })[] & { [K_85 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -6517,7 +6337,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_86 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -6575,11 +6395,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_87 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_88 in Exclude]: never; })[] & { [K_89 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_90 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_91 in Exclude]: never; })[] & { [K_92 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -6643,7 +6460,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6659,7 +6475,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -6676,7 +6491,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6692,7 +6506,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -6813,7 +6626,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6829,7 +6641,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -6846,7 +6657,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6862,7 +6672,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -6983,7 +6792,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -6999,7 +6807,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -7015,7 +6822,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7031,7 +6837,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -7047,7 +6852,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7067,7 +6871,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -7099,17 +6902,17 @@ export declare const FileDescriptorSet: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_93 in Exclude]: never; })[] & { [K_94 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_95 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_96 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_97 in Exclude]: never; })[] & { [K_98 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_99 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_100 in Exclude]: never; })[] & { [K_101 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -7171,7 +6971,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7187,7 +6986,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -7203,7 +7001,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7219,7 +7016,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -7235,7 +7031,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7255,7 +7050,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -7287,17 +7081,17 @@ export declare const FileDescriptorSet: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_102 in Exclude]: never; })[] & { [K_103 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_104 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_105 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_106 in Exclude]: never; })[] & { [K_107 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_108 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_109 in Exclude]: never; })[] & { [K_110 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -7361,7 +7152,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7377,7 +7167,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -7394,7 +7183,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7410,7 +7198,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -7531,7 +7318,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7547,7 +7333,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -7564,7 +7349,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7580,7 +7364,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -7701,7 +7484,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7717,7 +7499,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -7733,7 +7514,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7749,7 +7529,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -7765,7 +7544,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7785,7 +7563,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -7810,7 +7587,7 @@ export declare const FileDescriptorSet: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_111 in Exclude]: never; })[] & { [K_112 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_113 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_114 in Exclude]: never; })[] & { [K_115 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -7872,7 +7646,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7888,7 +7661,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -7904,7 +7676,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7920,7 +7691,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -7936,7 +7706,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -7956,7 +7725,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -7981,7 +7749,7 @@ export declare const FileDescriptorSet: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_116 in Exclude]: never; })[] & { [K_117 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_118 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_119 in Exclude]: never; })[] & { [K_120 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -8045,7 +7810,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8061,7 +7825,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -8078,7 +7841,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8094,7 +7856,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -8215,7 +7976,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8231,7 +7991,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -8248,7 +8007,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8264,7 +8022,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -8385,7 +8142,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8401,7 +8157,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -8417,7 +8172,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8433,7 +8187,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -8449,7 +8202,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8464,9 +8216,8 @@ export declare const FileDescriptorSet: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_121 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_122 in Exclude]: never; })[] & { [K_123 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -8514,7 +8263,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8530,7 +8278,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -8546,7 +8293,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8562,7 +8308,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -8578,7 +8323,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8593,9 +8337,8 @@ export declare const FileDescriptorSet: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_124 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_125 in Exclude]: never; })[] & { [K_126 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -8645,7 +8386,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8661,7 +8401,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -8678,7 +8417,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8694,7 +8432,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -8815,7 +8552,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8831,7 +8567,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -8848,7 +8583,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -8864,7 +8598,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -8985,7 +8718,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -9001,7 +8733,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -9017,7 +8748,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -9033,8 +8763,7 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; - } & any & { [K_127 in Exclude]: never; })[] & { [K_128 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -9082,7 +8809,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -9098,7 +8824,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -9114,7 +8839,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -9130,8 +8854,7 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; - } & any & { [K_129 in Exclude]: never; })[] & { [K_130 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -9181,7 +8902,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -9197,7 +8917,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -9214,7 +8933,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -9230,7 +8948,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -9351,7 +9068,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -9367,7 +9083,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -9384,7 +9099,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -9400,7 +9114,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -9504,7 +9217,7 @@ export declare const FileDescriptorSet: { end?: number | undefined; }[] | undefined; reservedName?: string[] | undefined; - } & any & { [K_131 in Exclude]: never; })[] & { [K_132 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -9759,7 +9468,7 @@ export declare const FileDescriptorSet: { end?: number | undefined; }[] | undefined; reservedName?: string[] | undefined; - } & any & { [K_133 in Exclude]: never; })[] & { [K_134 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -9836,7 +9545,7 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_135 in Exclude]: never; })[] & { [K_136 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -9886,7 +9595,7 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_137 in Exclude]: never; })[] & { [K_138 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -9920,19 +9629,19 @@ export declare const FileDescriptorSet: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_139 in Exclude]: never; }) | undefined; + } & any & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; }[] & ({ start?: number | undefined; end?: number | undefined; - } & any & { [K_140 in Exclude]: never; })[] & { [K_141 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_142 in Exclude]: never; }) | undefined; - } & { [K_143 in Exclude]: never; })[] & { [K_144 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -10225,7 +9930,7 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_145 in Exclude]: never; })[] & { [K_146 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -10259,19 +9964,19 @@ export declare const FileDescriptorSet: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_147 in Exclude]: never; }) | undefined; + } & any & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; }[] & ({ start?: number | undefined; end?: number | undefined; - } & any & { [K_148 in Exclude]: never; })[] & { [K_149 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_150 in Exclude]: never; }) | undefined; - } & { [K_151 in Exclude]: never; })[] & { [K_152 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -10364,8 +10069,8 @@ export declare const FileDescriptorSet: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_153 in Exclude]: never; }) | undefined; - } & { [K_154 in Exclude]: never; })[] & { [K_155 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -10430,8 +10135,8 @@ export declare const FileDescriptorSet: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_156 in Exclude]: never; }) | undefined; - } & { [K_157 in Exclude]: never; })[] & { [K_158 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -10492,7 +10197,7 @@ export declare const FileDescriptorSet: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_159 in Exclude]: never; })[] & { [K_160 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_161 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -10514,12 +10219,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_162 in Exclude]: never; })[] & { [K_163 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_164 in Exclude]: never; }) | undefined; - } & { [K_165 in Exclude]: never; })[] & { [K_166 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -10829,8 +10530,8 @@ export declare const FileDescriptorSet: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_167 in Exclude]: never; }) | undefined; - } & { [K_168 in Exclude]: never; })[] & { [K_169 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -10889,7 +10590,7 @@ export declare const FileDescriptorSet: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_170 in Exclude]: never; })[] & { [K_171 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_172 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -10911,12 +10612,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_173 in Exclude]: never; })[] & { [K_174 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_175 in Exclude]: never; }) | undefined; - } & { [K_176 in Exclude]: never; })[] & { [K_177 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -11032,7 +10733,7 @@ export declare const FileDescriptorSet: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_178 in Exclude]: never; })[] & { [K_179 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_180 in Exclude]: never; }) | undefined; - } & { [K_181 in Exclude]: never; })[] & { [K_182 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -11133,7 +10834,7 @@ export declare const FileDescriptorSet: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_183 in Exclude]: never; })[] & { [K_184 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_185 in Exclude]: never; }) | undefined; - } & { [K_186 in Exclude]: never; })[] & { [K_187 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -11214,17 +10915,17 @@ export declare const FileDescriptorSet: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_188 in Exclude]: never; })[] & { [K_189 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_190 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_191 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_192 in Exclude]: never; })[] & { [K_193 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_194 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -11246,12 +10947,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_195 in Exclude]: never; })[] & { [K_196 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_197 in Exclude]: never; }) | undefined; - } & { [K_198 in Exclude]: never; })[] & { [K_199 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -11585,7 +11282,7 @@ export declare const FileDescriptorSet: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_200 in Exclude]: never; })[] & { [K_201 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_202 in Exclude]: never; }) | undefined; - } & { [K_203 in Exclude]: never; })[] & { [K_204 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -11664,17 +11361,17 @@ export declare const FileDescriptorSet: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_205 in Exclude]: never; })[] & { [K_206 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_207 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_208 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_209 in Exclude]: never; })[] & { [K_210 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_211 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -11696,12 +11393,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_212 in Exclude]: never; })[] & { [K_213 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_214 in Exclude]: never; }) | undefined; - } & { [K_215 in Exclude]: never; })[] & { [K_216 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -11824,17 +11521,17 @@ export declare const FileDescriptorSet: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_217 in Exclude]: never; })[] & { [K_218 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_219 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_220 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_221 in Exclude]: never; })[] & { [K_222 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_223 in Exclude]: never; }) | undefined; - } & { [K_224 in Exclude]: never; })[] & { [K_225 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -11942,17 +11639,17 @@ export declare const FileDescriptorSet: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_226 in Exclude]: never; })[] & { [K_227 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_228 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_229 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_230 in Exclude]: never; })[] & { [K_231 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_232 in Exclude]: never; }) | undefined; - } & { [K_233 in Exclude]: never; })[] & { [K_234 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -12036,10 +11733,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_235 in Exclude]: never; })[] & { [K_236 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -12098,7 +11795,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_237 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -12156,11 +11853,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_238 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_239 in Exclude]: never; })[] & { [K_240 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_241 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -12182,12 +11879,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_242 in Exclude]: never; })[] & { [K_243 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_244 in Exclude]: never; }) | undefined; - } & { [K_245 in Exclude]: never; })[] & { [K_246 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -12528,17 +12221,17 @@ export declare const FileDescriptorSet: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_247 in Exclude]: never; })[] & { [K_248 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_249 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_250 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_251 in Exclude]: never; })[] & { [K_252 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_253 in Exclude]: never; }) | undefined; - } & { [K_254 in Exclude]: never; })[] & { [K_255 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -12620,10 +12313,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_256 in Exclude]: never; })[] & { [K_257 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -12682,7 +12375,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_258 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -12740,11 +12433,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_259 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_260 in Exclude]: never; })[] & { [K_261 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_262 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -12766,12 +12459,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_263 in Exclude]: never; })[] & { [K_264 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_265 in Exclude]: never; }) | undefined; - } & { [K_266 in Exclude]: never; })[] & { [K_267 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -12897,10 +12590,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_268 in Exclude]: never; })[] & { [K_269 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -12959,7 +12652,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_270 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -13017,11 +12710,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_271 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_272 in Exclude]: never; })[] & { [K_273 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_274 in Exclude]: never; }) | undefined; - } & { [K_275 in Exclude]: never; })[] & { [K_276 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -13132,10 +12825,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_277 in Exclude]: never; })[] & { [K_278 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -13194,7 +12887,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_279 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -13252,11 +12945,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_280 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_281 in Exclude]: never; })[] & { [K_282 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_283 in Exclude]: never; }) | undefined; - } & { [K_284 in Exclude]: never; })[] & { [K_285 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -13340,10 +13033,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_286 in Exclude]: never; })[] & { [K_287 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -13402,7 +13095,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_288 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -13460,11 +13153,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_289 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_290 in Exclude]: never; })[] & { [K_291 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_292 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -13486,12 +13179,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_293 in Exclude]: never; })[] & { [K_294 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_295 in Exclude]: never; }) | undefined; - } & { [K_296 in Exclude]: never; })[] & { [K_297 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -13835,10 +13524,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_298 in Exclude]: never; })[] & { [K_299 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -13897,7 +13586,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_300 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -13955,11 +13644,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_301 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_302 in Exclude]: never; })[] & { [K_303 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_304 in Exclude]: never; }) | undefined; - } & { [K_305 in Exclude]: never; })[] & { [K_306 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -14041,10 +13730,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_307 in Exclude]: never; })[] & { [K_308 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -14103,7 +13792,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_309 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -14161,11 +13850,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_310 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_311 in Exclude]: never; })[] & { [K_312 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_313 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -14187,12 +13876,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_314 in Exclude]: never; })[] & { [K_315 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_316 in Exclude]: never; }) | undefined; - } & { [K_317 in Exclude]: never; })[] & { [K_318 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -14318,10 +14007,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_319 in Exclude]: never; })[] & { [K_320 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -14380,7 +14069,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_321 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -14438,11 +14127,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_322 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_323 in Exclude]: never; })[] & { [K_324 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_325 in Exclude]: never; }) | undefined; - } & { [K_326 in Exclude]: never; })[] & { [K_327 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -14553,10 +14242,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_328 in Exclude]: never; })[] & { [K_329 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -14615,7 +14304,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_330 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -14673,11 +14362,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_331 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_332 in Exclude]: never; })[] & { [K_333 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_334 in Exclude]: never; }) | undefined; - } & { [K_335 in Exclude]: never; })[] & { [K_336 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -14761,10 +14450,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_337 in Exclude]: never; })[] & { [K_338 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -14823,7 +14512,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_339 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -14881,11 +14570,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_340 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_341 in Exclude]: never; })[] & { [K_342 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_343 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -14907,12 +14596,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_344 in Exclude]: never; })[] & { [K_345 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_346 in Exclude]: never; }) | undefined; - } & { [K_347 in Exclude]: never; })[] & { [K_348 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -15256,10 +14941,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_349 in Exclude]: never; })[] & { [K_350 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -15318,7 +15003,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_351 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -15376,11 +15061,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_352 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_353 in Exclude]: never; })[] & { [K_354 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_355 in Exclude]: never; }) | undefined; - } & { [K_356 in Exclude]: never; })[] & { [K_357 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -15462,10 +15147,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_358 in Exclude]: never; })[] & { [K_359 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -15524,7 +15209,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_360 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -15582,11 +15267,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_361 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_362 in Exclude]: never; })[] & { [K_363 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_364 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -15608,12 +15293,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_365 in Exclude]: never; })[] & { [K_366 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_367 in Exclude]: never; }) | undefined; - } & { [K_368 in Exclude]: never; })[] & { [K_369 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -15739,10 +15424,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_370 in Exclude]: never; })[] & { [K_371 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -15801,7 +15486,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_372 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -15859,11 +15544,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_373 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_374 in Exclude]: never; })[] & { [K_375 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_376 in Exclude]: never; }) | undefined; - } & { [K_377 in Exclude]: never; })[] & { [K_378 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -15974,10 +15659,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_379 in Exclude]: never; })[] & { [K_380 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -16036,7 +15721,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_381 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -16094,11 +15779,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_382 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_383 in Exclude]: never; })[] & { [K_384 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_385 in Exclude]: never; }) | undefined; - } & { [K_386 in Exclude]: never; })[] & { [K_387 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -16182,10 +15867,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_388 in Exclude]: never; })[] & { [K_389 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -16244,7 +15929,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_390 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -16302,11 +15987,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_391 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_392 in Exclude]: never; })[] & { [K_393 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_394 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -16328,12 +16013,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_395 in Exclude]: never; })[] & { [K_396 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_397 in Exclude]: never; }) | undefined; - } & { [K_398 in Exclude]: never; })[] & { [K_399 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -16677,10 +16358,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_400 in Exclude]: never; })[] & { [K_401 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -16739,7 +16420,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_402 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -16797,11 +16478,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_403 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_404 in Exclude]: never; })[] & { [K_405 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_406 in Exclude]: never; }) | undefined; - } & { [K_407 in Exclude]: never; })[] & { [K_408 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -16883,10 +16564,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_409 in Exclude]: never; })[] & { [K_410 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -16945,7 +16626,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_411 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -17003,11 +16684,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_412 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_413 in Exclude]: never; })[] & { [K_414 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_415 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -17029,12 +16710,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_416 in Exclude]: never; })[] & { [K_417 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_418 in Exclude]: never; }) | undefined; - } & { [K_419 in Exclude]: never; })[] & { [K_420 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -17160,10 +16841,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_421 in Exclude]: never; })[] & { [K_422 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -17222,7 +16903,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_423 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -17280,11 +16961,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_424 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_425 in Exclude]: never; })[] & { [K_426 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_427 in Exclude]: never; }) | undefined; - } & { [K_428 in Exclude]: never; })[] & { [K_429 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -17395,10 +17076,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_430 in Exclude]: never; })[] & { [K_431 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -17457,7 +17138,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_432 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -17515,11 +17196,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_433 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_434 in Exclude]: never; })[] & { [K_435 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_436 in Exclude]: never; }) | undefined; - } & { [K_437 in Exclude]: never; })[] & { [K_438 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -17603,10 +17284,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_439 in Exclude]: never; })[] & { [K_440 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -17665,7 +17346,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_441 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -17723,11 +17404,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_442 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_443 in Exclude]: never; })[] & { [K_444 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_445 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -17749,12 +17430,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_446 in Exclude]: never; })[] & { [K_447 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_448 in Exclude]: never; }) | undefined; - } & { [K_449 in Exclude]: never; })[] & { [K_450 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -18098,10 +17775,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_451 in Exclude]: never; })[] & { [K_452 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -18160,7 +17837,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_453 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -18218,11 +17895,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_454 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_455 in Exclude]: never; })[] & { [K_456 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_457 in Exclude]: never; }) | undefined; - } & { [K_458 in Exclude]: never; })[] & { [K_459 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -18304,10 +17981,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_460 in Exclude]: never; })[] & { [K_461 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -18366,7 +18043,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_462 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -18424,11 +18101,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_463 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_464 in Exclude]: never; })[] & { [K_465 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_466 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -18450,12 +18127,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_467 in Exclude]: never; })[] & { [K_468 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_469 in Exclude]: never; }) | undefined; - } & { [K_470 in Exclude]: never; })[] & { [K_471 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -18581,10 +18258,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_472 in Exclude]: never; })[] & { [K_473 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -18643,7 +18320,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_474 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -18701,11 +18378,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_475 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_476 in Exclude]: never; })[] & { [K_477 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_478 in Exclude]: never; }) | undefined; - } & { [K_479 in Exclude]: never; })[] & { [K_480 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -18816,10 +18493,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_481 in Exclude]: never; })[] & { [K_482 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -18878,7 +18555,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_483 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -18936,11 +18613,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_484 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_485 in Exclude]: never; })[] & { [K_486 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_487 in Exclude]: never; }) | undefined; - } & { [K_488 in Exclude]: never; })[] & { [K_489 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -19024,10 +18701,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_490 in Exclude]: never; })[] & { [K_491 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -19086,7 +18763,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_492 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -19144,11 +18821,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_493 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_494 in Exclude]: never; })[] & { [K_495 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_496 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -19170,12 +18847,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_497 in Exclude]: never; })[] & { [K_498 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_499 in Exclude]: never; }) | undefined; - } & { [K_500 in Exclude]: never; })[] & { [K_501 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -19519,10 +19192,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_502 in Exclude]: never; })[] & { [K_503 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -19581,7 +19254,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_504 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -19639,11 +19312,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_505 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_506 in Exclude]: never; })[] & { [K_507 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_508 in Exclude]: never; }) | undefined; - } & { [K_509 in Exclude]: never; })[] & { [K_510 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -19725,10 +19398,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_511 in Exclude]: never; })[] & { [K_512 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -19787,7 +19460,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_513 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -19845,11 +19518,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_514 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_515 in Exclude]: never; })[] & { [K_516 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_517 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -19871,12 +19544,12 @@ export declare const FileDescriptorSet: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_518 in Exclude]: never; })[] & { [K_519 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_520 in Exclude]: never; }) | undefined; - } & { [K_521 in Exclude]: never; })[] & { [K_522 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; service?: ({ name?: string | undefined; method?: { @@ -20099,10 +19772,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_523 in Exclude]: never; })[] & { [K_524 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -20161,7 +19834,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_525 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -20219,11 +19892,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_526 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_527 in Exclude]: never; })[] & { [K_528 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_529 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; clientStreaming?: boolean | undefined; serverStreaming?: boolean | undefined; - } & { [K_530 in Exclude]: never; })[] & { [K_531 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ deprecated?: boolean | undefined; uninterpretedOption?: { @@ -20309,10 +19982,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_532 in Exclude]: never; })[] & { [K_533 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -20371,7 +20044,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_534 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -20429,11 +20102,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_535 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_536 in Exclude]: never; })[] & { [K_537 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_538 in Exclude]: never; }) | undefined; - } & { [K_539 in Exclude]: never; })[] & { [K_540 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -20502,7 +20175,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -20518,7 +20190,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -20534,7 +20205,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -20550,7 +20220,6 @@ export declare const FileDescriptorSet: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -20566,7 +20235,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -20586,7 +20254,6 @@ export declare const FileDescriptorSet: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -20621,10 +20288,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_541 in Exclude]: never; })[] & { [K_542 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -20683,7 +20350,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_543 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -20741,11 +20408,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_544 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_545 in Exclude]: never; })[] & { [K_546 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_547 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_548 in Exclude]: never; })[] & { [K_549 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ javaPackage?: string | undefined; javaOuterClassname?: string | undefined; @@ -20878,10 +20542,10 @@ export declare const FileDescriptorSet: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_550 in Exclude]: never; })[] & { [K_551 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -20940,7 +20604,7 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_552 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -20998,11 +20662,11 @@ export declare const FileDescriptorSet: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_553 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_554 in Exclude]: never; })[] & { [K_555 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_556 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; sourceCodeInfo?: ({ location?: { path?: number[] | undefined; @@ -21037,21 +20701,21 @@ export declare const FileDescriptorSet: { trailingComments?: string | undefined; leadingDetachedComments?: string[] | undefined; } & { - path?: (number[] & number[] & { [K_557 in Exclude]: never; }) | undefined; - span?: (number[] & number[] & { [K_558 in Exclude]: never; }) | undefined; + path?: (number[] & number[] & Record, never>) | undefined; + span?: (number[] & number[] & Record, never>) | undefined; leadingComments?: string | undefined; trailingComments?: string | undefined; - leadingDetachedComments?: (string[] & string[] & { [K_559 in Exclude]: never; }) | undefined; - } & { [K_560 in Exclude]: never; })[] & { [K_561 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_562 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; syntax?: string | undefined; - } & { [K_563 in Exclude]: never; })[] & { [K_564 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_565 in Exclude]: never; }>(object: I): FileDescriptorSet; + }[]>, never>) | undefined; + } & Record, never>>(object: I): FileDescriptorSet; }; export declare const FileDescriptorProto: { + typeUrl: string; encode(message: FileDescriptorProto, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): FileDescriptorProto; fromJSON(object: any): FileDescriptorProto; - toJSON(message: FileDescriptorProto): unknown; + toJSON(message: FileDescriptorProto): JsonSafe; fromPartial]: never; }) | undefined; - publicDependency?: (number[] & number[] & { [K_1 in Exclude]: never; }) | undefined; - weakDependency?: (number[] & number[] & { [K_2 in Exclude]: never; }) | undefined; + dependency?: (string[] & string[] & Record, never>) | undefined; + publicDependency?: (number[] & number[] & Record, never>) | undefined; + weakDependency?: (number[] & number[] & Record, never>) | undefined; messageType?: ({ name?: string | undefined; field?: { @@ -21758,7 +21411,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -21774,7 +21426,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -21791,7 +21442,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -21807,7 +21457,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -21928,7 +21577,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -21944,7 +21592,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -21961,7 +21608,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -21977,7 +21623,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -22098,7 +21743,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22114,7 +21758,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -22130,7 +21773,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22146,7 +21788,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -22162,7 +21803,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22182,7 +21822,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -22217,10 +21856,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_3 in Exclude]: never; })[] & { [K_4 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -22279,7 +21918,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_5 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -22337,11 +21976,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_6 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_7 in Exclude]: never; })[] & { [K_8 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_9 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_10 in Exclude]: never; })[] & { [K_11 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -22403,7 +22039,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22419,7 +22054,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -22435,7 +22069,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22451,7 +22084,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -22467,7 +22099,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22487,7 +22118,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -22522,10 +22152,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_12 in Exclude]: never; })[] & { [K_13 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -22584,7 +22214,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_14 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -22642,11 +22272,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_15 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_16 in Exclude]: never; })[] & { [K_17 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_18 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_19 in Exclude]: never; })[] & { [K_20 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -22710,7 +22337,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22726,7 +22352,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -22743,7 +22368,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22759,7 +22383,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -22880,7 +22503,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22896,7 +22518,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -22913,7 +22534,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -22929,7 +22549,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -23050,7 +22669,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23066,7 +22684,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -23082,7 +22699,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23098,7 +22714,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -23114,7 +22729,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23134,7 +22748,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -23169,10 +22782,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_21 in Exclude]: never; })[] & { [K_22 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -23231,7 +22844,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_23 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -23289,11 +22902,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_24 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_25 in Exclude]: never; })[] & { [K_26 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_27 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_28 in Exclude]: never; })[] & { [K_29 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -23355,7 +22965,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23371,7 +22980,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -23387,7 +22995,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23403,7 +23010,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -23419,7 +23025,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23439,7 +23044,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -23474,10 +23078,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_30 in Exclude]: never; })[] & { [K_31 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -23536,7 +23140,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_32 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -23594,11 +23198,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_33 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_34 in Exclude]: never; })[] & { [K_35 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_36 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_37 in Exclude]: never; })[] & { [K_38 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -23662,7 +23263,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23678,7 +23278,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -23695,7 +23294,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23711,7 +23309,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -23832,7 +23429,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23848,7 +23444,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -23865,7 +23460,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -23881,7 +23475,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -24002,7 +23595,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24018,7 +23610,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -24034,7 +23625,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24050,7 +23640,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -24066,7 +23655,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24086,7 +23674,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -24121,10 +23708,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_39 in Exclude]: never; })[] & { [K_40 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -24183,7 +23770,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_41 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -24241,11 +23828,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_42 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_43 in Exclude]: never; })[] & { [K_44 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_45 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_46 in Exclude]: never; })[] & { [K_47 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -24307,7 +23891,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24323,7 +23906,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -24339,7 +23921,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24355,7 +23936,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -24371,7 +23951,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24391,7 +23970,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -24426,10 +24004,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_48 in Exclude]: never; })[] & { [K_49 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -24488,7 +24066,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_50 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -24546,11 +24124,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_51 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_52 in Exclude]: never; })[] & { [K_53 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_54 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_55 in Exclude]: never; })[] & { [K_56 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -24614,7 +24189,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24630,7 +24204,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -24647,7 +24220,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24663,7 +24235,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -24784,7 +24355,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24800,7 +24370,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -24817,7 +24386,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24833,7 +24401,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -24954,7 +24521,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -24970,7 +24536,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -24986,7 +24551,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25002,7 +24566,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -25018,7 +24581,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25038,7 +24600,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -25073,10 +24634,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_57 in Exclude]: never; })[] & { [K_58 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -25135,7 +24696,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_59 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -25193,11 +24754,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_60 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_61 in Exclude]: never; })[] & { [K_62 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_63 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_64 in Exclude]: never; })[] & { [K_65 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -25259,7 +24817,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25275,7 +24832,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -25291,7 +24847,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25307,7 +24862,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -25323,7 +24877,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25343,7 +24896,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -25378,10 +24930,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_66 in Exclude]: never; })[] & { [K_67 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -25440,7 +24992,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_68 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -25498,11 +25050,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_69 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_70 in Exclude]: never; })[] & { [K_71 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_72 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_73 in Exclude]: never; })[] & { [K_74 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -25566,7 +25115,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25582,7 +25130,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -25599,7 +25146,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25615,7 +25161,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -25736,7 +25281,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25752,7 +25296,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -25769,7 +25312,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25785,7 +25327,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -25906,7 +25447,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25922,7 +25462,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -25938,7 +25477,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25954,7 +25492,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -25970,7 +25507,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -25990,7 +25526,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -26025,10 +25560,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_75 in Exclude]: never; })[] & { [K_76 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -26087,7 +25622,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_77 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -26145,11 +25680,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_78 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_79 in Exclude]: never; })[] & { [K_80 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_81 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_82 in Exclude]: never; })[] & { [K_83 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -26211,7 +25743,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26227,7 +25758,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -26243,7 +25773,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26259,7 +25788,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -26275,7 +25803,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26295,7 +25822,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -26330,10 +25856,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_84 in Exclude]: never; })[] & { [K_85 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -26392,7 +25918,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_86 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -26450,11 +25976,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_87 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_88 in Exclude]: never; })[] & { [K_89 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_90 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_91 in Exclude]: never; })[] & { [K_92 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -26518,7 +26041,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26534,7 +26056,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -26551,7 +26072,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26567,7 +26087,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -26688,7 +26207,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26704,7 +26222,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -26721,7 +26238,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26737,7 +26253,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -26858,7 +26373,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26874,7 +26388,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -26890,7 +26403,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26906,7 +26418,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -26922,7 +26433,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -26942,7 +26452,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -26977,10 +26486,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_93 in Exclude]: never; })[] & { [K_94 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -27039,7 +26548,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_95 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -27097,11 +26606,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_96 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_97 in Exclude]: never; })[] & { [K_98 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_99 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_100 in Exclude]: never; })[] & { [K_101 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -27163,7 +26669,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27179,7 +26684,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -27195,7 +26699,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27211,7 +26714,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -27227,7 +26729,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27247,7 +26748,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -27282,10 +26782,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_102 in Exclude]: never; })[] & { [K_103 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -27344,7 +26844,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_104 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -27402,11 +26902,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_105 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_106 in Exclude]: never; })[] & { [K_107 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_108 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_109 in Exclude]: never; })[] & { [K_110 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -27470,7 +26967,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27486,7 +26982,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -27503,7 +26998,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27519,7 +27013,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -27640,7 +27133,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27656,7 +27148,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -27673,7 +27164,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27689,7 +27179,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -27810,7 +27299,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27826,7 +27314,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -27842,7 +27329,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27858,7 +27344,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -27874,7 +27359,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -27894,7 +27378,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -27926,17 +27409,17 @@ export declare const FileDescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_111 in Exclude]: never; })[] & { [K_112 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_113 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_114 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_115 in Exclude]: never; })[] & { [K_116 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_117 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_118 in Exclude]: never; })[] & { [K_119 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -27998,7 +27478,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28014,7 +27493,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -28030,7 +27508,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28046,7 +27523,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -28062,7 +27538,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28082,7 +27557,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -28114,17 +27588,17 @@ export declare const FileDescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_120 in Exclude]: never; })[] & { [K_121 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_122 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_123 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_124 in Exclude]: never; })[] & { [K_125 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_126 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_127 in Exclude]: never; })[] & { [K_128 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -28188,7 +27659,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28204,7 +27674,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -28221,7 +27690,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28237,7 +27705,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -28358,7 +27825,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28374,7 +27840,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -28391,7 +27856,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28407,7 +27871,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -28528,7 +27991,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28544,7 +28006,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -28560,7 +28021,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28576,7 +28036,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -28592,7 +28051,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28612,7 +28070,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -28637,7 +28094,7 @@ export declare const FileDescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_129 in Exclude]: never; })[] & { [K_130 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_131 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_132 in Exclude]: never; })[] & { [K_133 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -28699,7 +28153,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28715,7 +28168,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -28731,7 +28183,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28747,7 +28198,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -28763,7 +28213,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28783,7 +28232,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -28808,7 +28256,7 @@ export declare const FileDescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_134 in Exclude]: never; })[] & { [K_135 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_136 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_137 in Exclude]: never; })[] & { [K_138 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -28872,7 +28317,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28888,7 +28332,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -28905,7 +28348,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -28921,7 +28363,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -29042,7 +28483,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29058,7 +28498,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -29075,7 +28514,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29091,7 +28529,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -29212,7 +28649,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29228,7 +28664,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -29244,7 +28679,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29260,7 +28694,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -29276,7 +28709,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29291,9 +28723,8 @@ export declare const FileDescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_139 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_140 in Exclude]: never; })[] & { [K_141 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -29341,7 +28770,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29357,7 +28785,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -29373,7 +28800,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29389,7 +28815,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -29405,7 +28830,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29420,9 +28844,8 @@ export declare const FileDescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_142 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_143 in Exclude]: never; })[] & { [K_144 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -29472,7 +28893,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29488,7 +28908,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -29505,7 +28924,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29521,7 +28939,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -29642,7 +29059,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29658,7 +29074,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -29675,7 +29090,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29691,7 +29105,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -29812,7 +29225,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29828,7 +29240,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -29844,7 +29255,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29860,8 +29270,7 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; - } & any & { [K_145 in Exclude]: never; })[] & { [K_146 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -29909,7 +29316,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29925,7 +29331,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -29941,7 +29346,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -29957,8 +29361,7 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; - } & any & { [K_147 in Exclude]: never; })[] & { [K_148 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -30008,7 +29409,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -30024,7 +29424,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -30041,7 +29440,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -30057,7 +29455,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -30178,7 +29575,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -30194,7 +29590,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -30211,7 +29606,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -30227,7 +29621,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -30331,7 +29724,7 @@ export declare const FileDescriptorProto: { end?: number | undefined; }[] | undefined; reservedName?: string[] | undefined; - } & any & { [K_149 in Exclude]: never; })[] & { [K_150 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -30586,7 +29975,7 @@ export declare const FileDescriptorProto: { end?: number | undefined; }[] | undefined; reservedName?: string[] | undefined; - } & any & { [K_151 in Exclude]: never; })[] & { [K_152 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -30663,7 +30052,7 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_153 in Exclude]: never; })[] & { [K_154 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -30713,7 +30102,7 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_155 in Exclude]: never; })[] & { [K_156 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -30747,19 +30136,19 @@ export declare const FileDescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_157 in Exclude]: never; }) | undefined; + } & any & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; }[] & ({ start?: number | undefined; end?: number | undefined; - } & any & { [K_158 in Exclude]: never; })[] & { [K_159 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_160 in Exclude]: never; }) | undefined; - } & { [K_161 in Exclude]: never; })[] & { [K_162 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -31052,7 +30437,7 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_163 in Exclude]: never; })[] & { [K_164 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -31086,19 +30471,19 @@ export declare const FileDescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_165 in Exclude]: never; }) | undefined; + } & any & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; }[] & ({ start?: number | undefined; end?: number | undefined; - } & any & { [K_166 in Exclude]: never; })[] & { [K_167 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_168 in Exclude]: never; }) | undefined; - } & { [K_169 in Exclude]: never; })[] & { [K_170 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -31191,8 +30576,8 @@ export declare const FileDescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_171 in Exclude]: never; }) | undefined; - } & { [K_172 in Exclude]: never; })[] & { [K_173 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -31257,8 +30642,8 @@ export declare const FileDescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_174 in Exclude]: never; }) | undefined; - } & { [K_175 in Exclude]: never; })[] & { [K_176 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -31319,7 +30704,7 @@ export declare const FileDescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_177 in Exclude]: never; })[] & { [K_178 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_179 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -31341,12 +30726,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_180 in Exclude]: never; })[] & { [K_181 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_182 in Exclude]: never; }) | undefined; - } & { [K_183 in Exclude]: never; })[] & { [K_184 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -31656,8 +31037,8 @@ export declare const FileDescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_185 in Exclude]: never; }) | undefined; - } & { [K_186 in Exclude]: never; })[] & { [K_187 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -31716,7 +31097,7 @@ export declare const FileDescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_188 in Exclude]: never; })[] & { [K_189 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_190 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -31738,12 +31119,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_191 in Exclude]: never; })[] & { [K_192 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_193 in Exclude]: never; }) | undefined; - } & { [K_194 in Exclude]: never; })[] & { [K_195 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -31859,7 +31240,7 @@ export declare const FileDescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_196 in Exclude]: never; })[] & { [K_197 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_198 in Exclude]: never; }) | undefined; - } & { [K_199 in Exclude]: never; })[] & { [K_200 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -31960,7 +31341,7 @@ export declare const FileDescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_201 in Exclude]: never; })[] & { [K_202 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_203 in Exclude]: never; }) | undefined; - } & { [K_204 in Exclude]: never; })[] & { [K_205 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -32041,17 +31422,17 @@ export declare const FileDescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_206 in Exclude]: never; })[] & { [K_207 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_208 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_209 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_210 in Exclude]: never; })[] & { [K_211 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_212 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -32073,12 +31454,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_213 in Exclude]: never; })[] & { [K_214 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_215 in Exclude]: never; }) | undefined; - } & { [K_216 in Exclude]: never; })[] & { [K_217 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -32412,7 +31789,7 @@ export declare const FileDescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_218 in Exclude]: never; })[] & { [K_219 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_220 in Exclude]: never; }) | undefined; - } & { [K_221 in Exclude]: never; })[] & { [K_222 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -32491,17 +31868,17 @@ export declare const FileDescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_223 in Exclude]: never; })[] & { [K_224 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_225 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_226 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_227 in Exclude]: never; })[] & { [K_228 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_229 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -32523,12 +31900,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_230 in Exclude]: never; })[] & { [K_231 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_232 in Exclude]: never; }) | undefined; - } & { [K_233 in Exclude]: never; })[] & { [K_234 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -32651,17 +32028,17 @@ export declare const FileDescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_235 in Exclude]: never; })[] & { [K_236 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_237 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_238 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_239 in Exclude]: never; })[] & { [K_240 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_241 in Exclude]: never; }) | undefined; - } & { [K_242 in Exclude]: never; })[] & { [K_243 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -32769,17 +32146,17 @@ export declare const FileDescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_244 in Exclude]: never; })[] & { [K_245 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_246 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_247 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_248 in Exclude]: never; })[] & { [K_249 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_250 in Exclude]: never; }) | undefined; - } & { [K_251 in Exclude]: never; })[] & { [K_252 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -32863,10 +32240,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_253 in Exclude]: never; })[] & { [K_254 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -32925,7 +32302,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_255 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -32983,11 +32360,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_256 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_257 in Exclude]: never; })[] & { [K_258 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_259 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -33009,12 +32386,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_260 in Exclude]: never; })[] & { [K_261 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_262 in Exclude]: never; }) | undefined; - } & { [K_263 in Exclude]: never; })[] & { [K_264 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -33355,17 +32728,17 @@ export declare const FileDescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_265 in Exclude]: never; })[] & { [K_266 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_267 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_268 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_269 in Exclude]: never; })[] & { [K_270 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_271 in Exclude]: never; }) | undefined; - } & { [K_272 in Exclude]: never; })[] & { [K_273 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -33447,10 +32820,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_274 in Exclude]: never; })[] & { [K_275 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -33509,7 +32882,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_276 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -33567,11 +32940,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_277 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_278 in Exclude]: never; })[] & { [K_279 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_280 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -33593,12 +32966,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_281 in Exclude]: never; })[] & { [K_282 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_283 in Exclude]: never; }) | undefined; - } & { [K_284 in Exclude]: never; })[] & { [K_285 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -33724,10 +33097,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_286 in Exclude]: never; })[] & { [K_287 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -33786,7 +33159,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_288 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -33844,11 +33217,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_289 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_290 in Exclude]: never; })[] & { [K_291 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_292 in Exclude]: never; }) | undefined; - } & { [K_293 in Exclude]: never; })[] & { [K_294 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -33959,10 +33332,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_295 in Exclude]: never; })[] & { [K_296 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -34021,7 +33394,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_297 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -34079,11 +33452,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_298 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_299 in Exclude]: never; })[] & { [K_300 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_301 in Exclude]: never; }) | undefined; - } & { [K_302 in Exclude]: never; })[] & { [K_303 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -34167,10 +33540,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_304 in Exclude]: never; })[] & { [K_305 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -34229,7 +33602,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_306 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -34287,11 +33660,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_307 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_308 in Exclude]: never; })[] & { [K_309 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_310 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -34313,12 +33686,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_311 in Exclude]: never; })[] & { [K_312 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_313 in Exclude]: never; }) | undefined; - } & { [K_314 in Exclude]: never; })[] & { [K_315 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -34662,10 +34031,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_316 in Exclude]: never; })[] & { [K_317 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -34724,7 +34093,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_318 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -34782,11 +34151,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_319 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_320 in Exclude]: never; })[] & { [K_321 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_322 in Exclude]: never; }) | undefined; - } & { [K_323 in Exclude]: never; })[] & { [K_324 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -34868,10 +34237,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_325 in Exclude]: never; })[] & { [K_326 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -34930,7 +34299,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_327 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -34988,11 +34357,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_328 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_329 in Exclude]: never; })[] & { [K_330 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_331 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -35014,12 +34383,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_332 in Exclude]: never; })[] & { [K_333 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_334 in Exclude]: never; }) | undefined; - } & { [K_335 in Exclude]: never; })[] & { [K_336 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -35145,10 +34514,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_337 in Exclude]: never; })[] & { [K_338 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -35207,7 +34576,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_339 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -35265,11 +34634,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_340 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_341 in Exclude]: never; })[] & { [K_342 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_343 in Exclude]: never; }) | undefined; - } & { [K_344 in Exclude]: never; })[] & { [K_345 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -35380,10 +34749,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_346 in Exclude]: never; })[] & { [K_347 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -35442,7 +34811,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_348 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -35500,11 +34869,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_349 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_350 in Exclude]: never; })[] & { [K_351 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_352 in Exclude]: never; }) | undefined; - } & { [K_353 in Exclude]: never; })[] & { [K_354 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -35588,10 +34957,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_355 in Exclude]: never; })[] & { [K_356 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -35650,7 +35019,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_357 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -35708,11 +35077,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_358 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_359 in Exclude]: never; })[] & { [K_360 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_361 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -35734,12 +35103,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_362 in Exclude]: never; })[] & { [K_363 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_364 in Exclude]: never; }) | undefined; - } & { [K_365 in Exclude]: never; })[] & { [K_366 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -36083,10 +35448,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_367 in Exclude]: never; })[] & { [K_368 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -36145,7 +35510,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_369 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -36203,11 +35568,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_370 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_371 in Exclude]: never; })[] & { [K_372 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_373 in Exclude]: never; }) | undefined; - } & { [K_374 in Exclude]: never; })[] & { [K_375 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -36289,10 +35654,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_376 in Exclude]: never; })[] & { [K_377 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -36351,7 +35716,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_378 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -36409,11 +35774,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_379 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_380 in Exclude]: never; })[] & { [K_381 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_382 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -36435,12 +35800,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_383 in Exclude]: never; })[] & { [K_384 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_385 in Exclude]: never; }) | undefined; - } & { [K_386 in Exclude]: never; })[] & { [K_387 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -36566,10 +35931,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_388 in Exclude]: never; })[] & { [K_389 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -36628,7 +35993,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_390 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -36686,11 +36051,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_391 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_392 in Exclude]: never; })[] & { [K_393 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_394 in Exclude]: never; }) | undefined; - } & { [K_395 in Exclude]: never; })[] & { [K_396 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -36801,10 +36166,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_397 in Exclude]: never; })[] & { [K_398 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -36863,7 +36228,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_399 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -36921,11 +36286,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_400 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_401 in Exclude]: never; })[] & { [K_402 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_403 in Exclude]: never; }) | undefined; - } & { [K_404 in Exclude]: never; })[] & { [K_405 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -37009,10 +36374,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_406 in Exclude]: never; })[] & { [K_407 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -37071,7 +36436,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_408 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -37129,11 +36494,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_409 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_410 in Exclude]: never; })[] & { [K_411 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_412 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -37155,12 +36520,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_413 in Exclude]: never; })[] & { [K_414 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_415 in Exclude]: never; }) | undefined; - } & { [K_416 in Exclude]: never; })[] & { [K_417 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -37504,10 +36865,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_418 in Exclude]: never; })[] & { [K_419 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -37566,7 +36927,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_420 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -37624,11 +36985,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_421 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_422 in Exclude]: never; })[] & { [K_423 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_424 in Exclude]: never; }) | undefined; - } & { [K_425 in Exclude]: never; })[] & { [K_426 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -37710,10 +37071,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_427 in Exclude]: never; })[] & { [K_428 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -37772,7 +37133,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_429 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -37830,11 +37191,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_430 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_431 in Exclude]: never; })[] & { [K_432 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_433 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -37856,12 +37217,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_434 in Exclude]: never; })[] & { [K_435 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_436 in Exclude]: never; }) | undefined; - } & { [K_437 in Exclude]: never; })[] & { [K_438 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -37987,10 +37348,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_439 in Exclude]: never; })[] & { [K_440 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -38049,7 +37410,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_441 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -38107,11 +37468,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_442 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_443 in Exclude]: never; })[] & { [K_444 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_445 in Exclude]: never; }) | undefined; - } & { [K_446 in Exclude]: never; })[] & { [K_447 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -38222,10 +37583,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_448 in Exclude]: never; })[] & { [K_449 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -38284,7 +37645,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_450 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -38342,11 +37703,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_451 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_452 in Exclude]: never; })[] & { [K_453 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_454 in Exclude]: never; }) | undefined; - } & { [K_455 in Exclude]: never; })[] & { [K_456 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -38430,10 +37791,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_457 in Exclude]: never; })[] & { [K_458 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -38492,7 +37853,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_459 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -38550,11 +37911,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_460 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_461 in Exclude]: never; })[] & { [K_462 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_463 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -38576,12 +37937,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_464 in Exclude]: never; })[] & { [K_465 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_466 in Exclude]: never; }) | undefined; - } & { [K_467 in Exclude]: never; })[] & { [K_468 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -38925,10 +38282,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_469 in Exclude]: never; })[] & { [K_470 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -38987,7 +38344,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_471 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -39045,11 +38402,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_472 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_473 in Exclude]: never; })[] & { [K_474 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_475 in Exclude]: never; }) | undefined; - } & { [K_476 in Exclude]: never; })[] & { [K_477 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -39131,10 +38488,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_478 in Exclude]: never; })[] & { [K_479 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -39193,7 +38550,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_480 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -39251,11 +38608,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_481 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_482 in Exclude]: never; })[] & { [K_483 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_484 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -39277,12 +38634,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_485 in Exclude]: never; })[] & { [K_486 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_487 in Exclude]: never; }) | undefined; - } & { [K_488 in Exclude]: never; })[] & { [K_489 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -39408,10 +38765,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_490 in Exclude]: never; })[] & { [K_491 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -39470,7 +38827,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_492 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -39528,11 +38885,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_493 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_494 in Exclude]: never; })[] & { [K_495 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_496 in Exclude]: never; }) | undefined; - } & { [K_497 in Exclude]: never; })[] & { [K_498 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -39643,10 +39000,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_499 in Exclude]: never; })[] & { [K_500 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -39705,7 +39062,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_501 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -39763,11 +39120,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_502 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_503 in Exclude]: never; })[] & { [K_504 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_505 in Exclude]: never; }) | undefined; - } & { [K_506 in Exclude]: never; })[] & { [K_507 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -39851,10 +39208,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_508 in Exclude]: never; })[] & { [K_509 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -39913,7 +39270,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_510 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -39971,11 +39328,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_511 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_512 in Exclude]: never; })[] & { [K_513 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_514 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -39997,12 +39354,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_515 in Exclude]: never; })[] & { [K_516 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_517 in Exclude]: never; }) | undefined; - } & { [K_518 in Exclude]: never; })[] & { [K_519 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -40346,10 +39699,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_520 in Exclude]: never; })[] & { [K_521 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -40408,7 +39761,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_522 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -40466,11 +39819,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_523 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_524 in Exclude]: never; })[] & { [K_525 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_526 in Exclude]: never; }) | undefined; - } & { [K_527 in Exclude]: never; })[] & { [K_528 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -40552,10 +39905,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_529 in Exclude]: never; })[] & { [K_530 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -40614,7 +39967,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_531 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -40672,11 +40025,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_532 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_533 in Exclude]: never; })[] & { [K_534 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_535 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -40698,12 +40051,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_536 in Exclude]: never; })[] & { [K_537 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_538 in Exclude]: never; }) | undefined; - } & { [K_539 in Exclude]: never; })[] & { [K_540 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -40829,10 +40182,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_541 in Exclude]: never; })[] & { [K_542 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -40891,7 +40244,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_543 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -40949,11 +40302,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_544 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_545 in Exclude]: never; })[] & { [K_546 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_547 in Exclude]: never; }) | undefined; - } & { [K_548 in Exclude]: never; })[] & { [K_549 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -41064,10 +40417,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_550 in Exclude]: never; })[] & { [K_551 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -41126,7 +40479,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_552 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -41184,11 +40537,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_553 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_554 in Exclude]: never; })[] & { [K_555 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_556 in Exclude]: never; }) | undefined; - } & { [K_557 in Exclude]: never; })[] & { [K_558 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -41272,10 +40625,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_559 in Exclude]: never; })[] & { [K_560 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -41334,7 +40687,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_561 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -41392,11 +40745,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_562 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_563 in Exclude]: never; })[] & { [K_564 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_565 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -41418,12 +40771,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_566 in Exclude]: never; })[] & { [K_567 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_568 in Exclude]: never; }) | undefined; - } & { [K_569 in Exclude]: never; })[] & { [K_570 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -41767,10 +41116,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_571 in Exclude]: never; })[] & { [K_572 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -41829,7 +41178,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_573 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -41887,11 +41236,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_574 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_575 in Exclude]: never; })[] & { [K_576 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_577 in Exclude]: never; }) | undefined; - } & { [K_578 in Exclude]: never; })[] & { [K_579 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -41973,10 +41322,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_580 in Exclude]: never; })[] & { [K_581 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -42035,7 +41384,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_582 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -42093,11 +41442,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_583 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_584 in Exclude]: never; })[] & { [K_585 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_586 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -42119,12 +41468,12 @@ export declare const FileDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_587 in Exclude]: never; })[] & { [K_588 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_589 in Exclude]: never; }) | undefined; - } & { [K_590 in Exclude]: never; })[] & { [K_591 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; service?: ({ name?: string | undefined; method?: { @@ -42347,10 +41696,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_592 in Exclude]: never; })[] & { [K_593 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -42409,7 +41758,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_594 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -42467,11 +41816,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_595 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_596 in Exclude]: never; })[] & { [K_597 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_598 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; clientStreaming?: boolean | undefined; serverStreaming?: boolean | undefined; - } & { [K_599 in Exclude]: never; })[] & { [K_600 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ deprecated?: boolean | undefined; uninterpretedOption?: { @@ -42557,10 +41906,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_601 in Exclude]: never; })[] & { [K_602 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -42619,7 +41968,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_603 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -42677,11 +42026,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_604 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_605 in Exclude]: never; })[] & { [K_606 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_607 in Exclude]: never; }) | undefined; - } & { [K_608 in Exclude]: never; })[] & { [K_609 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -42750,7 +42099,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -42766,7 +42114,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -42782,7 +42129,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -42798,7 +42144,6 @@ export declare const FileDescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -42814,7 +42159,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -42834,7 +42178,6 @@ export declare const FileDescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -42869,10 +42212,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_610 in Exclude]: never; })[] & { [K_611 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -42931,7 +42274,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_612 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -42989,11 +42332,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_613 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_614 in Exclude]: never; })[] & { [K_615 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_616 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_617 in Exclude]: never; })[] & { [K_618 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ javaPackage?: string | undefined; javaOuterClassname?: string | undefined; @@ -43126,10 +42466,10 @@ export declare const FileDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_619 in Exclude]: never; })[] & { [K_620 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -43188,7 +42528,7 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_621 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -43246,11 +42586,11 @@ export declare const FileDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_622 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_623 in Exclude]: never; })[] & { [K_624 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_625 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; sourceCodeInfo?: ({ location?: { path?: number[] | undefined; @@ -43285,27 +42625,28 @@ export declare const FileDescriptorProto: { trailingComments?: string | undefined; leadingDetachedComments?: string[] | undefined; } & { - path?: (number[] & number[] & { [K_626 in Exclude]: never; }) | undefined; - span?: (number[] & number[] & { [K_627 in Exclude]: never; }) | undefined; + path?: (number[] & number[] & Record, never>) | undefined; + span?: (number[] & number[] & Record, never>) | undefined; leadingComments?: string | undefined; trailingComments?: string | undefined; - leadingDetachedComments?: (string[] & string[] & { [K_628 in Exclude]: never; }) | undefined; - } & { [K_629 in Exclude]: never; })[] & { [K_630 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_631 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; syntax?: string | undefined; - } & { [K_632 in Exclude]: never; }>(object: I): FileDescriptorProto; + } & Record, never>>(object: I): FileDescriptorProto; }; export declare const DescriptorProto: { + typeUrl: string; encode(message: DescriptorProto, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DescriptorProto; fromJSON(object: any): DescriptorProto; - toJSON(message: DescriptorProto): unknown; + toJSON(message: DescriptorProto): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -43674,7 +43005,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -43732,11 +43063,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_7 in Exclude]: never; })[] & { [K_8 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -43798,7 +43126,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -43814,7 +43141,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -43830,7 +43156,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -43846,7 +43171,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -43862,7 +43186,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -43882,7 +43205,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -43917,10 +43239,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_9 in Exclude]: never; })[] & { [K_10 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -43979,7 +43301,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -44037,11 +43359,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_12 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_13 in Exclude]: never; })[] & { [K_14 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_15 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_16 in Exclude]: never; })[] & { [K_17 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -44105,7 +43424,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44121,7 +43439,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -44138,7 +43455,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44154,7 +43470,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -44275,7 +43590,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44291,7 +43605,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -44308,7 +43621,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44324,7 +43636,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -44445,7 +43756,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44461,7 +43771,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -44477,7 +43786,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44493,7 +43801,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -44509,7 +43816,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44529,7 +43835,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -44564,10 +43869,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_18 in Exclude]: never; })[] & { [K_19 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -44626,7 +43931,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_20 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -44684,11 +43989,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_21 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_22 in Exclude]: never; })[] & { [K_23 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_24 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_25 in Exclude]: never; })[] & { [K_26 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -44750,7 +44052,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44766,7 +44067,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -44782,7 +44082,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44798,7 +44097,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -44814,7 +44112,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -44834,7 +44131,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -44869,10 +44165,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_27 in Exclude]: never; })[] & { [K_28 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -44931,7 +44227,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_29 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -44989,11 +44285,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_30 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_31 in Exclude]: never; })[] & { [K_32 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_33 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_34 in Exclude]: never; })[] & { [K_35 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -45057,7 +44350,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45073,7 +44365,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -45090,7 +44381,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45106,7 +44396,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -45227,7 +44516,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45243,7 +44531,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -45260,7 +44547,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45276,7 +44562,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -45397,7 +44682,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45413,7 +44697,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -45429,7 +44712,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45445,7 +44727,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -45461,7 +44742,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45481,7 +44761,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -45516,10 +44795,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_36 in Exclude]: never; })[] & { [K_37 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -45578,7 +44857,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_38 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -45636,11 +44915,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_39 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_40 in Exclude]: never; })[] & { [K_41 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_42 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_43 in Exclude]: never; })[] & { [K_44 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -45702,7 +44978,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45718,7 +44993,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -45734,7 +45008,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45750,7 +45023,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -45766,7 +45038,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -45786,7 +45057,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -45821,10 +45091,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_45 in Exclude]: never; })[] & { [K_46 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -45883,7 +45153,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_47 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -45941,11 +45211,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_48 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_49 in Exclude]: never; })[] & { [K_50 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_51 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_52 in Exclude]: never; })[] & { [K_53 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -46009,7 +45276,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46025,7 +45291,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -46042,7 +45307,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46058,7 +45322,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -46179,7 +45442,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46195,7 +45457,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -46212,7 +45473,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46228,7 +45488,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -46349,7 +45608,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46365,7 +45623,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -46381,7 +45638,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46397,7 +45653,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -46413,7 +45668,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46433,7 +45687,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -46468,10 +45721,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_54 in Exclude]: never; })[] & { [K_55 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -46530,7 +45783,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_56 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -46588,11 +45841,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_57 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_58 in Exclude]: never; })[] & { [K_59 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_60 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_61 in Exclude]: never; })[] & { [K_62 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -46654,7 +45904,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46670,7 +45919,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -46686,7 +45934,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46702,7 +45949,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -46718,7 +45964,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46738,7 +45983,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -46773,10 +46017,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_63 in Exclude]: never; })[] & { [K_64 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -46835,7 +46079,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_65 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -46893,11 +46137,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_66 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_67 in Exclude]: never; })[] & { [K_68 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_69 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_70 in Exclude]: never; })[] & { [K_71 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -46961,7 +46202,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -46977,7 +46217,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -46994,7 +46233,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47010,7 +46248,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -47131,7 +46368,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47147,7 +46383,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -47164,7 +46399,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47180,7 +46414,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -47301,7 +46534,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47317,7 +46549,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -47333,7 +46564,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47349,7 +46579,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -47365,7 +46594,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47385,7 +46613,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -47420,10 +46647,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_72 in Exclude]: never; })[] & { [K_73 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -47482,7 +46709,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_74 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -47540,11 +46767,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_75 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_76 in Exclude]: never; })[] & { [K_77 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_78 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_79 in Exclude]: never; })[] & { [K_80 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -47606,7 +46830,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47622,7 +46845,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -47638,7 +46860,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47654,7 +46875,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -47670,7 +46890,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47690,7 +46909,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -47725,10 +46943,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_81 in Exclude]: never; })[] & { [K_82 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -47787,7 +47005,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_83 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -47845,11 +47063,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_84 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_85 in Exclude]: never; })[] & { [K_86 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_87 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_88 in Exclude]: never; })[] & { [K_89 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -47913,7 +47128,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47929,7 +47143,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -47946,7 +47159,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -47962,7 +47174,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -48083,7 +47294,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48099,7 +47309,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -48116,7 +47325,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48132,7 +47340,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -48253,7 +47460,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48269,7 +47475,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -48285,7 +47490,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48301,7 +47505,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -48317,7 +47520,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48337,7 +47539,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -48372,10 +47573,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_90 in Exclude]: never; })[] & { [K_91 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -48434,7 +47635,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_92 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -48492,11 +47693,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_93 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_94 in Exclude]: never; })[] & { [K_95 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_96 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_97 in Exclude]: never; })[] & { [K_98 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -48558,7 +47756,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48574,7 +47771,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -48590,7 +47786,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48606,7 +47801,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -48622,7 +47816,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48642,7 +47835,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -48677,10 +47869,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_99 in Exclude]: never; })[] & { [K_100 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -48739,7 +47931,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_101 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -48797,11 +47989,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_102 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_103 in Exclude]: never; })[] & { [K_104 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_105 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_106 in Exclude]: never; })[] & { [K_107 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -48865,7 +48054,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48881,7 +48069,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -48898,7 +48085,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -48914,7 +48100,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -49035,7 +48220,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49051,7 +48235,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -49068,7 +48251,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49084,7 +48266,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -49205,7 +48386,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49221,7 +48401,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -49237,7 +48416,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49253,7 +48431,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -49269,7 +48446,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49289,7 +48465,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -49324,10 +48499,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_108 in Exclude]: never; })[] & { [K_109 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -49386,7 +48561,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_110 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -49444,11 +48619,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_111 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_112 in Exclude]: never; })[] & { [K_113 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_114 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_115 in Exclude]: never; })[] & { [K_116 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -49510,7 +48682,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49526,7 +48697,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -49542,7 +48712,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49558,7 +48727,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -49574,7 +48742,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49594,7 +48761,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -49629,10 +48795,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_117 in Exclude]: never; })[] & { [K_118 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -49691,7 +48857,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_119 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -49749,11 +48915,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_120 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_121 in Exclude]: never; })[] & { [K_122 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_123 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_124 in Exclude]: never; })[] & { [K_125 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -49817,7 +48980,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49833,7 +48995,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -49850,7 +49011,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -49866,7 +49026,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -49987,7 +49146,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50003,7 +49161,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -50020,7 +49177,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50036,7 +49192,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -50157,7 +49312,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50173,7 +49327,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -50189,7 +49342,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50205,7 +49357,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -50221,7 +49372,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50241,7 +49391,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -50273,17 +49422,17 @@ export declare const DescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_126 in Exclude]: never; })[] & { [K_127 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_128 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_129 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_130 in Exclude]: never; })[] & { [K_131 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_132 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_133 in Exclude]: never; })[] & { [K_134 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -50345,7 +49491,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50361,7 +49506,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -50377,7 +49521,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50393,7 +49536,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -50409,7 +49551,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50429,7 +49570,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -50461,17 +49601,17 @@ export declare const DescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_135 in Exclude]: never; })[] & { [K_136 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_137 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_138 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_139 in Exclude]: never; })[] & { [K_140 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_141 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_142 in Exclude]: never; })[] & { [K_143 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -50535,7 +49672,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50551,7 +49687,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -50568,7 +49703,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50584,7 +49718,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -50705,7 +49838,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50721,7 +49853,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -50738,7 +49869,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50754,7 +49884,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -50875,7 +50004,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50891,7 +50019,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -50907,7 +50034,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50923,7 +50049,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -50939,7 +50064,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -50959,7 +50083,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -50984,7 +50107,7 @@ export declare const DescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_144 in Exclude]: never; })[] & { [K_145 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_146 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_147 in Exclude]: never; })[] & { [K_148 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -51046,7 +50166,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51062,7 +50181,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -51078,7 +50196,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51094,7 +50211,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -51110,7 +50226,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51130,7 +50245,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: ({ @@ -51155,7 +50269,7 @@ export declare const DescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_149 in Exclude]: never; })[] & { [K_150 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_151 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_152 in Exclude]: never; })[] & { [K_153 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -51219,7 +50330,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51235,7 +50345,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -51252,7 +50361,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51268,7 +50376,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -51389,7 +50496,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51405,7 +50511,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -51422,7 +50527,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51438,7 +50542,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -51559,7 +50662,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51575,7 +50677,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -51591,7 +50692,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51607,7 +50707,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -51623,7 +50722,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51638,9 +50736,8 @@ export declare const DescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_154 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_155 in Exclude]: never; })[] & { [K_156 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -51688,7 +50783,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51704,7 +50798,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -51720,7 +50813,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51736,7 +50828,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; } & { name?: string | undefined; number?: number | undefined; @@ -51752,7 +50843,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51767,9 +50857,8 @@ export declare const DescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_157 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_158 in Exclude]: never; })[] & { [K_159 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -51819,7 +50906,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51835,7 +50921,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -51852,7 +50937,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -51868,7 +50952,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -51989,7 +51072,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52005,7 +51087,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -52022,7 +51103,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52038,7 +51118,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -52159,7 +51238,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52175,7 +51253,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -52191,7 +51268,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52207,8 +51283,7 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; - } & any & { [K_160 in Exclude]: never; })[] & { [K_161 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extension?: ({ name?: string | undefined; number?: number | undefined; @@ -52256,7 +51329,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52272,7 +51344,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] & ({ name?: string | undefined; number?: number | undefined; @@ -52288,7 +51359,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52304,8 +51374,7 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; - } & any & { [K_162 in Exclude]: never; })[] & { [K_163 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; nestedType?: ({ name?: string | undefined; field?: { @@ -52355,7 +51422,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52371,7 +51437,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -52388,7 +51453,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52404,7 +51468,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -52525,7 +51588,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52541,7 +51603,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; extension?: { name?: string | undefined; @@ -52558,7 +51619,6 @@ export declare const DescriptorProto: { packed?: boolean | undefined; jstype?: FieldOptions_JSType | undefined; lazy?: boolean | undefined; - unverifiedLazy?: boolean | undefined; deprecated?: boolean | undefined; weak?: boolean | undefined; uninterpretedOption?: { @@ -52574,7 +51634,6 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - proto3Optional?: boolean | undefined; }[] | undefined; nestedType?: any[] | undefined; enumType?: { @@ -52678,7 +51737,7 @@ export declare const DescriptorProto: { end?: number | undefined; }[] | undefined; reservedName?: string[] | undefined; - } & any & { [K_164 in Exclude]: never; })[] & { [K_165 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -52933,7 +51988,7 @@ export declare const DescriptorProto: { end?: number | undefined; }[] | undefined; reservedName?: string[] | undefined; - } & any & { [K_166 in Exclude]: never; })[] & { [K_167 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -53010,7 +52065,7 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_168 in Exclude]: never; })[] & { [K_169 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -53060,7 +52115,7 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_170 in Exclude]: never; })[] & { [K_171 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -53094,19 +52149,19 @@ export declare const DescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_172 in Exclude]: never; }) | undefined; + } & any & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; }[] & ({ start?: number | undefined; end?: number | undefined; - } & any & { [K_173 in Exclude]: never; })[] & { [K_174 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_175 in Exclude]: never; }) | undefined; - } & { [K_176 in Exclude]: never; })[] & { [K_177 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -53399,7 +52450,7 @@ export declare const DescriptorProto: { aggregateValue?: string | undefined; }[] | undefined; } | undefined; - } & any & { [K_178 in Exclude]: never; })[] & { [K_179 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -53433,19 +52484,19 @@ export declare const DescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_180 in Exclude]: never; }) | undefined; + } & any & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; }[] & ({ start?: number | undefined; end?: number | undefined; - } & any & { [K_181 in Exclude]: never; })[] & { [K_182 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_183 in Exclude]: never; }) | undefined; - } & { [K_184 in Exclude]: never; })[] & { [K_185 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -53538,8 +52589,8 @@ export declare const DescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_186 in Exclude]: never; }) | undefined; - } & { [K_187 in Exclude]: never; })[] & { [K_188 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -53604,8 +52655,8 @@ export declare const DescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_189 in Exclude]: never; }) | undefined; - } & { [K_190 in Exclude]: never; })[] & { [K_191 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -53666,7 +52717,7 @@ export declare const DescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_192 in Exclude]: never; })[] & { [K_193 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_194 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -53688,12 +52739,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_195 in Exclude]: never; })[] & { [K_196 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_197 in Exclude]: never; }) | undefined; - } & { [K_198 in Exclude]: never; })[] & { [K_199 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -54003,8 +53050,8 @@ export declare const DescriptorProto: { stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; }[] | undefined; - } & any & { [K_200 in Exclude]: never; }) | undefined; - } & { [K_201 in Exclude]: never; })[] & { [K_202 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -54063,7 +53110,7 @@ export declare const DescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_203 in Exclude]: never; })[] & { [K_204 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_205 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -54085,12 +53132,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_206 in Exclude]: never; })[] & { [K_207 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_208 in Exclude]: never; }) | undefined; - } & { [K_209 in Exclude]: never; })[] & { [K_210 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -54206,7 +53253,7 @@ export declare const DescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_211 in Exclude]: never; })[] & { [K_212 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_213 in Exclude]: never; }) | undefined; - } & { [K_214 in Exclude]: never; })[] & { [K_215 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -54307,7 +53354,7 @@ export declare const DescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_216 in Exclude]: never; })[] & { [K_217 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_218 in Exclude]: never; }) | undefined; - } & { [K_219 in Exclude]: never; })[] & { [K_220 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -54388,17 +53435,17 @@ export declare const DescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_221 in Exclude]: never; })[] & { [K_222 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_223 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_224 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_225 in Exclude]: never; })[] & { [K_226 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_227 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -54420,12 +53467,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_228 in Exclude]: never; })[] & { [K_229 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_230 in Exclude]: never; }) | undefined; - } & { [K_231 in Exclude]: never; })[] & { [K_232 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -54759,7 +53802,7 @@ export declare const DescriptorProto: { doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & any & { [K_233 in Exclude]: never; })[] & { [K_234 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_235 in Exclude]: never; }) | undefined; - } & { [K_236 in Exclude]: never; })[] & { [K_237 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -54838,17 +53881,17 @@ export declare const DescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_238 in Exclude]: never; })[] & { [K_239 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_240 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_241 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_242 in Exclude]: never; })[] & { [K_243 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_244 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -54870,12 +53913,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_245 in Exclude]: never; })[] & { [K_246 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_247 in Exclude]: never; }) | undefined; - } & { [K_248 in Exclude]: never; })[] & { [K_249 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -54998,17 +54041,17 @@ export declare const DescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_250 in Exclude]: never; })[] & { [K_251 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_252 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_253 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_254 in Exclude]: never; })[] & { [K_255 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_256 in Exclude]: never; }) | undefined; - } & { [K_257 in Exclude]: never; })[] & { [K_258 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -55116,17 +54159,17 @@ export declare const DescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_259 in Exclude]: never; })[] & { [K_260 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_261 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_262 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_263 in Exclude]: never; })[] & { [K_264 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_265 in Exclude]: never; }) | undefined; - } & { [K_266 in Exclude]: never; })[] & { [K_267 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -55210,10 +54253,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_268 in Exclude]: never; })[] & { [K_269 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -55272,7 +54315,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_270 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -55330,11 +54373,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_271 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_272 in Exclude]: never; })[] & { [K_273 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_274 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -55356,12 +54399,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_275 in Exclude]: never; })[] & { [K_276 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_277 in Exclude]: never; }) | undefined; - } & { [K_278 in Exclude]: never; })[] & { [K_279 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -55702,17 +54741,17 @@ export declare const DescriptorProto: { }[] & ({ namePart?: string | undefined; isExtension?: boolean | undefined; - } & any & { [K_280 in Exclude]: never; })[] & { [K_281 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; - positiveIntValue?: string | number | (Long.Long & any & { [K_282 in Exclude]: never; }) | undefined; - negativeIntValue?: string | number | (Long.Long & any & { [K_283 in Exclude]: never; }) | undefined; + positiveIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; + negativeIntValue?: string | number | (Long.Long & any & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_284 in Exclude]: never; })[] & { [K_285 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_286 in Exclude]: never; }) | undefined; - } & { [K_287 in Exclude]: never; })[] & { [K_288 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -55794,10 +54833,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_289 in Exclude]: never; })[] & { [K_290 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -55856,7 +54895,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_291 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -55914,11 +54953,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_292 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_293 in Exclude]: never; })[] & { [K_294 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_295 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -55940,12 +54979,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_296 in Exclude]: never; })[] & { [K_297 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_298 in Exclude]: never; }) | undefined; - } & { [K_299 in Exclude]: never; })[] & { [K_300 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -56071,10 +55110,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_301 in Exclude]: never; })[] & { [K_302 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -56133,7 +55172,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_303 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -56191,11 +55230,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_304 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_305 in Exclude]: never; })[] & { [K_306 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_307 in Exclude]: never; }) | undefined; - } & { [K_308 in Exclude]: never; })[] & { [K_309 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -56306,10 +55345,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_310 in Exclude]: never; })[] & { [K_311 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -56368,7 +55407,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_312 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -56426,11 +55465,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_313 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_314 in Exclude]: never; })[] & { [K_315 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_316 in Exclude]: never; }) | undefined; - } & { [K_317 in Exclude]: never; })[] & { [K_318 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -56514,10 +55553,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_319 in Exclude]: never; })[] & { [K_320 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -56576,7 +55615,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_321 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -56634,11 +55673,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_322 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_323 in Exclude]: never; })[] & { [K_324 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_325 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -56660,12 +55699,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_326 in Exclude]: never; })[] & { [K_327 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_328 in Exclude]: never; }) | undefined; - } & { [K_329 in Exclude]: never; })[] & { [K_330 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -57009,10 +56044,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_331 in Exclude]: never; })[] & { [K_332 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -57071,7 +56106,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_333 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -57129,11 +56164,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_334 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_335 in Exclude]: never; })[] & { [K_336 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_337 in Exclude]: never; }) | undefined; - } & { [K_338 in Exclude]: never; })[] & { [K_339 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -57215,10 +56250,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_340 in Exclude]: never; })[] & { [K_341 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -57277,7 +56312,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_342 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -57335,11 +56370,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_343 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_344 in Exclude]: never; })[] & { [K_345 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_346 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -57361,12 +56396,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_347 in Exclude]: never; })[] & { [K_348 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_349 in Exclude]: never; }) | undefined; - } & { [K_350 in Exclude]: never; })[] & { [K_351 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -57492,10 +56527,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_352 in Exclude]: never; })[] & { [K_353 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -57554,7 +56589,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_354 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -57612,11 +56647,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_355 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_356 in Exclude]: never; })[] & { [K_357 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_358 in Exclude]: never; }) | undefined; - } & { [K_359 in Exclude]: never; })[] & { [K_360 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -57727,10 +56762,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_361 in Exclude]: never; })[] & { [K_362 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -57789,7 +56824,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_363 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -57847,11 +56882,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_364 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_365 in Exclude]: never; })[] & { [K_366 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_367 in Exclude]: never; }) | undefined; - } & { [K_368 in Exclude]: never; })[] & { [K_369 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -57935,10 +56970,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_370 in Exclude]: never; })[] & { [K_371 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -57997,7 +57032,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_372 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -58055,11 +57090,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_373 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_374 in Exclude]: never; })[] & { [K_375 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_376 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -58081,12 +57116,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_377 in Exclude]: never; })[] & { [K_378 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_379 in Exclude]: never; }) | undefined; - } & { [K_380 in Exclude]: never; })[] & { [K_381 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -58430,10 +57461,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_382 in Exclude]: never; })[] & { [K_383 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -58492,7 +57523,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_384 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -58550,11 +57581,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_385 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_386 in Exclude]: never; })[] & { [K_387 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_388 in Exclude]: never; }) | undefined; - } & { [K_389 in Exclude]: never; })[] & { [K_390 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -58636,10 +57667,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_391 in Exclude]: never; })[] & { [K_392 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -58698,7 +57729,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_393 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -58756,11 +57787,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_394 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_395 in Exclude]: never; })[] & { [K_396 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_397 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -58782,12 +57813,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_398 in Exclude]: never; })[] & { [K_399 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_400 in Exclude]: never; }) | undefined; - } & { [K_401 in Exclude]: never; })[] & { [K_402 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -58913,10 +57944,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_403 in Exclude]: never; })[] & { [K_404 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -58975,7 +58006,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_405 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -59033,11 +58064,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_406 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_407 in Exclude]: never; })[] & { [K_408 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_409 in Exclude]: never; }) | undefined; - } & { [K_410 in Exclude]: never; })[] & { [K_411 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -59148,10 +58179,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_412 in Exclude]: never; })[] & { [K_413 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -59210,7 +58241,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_414 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -59268,11 +58299,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_415 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_416 in Exclude]: never; })[] & { [K_417 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_418 in Exclude]: never; }) | undefined; - } & { [K_419 in Exclude]: never; })[] & { [K_420 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -59356,10 +58387,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_421 in Exclude]: never; })[] & { [K_422 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -59418,7 +58449,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_423 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -59476,11 +58507,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_424 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_425 in Exclude]: never; })[] & { [K_426 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_427 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -59502,12 +58533,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_428 in Exclude]: never; })[] & { [K_429 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_430 in Exclude]: never; }) | undefined; - } & { [K_431 in Exclude]: never; })[] & { [K_432 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -59851,10 +58878,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_433 in Exclude]: never; })[] & { [K_434 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -59913,7 +58940,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_435 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -59971,11 +58998,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_436 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_437 in Exclude]: never; })[] & { [K_438 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_439 in Exclude]: never; }) | undefined; - } & { [K_440 in Exclude]: never; })[] & { [K_441 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -60057,10 +59084,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_442 in Exclude]: never; })[] & { [K_443 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -60119,7 +59146,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_444 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -60177,11 +59204,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_445 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_446 in Exclude]: never; })[] & { [K_447 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_448 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -60203,12 +59230,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_449 in Exclude]: never; })[] & { [K_450 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_451 in Exclude]: never; }) | undefined; - } & { [K_452 in Exclude]: never; })[] & { [K_453 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -60334,10 +59361,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_454 in Exclude]: never; })[] & { [K_455 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -60396,7 +59423,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_456 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -60454,11 +59481,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_457 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_458 in Exclude]: never; })[] & { [K_459 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_460 in Exclude]: never; }) | undefined; - } & { [K_461 in Exclude]: never; })[] & { [K_462 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -60569,10 +59596,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_463 in Exclude]: never; })[] & { [K_464 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -60631,7 +59658,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_465 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -60689,11 +59716,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_466 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_467 in Exclude]: never; })[] & { [K_468 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_469 in Exclude]: never; }) | undefined; - } & { [K_470 in Exclude]: never; })[] & { [K_471 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -60777,10 +59804,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_472 in Exclude]: never; })[] & { [K_473 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -60839,7 +59866,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_474 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -60897,11 +59924,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_475 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_476 in Exclude]: never; })[] & { [K_477 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_478 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -60923,12 +59950,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_479 in Exclude]: never; })[] & { [K_480 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_481 in Exclude]: never; }) | undefined; - } & { [K_482 in Exclude]: never; })[] & { [K_483 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -61272,10 +60295,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_484 in Exclude]: never; })[] & { [K_485 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -61334,7 +60357,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_486 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -61392,11 +60415,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_487 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_488 in Exclude]: never; })[] & { [K_489 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_490 in Exclude]: never; }) | undefined; - } & { [K_491 in Exclude]: never; })[] & { [K_492 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -61478,10 +60501,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_493 in Exclude]: never; })[] & { [K_494 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -61540,7 +60563,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_495 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -61598,11 +60621,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_496 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_497 in Exclude]: never; })[] & { [K_498 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_499 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -61624,12 +60647,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_500 in Exclude]: never; })[] & { [K_501 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_502 in Exclude]: never; }) | undefined; - } & { [K_503 in Exclude]: never; })[] & { [K_504 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -61755,10 +60778,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_505 in Exclude]: never; })[] & { [K_506 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -61817,7 +60840,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_507 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -61875,11 +60898,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_508 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_509 in Exclude]: never; })[] & { [K_510 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_511 in Exclude]: never; }) | undefined; - } & { [K_512 in Exclude]: never; })[] & { [K_513 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -61990,10 +61013,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_514 in Exclude]: never; })[] & { [K_515 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -62052,7 +61075,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_516 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -62110,11 +61133,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_517 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_518 in Exclude]: never; })[] & { [K_519 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_520 in Exclude]: never; }) | undefined; - } & { [K_521 in Exclude]: never; })[] & { [K_522 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -62198,10 +61221,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_523 in Exclude]: never; })[] & { [K_524 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -62260,7 +61283,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_525 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -62318,11 +61341,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_526 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_527 in Exclude]: never; })[] & { [K_528 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_529 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -62344,12 +61367,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_530 in Exclude]: never; })[] & { [K_531 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_532 in Exclude]: never; }) | undefined; - } & { [K_533 in Exclude]: never; })[] & { [K_534 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -62693,10 +61712,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_535 in Exclude]: never; })[] & { [K_536 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -62755,7 +61774,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_537 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -62813,11 +61832,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_538 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_539 in Exclude]: never; })[] & { [K_540 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_541 in Exclude]: never; }) | undefined; - } & { [K_542 in Exclude]: never; })[] & { [K_543 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -62899,10 +61918,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_544 in Exclude]: never; })[] & { [K_545 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -62961,7 +61980,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_546 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -63019,11 +62038,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_547 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_548 in Exclude]: never; })[] & { [K_549 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_550 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -63045,12 +62064,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_551 in Exclude]: never; })[] & { [K_552 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_553 in Exclude]: never; }) | undefined; - } & { [K_554 in Exclude]: never; })[] & { [K_555 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -63176,10 +62195,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_556 in Exclude]: never; })[] & { [K_557 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -63238,7 +62257,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_558 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -63296,11 +62315,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_559 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_560 in Exclude]: never; })[] & { [K_561 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_562 in Exclude]: never; }) | undefined; - } & { [K_563 in Exclude]: never; })[] & { [K_564 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -63411,10 +62430,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_565 in Exclude]: never; })[] & { [K_566 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -63473,7 +62492,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_567 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -63531,11 +62550,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_568 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_569 in Exclude]: never; })[] & { [K_570 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_571 in Exclude]: never; }) | undefined; - } & { [K_572 in Exclude]: never; })[] & { [K_573 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -63619,10 +62638,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_574 in Exclude]: never; })[] & { [K_575 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -63681,7 +62700,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_576 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -63739,11 +62758,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_577 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_578 in Exclude]: never; })[] & { [K_579 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_580 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -63765,12 +62784,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_581 in Exclude]: never; })[] & { [K_582 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_583 in Exclude]: never; }) | undefined; - } & { [K_584 in Exclude]: never; })[] & { [K_585 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; enumType?: ({ name?: string | undefined; value?: { @@ -64114,10 +63129,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_586 in Exclude]: never; })[] & { [K_587 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -64176,7 +63191,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_588 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -64234,11 +63249,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_589 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_590 in Exclude]: never; })[] & { [K_591 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_592 in Exclude]: never; }) | undefined; - } & { [K_593 in Exclude]: never; })[] & { [K_594 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -64320,10 +63335,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_595 in Exclude]: never; })[] & { [K_596 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -64382,7 +63397,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_597 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -64440,11 +63455,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_598 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_599 in Exclude]: never; })[] & { [K_600 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_601 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -64466,12 +63481,12 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_602 in Exclude]: never; })[] & { [K_603 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_604 in Exclude]: never; }) | undefined; - } & { [K_605 in Exclude]: never; })[] & { [K_606 in Exclude, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; extensionRange?: ({ start?: number | undefined; end?: number | undefined; @@ -64597,10 +63612,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_607 in Exclude]: never; })[] & { [K_608 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -64659,7 +63674,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_609 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -64717,11 +63732,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_610 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_611 in Exclude]: never; })[] & { [K_612 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_613 in Exclude]: never; }) | undefined; - } & { [K_614 in Exclude]: never; })[] & { [K_615 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; oneofDecl?: ({ name?: string | undefined; options?: { @@ -64832,10 +63847,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_616 in Exclude]: never; })[] & { [K_617 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -64894,7 +63909,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_618 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -64952,11 +63967,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_619 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_620 in Exclude]: never; })[] & { [K_621 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_622 in Exclude]: never; }) | undefined; - } & { [K_623 in Exclude]: never; })[] & { [K_624 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ messageSetWireFormat?: boolean | undefined; noStandardDescriptorAccessor?: boolean | undefined; @@ -65040,10 +64055,10 @@ export declare const DescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_625 in Exclude]: never; })[] & { [K_626 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -65102,7 +64117,7 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_627 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -65160,11 +64175,11 @@ export declare const DescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_628 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_629 in Exclude]: never; })[] & { [K_630 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_631 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -65186,18 +64201,19 @@ export declare const DescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_632 in Exclude]: never; })[] & { [K_633 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_634 in Exclude]: never; }) | undefined; - } & { [K_635 in Exclude]: never; }>(object: I): DescriptorProto; + }[]>, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>>(object: I): DescriptorProto; }; export declare const DescriptorProto_ExtensionRange: { + typeUrl: string; encode(message: DescriptorProto_ExtensionRange, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DescriptorProto_ExtensionRange; fromJSON(object: any): DescriptorProto_ExtensionRange; - toJSON(message: DescriptorProto_ExtensionRange): unknown; + toJSON(message: DescriptorProto_ExtensionRange): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -65326,7 +64342,7 @@ export declare const DescriptorProto_ExtensionRange: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -65384,11 +64400,11 @@ export declare const DescriptorProto_ExtensionRange: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; - } & { [K_7 in Exclude]: never; }>(object: I): DescriptorProto_ExtensionRange; + }[]>, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): DescriptorProto_ExtensionRange; }; export declare const DescriptorProto_ReservedRange: { + typeUrl: string; encode(message: DescriptorProto_ReservedRange, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DescriptorProto_ReservedRange; fromJSON(object: any): DescriptorProto_ReservedRange; - toJSON(message: DescriptorProto_ReservedRange): unknown; + toJSON(message: DescriptorProto_ReservedRange): JsonSafe; fromPartial]: never; }>(object: I): DescriptorProto_ReservedRange; + } & Record, never>>(object: I): DescriptorProto_ReservedRange; }; export declare const ExtensionRangeOptions: { + typeUrl: string; encode(message: ExtensionRangeOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ExtensionRangeOptions; fromJSON(object: any): ExtensionRangeOptions; - toJSON(message: ExtensionRangeOptions): unknown; + toJSON(message: ExtensionRangeOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -65529,7 +64547,7 @@ export declare const ExtensionRangeOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -65587,11 +64605,11 @@ export declare const ExtensionRangeOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): ExtensionRangeOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): ExtensionRangeOptions; }; export declare const FieldDescriptorProto: { + typeUrl: string; encode(message: FieldDescriptorProto, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): FieldDescriptorProto; fromJSON(object: any): FieldDescriptorProto; - toJSON(message: FieldDescriptorProto): unknown; + toJSON(message: FieldDescriptorProto): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -65774,7 +64789,7 @@ export declare const FieldDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -65832,11 +64847,11 @@ export declare const FieldDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; - proto3Optional?: boolean | undefined; - } & { [K_7 in Exclude]: never; }>(object: I): FieldDescriptorProto; + }[]>, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): FieldDescriptorProto; }; export declare const OneofDescriptorProto: { + typeUrl: string; encode(message: OneofDescriptorProto, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): OneofDescriptorProto; fromJSON(object: any): OneofDescriptorProto; - toJSON(message: OneofDescriptorProto): unknown; + toJSON(message: OneofDescriptorProto): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -65983,7 +64998,7 @@ export declare const OneofDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -66041,11 +65056,11 @@ export declare const OneofDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; - } & { [K_7 in Exclude]: never; }>(object: I): OneofDescriptorProto; + }[]>, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): OneofDescriptorProto; }; export declare const EnumDescriptorProto: { + typeUrl: string; encode(message: EnumDescriptorProto, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EnumDescriptorProto; fromJSON(object: any): EnumDescriptorProto; - toJSON(message: EnumDescriptorProto): unknown; + toJSON(message: EnumDescriptorProto): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -66258,7 +65274,7 @@ export declare const EnumDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -66316,11 +65332,11 @@ export declare const EnumDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; - } & { [K_7 in Exclude]: never; })[] & { [K_8 in Exclude, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ allowAlias?: boolean | undefined; deprecated?: boolean | undefined; @@ -66402,10 +65418,10 @@ export declare const EnumDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_9 in Exclude]: never; })[] & { [K_10 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -66464,7 +65480,7 @@ export declare const EnumDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -66522,11 +65538,11 @@ export declare const EnumDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_12 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_13 in Exclude]: never; })[] & { [K_14 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_15 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; reservedRange?: ({ start?: number | undefined; end?: number | undefined; @@ -66548,31 +65564,33 @@ export declare const EnumDescriptorProto: { } & { start?: number | undefined; end?: number | undefined; - } & { [K_16 in Exclude]: never; })[] & { [K_17 in Exclude, never>)[] & Record]: never; }) | undefined; - reservedName?: (string[] & string[] & { [K_18 in Exclude]: never; }) | undefined; - } & { [K_19 in Exclude]: never; }>(object: I): EnumDescriptorProto; + }[]>, never>) | undefined; + reservedName?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>>(object: I): EnumDescriptorProto; }; export declare const EnumDescriptorProto_EnumReservedRange: { + typeUrl: string; encode(message: EnumDescriptorProto_EnumReservedRange, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EnumDescriptorProto_EnumReservedRange; fromJSON(object: any): EnumDescriptorProto_EnumReservedRange; - toJSON(message: EnumDescriptorProto_EnumReservedRange): unknown; + toJSON(message: EnumDescriptorProto_EnumReservedRange): JsonSafe; fromPartial]: never; }>(object: I): EnumDescriptorProto_EnumReservedRange; + } & Record, never>>(object: I): EnumDescriptorProto_EnumReservedRange; }; export declare const EnumValueDescriptorProto: { + typeUrl: string; encode(message: EnumValueDescriptorProto, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EnumValueDescriptorProto; fromJSON(object: any): EnumValueDescriptorProto; - toJSON(message: EnumValueDescriptorProto): unknown; + toJSON(message: EnumValueDescriptorProto): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -66704,7 +65722,7 @@ export declare const EnumValueDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -66762,11 +65780,11 @@ export declare const EnumValueDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; - } & { [K_7 in Exclude]: never; }>(object: I): EnumValueDescriptorProto; + }[]>, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): EnumValueDescriptorProto; }; export declare const ServiceDescriptorProto: { + typeUrl: string; encode(message: ServiceDescriptorProto, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ServiceDescriptorProto; fromJSON(object: any): ServiceDescriptorProto; - toJSON(message: ServiceDescriptorProto): unknown; + toJSON(message: ServiceDescriptorProto): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -66988,7 +66007,7 @@ export declare const ServiceDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -67046,11 +66065,11 @@ export declare const ServiceDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; clientStreaming?: boolean | undefined; serverStreaming?: boolean | undefined; - } & { [K_7 in Exclude]: never; })[] & { [K_8 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; options?: ({ deprecated?: boolean | undefined; uninterpretedOption?: { @@ -67136,10 +66155,10 @@ export declare const ServiceDescriptorProto: { } & { namePart?: string | undefined; isExtension?: boolean | undefined; - } & { [K_9 in Exclude]: never; })[] & { [K_10 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -67198,7 +66217,7 @@ export declare const ServiceDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_11 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -67256,11 +66275,11 @@ export declare const ServiceDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_12 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_13 in Exclude]: never; })[] & { [K_14 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_15 in Exclude]: never; }) | undefined; - } & { [K_16 in Exclude]: never; }>(object: I): ServiceDescriptorProto; + }[]>, never>) | undefined; + } & Record, never>) | undefined; + } & Record, never>>(object: I): ServiceDescriptorProto; }; export declare const MethodDescriptorProto: { + typeUrl: string; encode(message: MethodDescriptorProto, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MethodDescriptorProto; fromJSON(object: any): MethodDescriptorProto; - toJSON(message: MethodDescriptorProto): unknown; + toJSON(message: MethodDescriptorProto): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -67418,7 +66438,7 @@ export declare const MethodDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -67476,11 +66496,11 @@ export declare const MethodDescriptorProto: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }) | undefined; + }[]>, never>) | undefined; + } & Record, never>) | undefined; clientStreaming?: boolean | undefined; serverStreaming?: boolean | undefined; - } & { [K_7 in Exclude]: never; }>(object: I): MethodDescriptorProto; + } & Record, never>>(object: I): MethodDescriptorProto; }; export declare const FileOptions: { + typeUrl: string; encode(message: FileOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): FileOptions; fromJSON(object: any): FileOptions; - toJSON(message: FileOptions): unknown; + toJSON(message: FileOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -67650,7 +66671,7 @@ export declare const FileOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -67708,11 +66729,11 @@ export declare const FileOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): FileOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): FileOptions; }; export declare const MessageOptions: { + typeUrl: string; encode(message: MessageOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MessageOptions; fromJSON(object: any): MessageOptions; - toJSON(message: MessageOptions): unknown; + toJSON(message: MessageOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -67847,7 +66869,7 @@ export declare const MessageOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -67905,11 +66927,11 @@ export declare const MessageOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): MessageOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): MessageOptions; }; export declare const FieldOptions: { + typeUrl: string; encode(message: FieldOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): FieldOptions; fromJSON(object: any): FieldOptions; - toJSON(message: FieldOptions): unknown; + toJSON(message: FieldOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -68050,7 +67071,7 @@ export declare const FieldOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -68108,11 +67129,11 @@ export declare const FieldOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): FieldOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): FieldOptions; }; export declare const OneofOptions: { + typeUrl: string; encode(message: OneofOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): OneofOptions; fromJSON(object: any): OneofOptions; - toJSON(message: OneofOptions): unknown; + toJSON(message: OneofOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -68239,7 +67261,7 @@ export declare const OneofOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -68297,11 +67319,11 @@ export declare const OneofOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): OneofOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): OneofOptions; }; export declare const EnumOptions: { + typeUrl: string; encode(message: EnumOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EnumOptions; fromJSON(object: any): EnumOptions; - toJSON(message: EnumOptions): unknown; + toJSON(message: EnumOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -68432,7 +67455,7 @@ export declare const EnumOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -68490,11 +67513,11 @@ export declare const EnumOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): EnumOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): EnumOptions; }; export declare const EnumValueOptions: { + typeUrl: string; encode(message: EnumValueOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EnumValueOptions; fromJSON(object: any): EnumValueOptions; - toJSON(message: EnumValueOptions): unknown; + toJSON(message: EnumValueOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -68623,7 +67647,7 @@ export declare const EnumValueOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -68681,11 +67705,11 @@ export declare const EnumValueOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): EnumValueOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): EnumValueOptions; }; export declare const ServiceOptions: { + typeUrl: string; encode(message: ServiceOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ServiceOptions; fromJSON(object: any): ServiceOptions; - toJSON(message: ServiceOptions): unknown; + toJSON(message: ServiceOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -68814,7 +67839,7 @@ export declare const ServiceOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -68872,11 +67897,11 @@ export declare const ServiceOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): ServiceOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): ServiceOptions; }; export declare const MethodOptions: { + typeUrl: string; encode(message: MethodOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MethodOptions; fromJSON(object: any): MethodOptions; - toJSON(message: MethodOptions): unknown; + toJSON(message: MethodOptions): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -69007,7 +68033,7 @@ export declare const MethodOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -69065,11 +68091,11 @@ export declare const MethodOptions: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; })[] & { [K_5 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_6 in Exclude]: never; }>(object: I): MethodOptions; + }[]>, never>) | undefined; + } & Record, never>>(object: I): MethodOptions; }; export declare const UninterpretedOption: { + typeUrl: string; encode(message: UninterpretedOption, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UninterpretedOption; fromJSON(object: any): UninterpretedOption; - toJSON(message: UninterpretedOption): unknown; + toJSON(message: UninterpretedOption): JsonSafe; fromPartial]: never; })[] & { [K_1 in Exclude, never>)[] & Record]: never; }) | undefined; + }[]>, never>) | undefined; identifierValue?: string | undefined; positiveIntValue?: string | number | (Long.Long & { high: number; @@ -69171,7 +68198,7 @@ export declare const UninterpretedOption: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_2 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; negativeIntValue?: string | number | (Long.Long & { high: number; low: number; @@ -69229,30 +68256,32 @@ export declare const UninterpretedOption: { toString: (radix?: number | undefined) => string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K_3 in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; doubleValue?: number | undefined; stringValue?: Uint8Array | undefined; aggregateValue?: string | undefined; - } & { [K_4 in Exclude]: never; }>(object: I): UninterpretedOption; + } & Record, never>>(object: I): UninterpretedOption; }; export declare const UninterpretedOption_NamePart: { + typeUrl: string; encode(message: UninterpretedOption_NamePart, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UninterpretedOption_NamePart; fromJSON(object: any): UninterpretedOption_NamePart; - toJSON(message: UninterpretedOption_NamePart): unknown; + toJSON(message: UninterpretedOption_NamePart): JsonSafe; fromPartial]: never; }>(object: I): UninterpretedOption_NamePart; + } & Record, never>>(object: I): UninterpretedOption_NamePart; }; export declare const SourceCodeInfo: { + typeUrl: string; encode(message: SourceCodeInfo, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SourceCodeInfo; fromJSON(object: any): SourceCodeInfo; - toJSON(message: SourceCodeInfo): unknown; + toJSON(message: SourceCodeInfo): JsonSafe; fromPartial]: never; }) | undefined; - span?: (number[] & number[] & { [K_1 in Exclude]: never; }) | undefined; + path?: (number[] & number[] & Record, never>) | undefined; + span?: (number[] & number[] & Record, never>) | undefined; leadingComments?: string | undefined; trailingComments?: string | undefined; - leadingDetachedComments?: (string[] & string[] & { [K_2 in Exclude]: never; }) | undefined; - } & { [K_3 in Exclude]: never; })[] & { [K_4 in Exclude, never>) | undefined; + } & Record, never>)[] & Record]: never; }) | undefined; - } & { [K_5 in Exclude]: never; }>(object: I): SourceCodeInfo; + }[]>, never>) | undefined; + } & Record, never>>(object: I): SourceCodeInfo; }; export declare const SourceCodeInfo_Location: { + typeUrl: string; encode(message: SourceCodeInfo_Location, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SourceCodeInfo_Location; fromJSON(object: any): SourceCodeInfo_Location; - toJSON(message: SourceCodeInfo_Location): unknown; + toJSON(message: SourceCodeInfo_Location): JsonSafe; fromPartial]: never; }) | undefined; - span?: (number[] & number[] & { [K_1 in Exclude]: never; }) | undefined; + path?: (number[] & number[] & Record, never>) | undefined; + span?: (number[] & number[] & Record, never>) | undefined; leadingComments?: string | undefined; trailingComments?: string | undefined; - leadingDetachedComments?: (string[] & string[] & { [K_2 in Exclude]: never; }) | undefined; - } & { [K_3 in Exclude]: never; }>(object: I): SourceCodeInfo_Location; + leadingDetachedComments?: (string[] & string[] & Record, never>) | undefined; + } & Record, never>>(object: I): SourceCodeInfo_Location; }; export declare const GeneratedCodeInfo: { + typeUrl: string; encode(message: GeneratedCodeInfo, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GeneratedCodeInfo; fromJSON(object: any): GeneratedCodeInfo; - toJSON(message: GeneratedCodeInfo): unknown; + toJSON(message: GeneratedCodeInfo): JsonSafe; fromPartial]: never; }) | undefined; + path?: (number[] & number[] & Record, never>) | undefined; sourceFile?: string | undefined; begin?: number | undefined; end?: number | undefined; - } & { [K_1 in Exclude]: never; })[] & { [K_2 in Exclude, never>)[] & Record]: never; }) | undefined; - } & { [K_3 in Exclude]: never; }>(object: I): GeneratedCodeInfo; + }[]>, never>) | undefined; + } & Record, never>>(object: I): GeneratedCodeInfo; }; export declare const GeneratedCodeInfo_Annotation: { + typeUrl: string; encode(message: GeneratedCodeInfo_Annotation, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GeneratedCodeInfo_Annotation; fromJSON(object: any): GeneratedCodeInfo_Annotation; - toJSON(message: GeneratedCodeInfo_Annotation): unknown; + toJSON(message: GeneratedCodeInfo_Annotation): JsonSafe; fromPartial]: never; }) | undefined; + path?: (number[] & number[] & Record, never>) | undefined; sourceFile?: string | undefined; begin?: number | undefined; end?: number | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): GeneratedCodeInfo_Annotation; -}; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; + } & Record, never>>(object: I): GeneratedCodeInfo_Annotation; }; -export {}; diff --git a/dist/codec/google/protobuf/descriptor.js b/dist/codec/google/protobuf/descriptor.js index 597d778..05280cc 100644 --- a/dist/codec/google/protobuf/descriptor.js +++ b/dist/codec/google/protobuf/descriptor.js @@ -1,12 +1,32 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GeneratedCodeInfo_Annotation = exports.GeneratedCodeInfo = exports.SourceCodeInfo_Location = exports.SourceCodeInfo = exports.UninterpretedOption_NamePart = exports.UninterpretedOption = exports.MethodOptions = exports.ServiceOptions = exports.EnumValueOptions = exports.EnumOptions = exports.OneofOptions = exports.FieldOptions = exports.MessageOptions = exports.FileOptions = exports.MethodDescriptorProto = exports.ServiceDescriptorProto = exports.EnumValueDescriptorProto = exports.EnumDescriptorProto_EnumReservedRange = exports.EnumDescriptorProto = exports.OneofDescriptorProto = exports.FieldDescriptorProto = exports.ExtensionRangeOptions = exports.DescriptorProto_ReservedRange = exports.DescriptorProto_ExtensionRange = exports.DescriptorProto = exports.FileDescriptorProto = exports.FileDescriptorSet = exports.methodOptions_IdempotencyLevelToJSON = exports.methodOptions_IdempotencyLevelFromJSON = exports.MethodOptions_IdempotencyLevel = exports.fieldOptions_JSTypeToJSON = exports.fieldOptions_JSTypeFromJSON = exports.FieldOptions_JSType = exports.fieldOptions_CTypeToJSON = exports.fieldOptions_CTypeFromJSON = exports.FieldOptions_CType = exports.fileOptions_OptimizeModeToJSON = exports.fileOptions_OptimizeModeFromJSON = exports.FileOptions_OptimizeMode = exports.fieldDescriptorProto_LabelToJSON = exports.fieldDescriptorProto_LabelFromJSON = exports.FieldDescriptorProto_Label = exports.fieldDescriptorProto_TypeToJSON = exports.fieldDescriptorProto_TypeFromJSON = exports.FieldDescriptorProto_Type = exports.protobufPackage = void 0; /* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); exports.protobufPackage = "google.protobuf"; var FieldDescriptorProto_Type; (function (FieldDescriptorProto_Type) { @@ -371,17 +391,20 @@ function methodOptions_IdempotencyLevelToJSON(object) { } exports.methodOptions_IdempotencyLevelToJSON = methodOptions_IdempotencyLevelToJSON; function createBaseFileDescriptorSet() { - return { file: [] }; + return { + file: [] + }; } exports.FileDescriptorSet = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.FileDescriptorSet", + encode(message, writer = _m0.Writer.create()) { for (const v of message.file) { exports.FileDescriptorProto.encode(v, writer.uint32(10).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseFileDescriptorSet(); while (reader.pos < end) { @@ -398,16 +421,15 @@ exports.FileDescriptorSet = { return message; }, fromJSON(object) { - return { - file: Array.isArray(object?.file) - ? object.file.map((e) => exports.FileDescriptorProto.fromJSON(e)) - : [], - }; + const obj = createBaseFileDescriptorSet(); + if (Array.isArray(object?.file)) + obj.file = object.file.map((e) => exports.FileDescriptorProto.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; if (message.file) { - obj.file = message.file.map((e) => e ? exports.FileDescriptorProto.toJSON(e) : undefined); + obj.file = message.file.map(e => e ? exports.FileDescriptorProto.toJSON(e) : undefined); } else { obj.file = []; @@ -416,10 +438,9 @@ exports.FileDescriptorSet = { }, fromPartial(object) { const message = createBaseFileDescriptorSet(); - message.file = - object.file?.map((e) => exports.FileDescriptorProto.fromPartial(e)) || []; + message.file = object.file?.map(e => exports.FileDescriptorProto.fromPartial(e)) || []; return message; - }, + } }; function createBaseFileDescriptorProto() { return { @@ -434,11 +455,12 @@ function createBaseFileDescriptorProto() { extension: [], options: undefined, sourceCodeInfo: undefined, - syntax: "", + syntax: "" }; } exports.FileDescriptorProto = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.FileDescriptorProto", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -482,7 +504,7 @@ exports.FileDescriptorProto = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseFileDescriptorProto(); while (reader.pos < end) { @@ -548,93 +570,81 @@ exports.FileDescriptorProto = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - package: isSet(object.package) ? String(object.package) : "", - dependency: Array.isArray(object?.dependency) - ? object.dependency.map((e) => String(e)) - : [], - publicDependency: Array.isArray(object?.publicDependency) - ? object.publicDependency.map((e) => Number(e)) - : [], - weakDependency: Array.isArray(object?.weakDependency) - ? object.weakDependency.map((e) => Number(e)) - : [], - messageType: Array.isArray(object?.messageType) - ? object.messageType.map((e) => exports.DescriptorProto.fromJSON(e)) - : [], - enumType: Array.isArray(object?.enumType) - ? object.enumType.map((e) => exports.EnumDescriptorProto.fromJSON(e)) - : [], - service: Array.isArray(object?.service) - ? object.service.map((e) => exports.ServiceDescriptorProto.fromJSON(e)) - : [], - extension: Array.isArray(object?.extension) - ? object.extension.map((e) => exports.FieldDescriptorProto.fromJSON(e)) - : [], - options: isSet(object.options) - ? exports.FileOptions.fromJSON(object.options) - : undefined, - sourceCodeInfo: isSet(object.sourceCodeInfo) - ? exports.SourceCodeInfo.fromJSON(object.sourceCodeInfo) - : undefined, - syntax: isSet(object.syntax) ? String(object.syntax) : "", - }; + const obj = createBaseFileDescriptorProto(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if ((0, helpers_1.isSet)(object.package)) + obj.package = String(object.package); + if (Array.isArray(object?.dependency)) + obj.dependency = object.dependency.map((e) => String(e)); + if (Array.isArray(object?.publicDependency)) + obj.publicDependency = object.publicDependency.map((e) => Number(e)); + if (Array.isArray(object?.weakDependency)) + obj.weakDependency = object.weakDependency.map((e) => Number(e)); + if (Array.isArray(object?.messageType)) + obj.messageType = object.messageType.map((e) => exports.DescriptorProto.fromJSON(e)); + if (Array.isArray(object?.enumType)) + obj.enumType = object.enumType.map((e) => exports.EnumDescriptorProto.fromJSON(e)); + if (Array.isArray(object?.service)) + obj.service = object.service.map((e) => exports.ServiceDescriptorProto.fromJSON(e)); + if (Array.isArray(object?.extension)) + obj.extension = object.extension.map((e) => exports.FieldDescriptorProto.fromJSON(e)); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.FileOptions.fromJSON(object.options); + if ((0, helpers_1.isSet)(object.sourceCodeInfo)) + obj.sourceCodeInfo = exports.SourceCodeInfo.fromJSON(object.sourceCodeInfo); + if ((0, helpers_1.isSet)(object.syntax)) + obj.syntax = String(object.syntax); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); message.package !== undefined && (obj.package = message.package); if (message.dependency) { - obj.dependency = message.dependency.map((e) => e); + obj.dependency = message.dependency.map(e => e); } else { obj.dependency = []; } if (message.publicDependency) { - obj.publicDependency = message.publicDependency.map((e) => Math.round(e)); + obj.publicDependency = message.publicDependency.map(e => Math.round(e)); } else { obj.publicDependency = []; } if (message.weakDependency) { - obj.weakDependency = message.weakDependency.map((e) => Math.round(e)); + obj.weakDependency = message.weakDependency.map(e => Math.round(e)); } else { obj.weakDependency = []; } if (message.messageType) { - obj.messageType = message.messageType.map((e) => e ? exports.DescriptorProto.toJSON(e) : undefined); + obj.messageType = message.messageType.map(e => e ? exports.DescriptorProto.toJSON(e) : undefined); } else { obj.messageType = []; } if (message.enumType) { - obj.enumType = message.enumType.map((e) => e ? exports.EnumDescriptorProto.toJSON(e) : undefined); + obj.enumType = message.enumType.map(e => e ? exports.EnumDescriptorProto.toJSON(e) : undefined); } else { obj.enumType = []; } if (message.service) { - obj.service = message.service.map((e) => e ? exports.ServiceDescriptorProto.toJSON(e) : undefined); + obj.service = message.service.map(e => e ? exports.ServiceDescriptorProto.toJSON(e) : undefined); } else { obj.service = []; } if (message.extension) { - obj.extension = message.extension.map((e) => e ? exports.FieldDescriptorProto.toJSON(e) : undefined); + obj.extension = message.extension.map(e => e ? exports.FieldDescriptorProto.toJSON(e) : undefined); } else { obj.extension = []; } - message.options !== undefined && - (obj.options = message.options - ? exports.FileOptions.toJSON(message.options) - : undefined); - message.sourceCodeInfo !== undefined && - (obj.sourceCodeInfo = message.sourceCodeInfo - ? exports.SourceCodeInfo.toJSON(message.sourceCodeInfo) - : undefined); + message.options !== undefined && (obj.options = message.options ? exports.FileOptions.toJSON(message.options) : undefined); + message.sourceCodeInfo !== undefined && (obj.sourceCodeInfo = message.sourceCodeInfo ? exports.SourceCodeInfo.toJSON(message.sourceCodeInfo) : undefined); message.syntax !== undefined && (obj.syntax = message.syntax); return obj; }, @@ -642,28 +652,22 @@ exports.FileDescriptorProto = { const message = createBaseFileDescriptorProto(); message.name = object.name ?? ""; message.package = object.package ?? ""; - message.dependency = object.dependency?.map((e) => e) || []; - message.publicDependency = object.publicDependency?.map((e) => e) || []; - message.weakDependency = object.weakDependency?.map((e) => e) || []; - message.messageType = - object.messageType?.map((e) => exports.DescriptorProto.fromPartial(e)) || []; - message.enumType = - object.enumType?.map((e) => exports.EnumDescriptorProto.fromPartial(e)) || []; - message.service = - object.service?.map((e) => exports.ServiceDescriptorProto.fromPartial(e)) || []; - message.extension = - object.extension?.map((e) => exports.FieldDescriptorProto.fromPartial(e)) || []; - message.options = - object.options !== undefined && object.options !== null - ? exports.FileOptions.fromPartial(object.options) - : undefined; - message.sourceCodeInfo = - object.sourceCodeInfo !== undefined && object.sourceCodeInfo !== null - ? exports.SourceCodeInfo.fromPartial(object.sourceCodeInfo) - : undefined; + message.dependency = object.dependency?.map(e => e) || []; + message.publicDependency = object.publicDependency?.map(e => e) || []; + message.weakDependency = object.weakDependency?.map(e => e) || []; + message.messageType = object.messageType?.map(e => exports.DescriptorProto.fromPartial(e)) || []; + message.enumType = object.enumType?.map(e => exports.EnumDescriptorProto.fromPartial(e)) || []; + message.service = object.service?.map(e => exports.ServiceDescriptorProto.fromPartial(e)) || []; + message.extension = object.extension?.map(e => exports.FieldDescriptorProto.fromPartial(e)) || []; + if (object.options !== undefined && object.options !== null) { + message.options = exports.FileOptions.fromPartial(object.options); + } + if (object.sourceCodeInfo !== undefined && object.sourceCodeInfo !== null) { + message.sourceCodeInfo = exports.SourceCodeInfo.fromPartial(object.sourceCodeInfo); + } message.syntax = object.syntax ?? ""; return message; - }, + } }; function createBaseDescriptorProto() { return { @@ -676,11 +680,12 @@ function createBaseDescriptorProto() { oneofDecl: [], options: undefined, reservedRange: [], - reservedName: [], + reservedName: [] }; } exports.DescriptorProto = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.DescriptorProto", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -714,7 +719,7 @@ exports.DescriptorProto = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseDescriptorProto(); while (reader.pos < end) { @@ -758,88 +763,77 @@ exports.DescriptorProto = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - field: Array.isArray(object?.field) - ? object.field.map((e) => exports.FieldDescriptorProto.fromJSON(e)) - : [], - extension: Array.isArray(object?.extension) - ? object.extension.map((e) => exports.FieldDescriptorProto.fromJSON(e)) - : [], - nestedType: Array.isArray(object?.nestedType) - ? object.nestedType.map((e) => exports.DescriptorProto.fromJSON(e)) - : [], - enumType: Array.isArray(object?.enumType) - ? object.enumType.map((e) => exports.EnumDescriptorProto.fromJSON(e)) - : [], - extensionRange: Array.isArray(object?.extensionRange) - ? object.extensionRange.map((e) => exports.DescriptorProto_ExtensionRange.fromJSON(e)) - : [], - oneofDecl: Array.isArray(object?.oneofDecl) - ? object.oneofDecl.map((e) => exports.OneofDescriptorProto.fromJSON(e)) - : [], - options: isSet(object.options) - ? exports.MessageOptions.fromJSON(object.options) - : undefined, - reservedRange: Array.isArray(object?.reservedRange) - ? object.reservedRange.map((e) => exports.DescriptorProto_ReservedRange.fromJSON(e)) - : [], - reservedName: Array.isArray(object?.reservedName) - ? object.reservedName.map((e) => String(e)) - : [], - }; + const obj = createBaseDescriptorProto(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if (Array.isArray(object?.field)) + obj.field = object.field.map((e) => exports.FieldDescriptorProto.fromJSON(e)); + if (Array.isArray(object?.extension)) + obj.extension = object.extension.map((e) => exports.FieldDescriptorProto.fromJSON(e)); + if (Array.isArray(object?.nestedType)) + obj.nestedType = object.nestedType.map((e) => exports.DescriptorProto.fromJSON(e)); + if (Array.isArray(object?.enumType)) + obj.enumType = object.enumType.map((e) => exports.EnumDescriptorProto.fromJSON(e)); + if (Array.isArray(object?.extensionRange)) + obj.extensionRange = object.extensionRange.map((e) => exports.DescriptorProto_ExtensionRange.fromJSON(e)); + if (Array.isArray(object?.oneofDecl)) + obj.oneofDecl = object.oneofDecl.map((e) => exports.OneofDescriptorProto.fromJSON(e)); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.MessageOptions.fromJSON(object.options); + if (Array.isArray(object?.reservedRange)) + obj.reservedRange = object.reservedRange.map((e) => exports.DescriptorProto_ReservedRange.fromJSON(e)); + if (Array.isArray(object?.reservedName)) + obj.reservedName = object.reservedName.map((e) => String(e)); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); if (message.field) { - obj.field = message.field.map((e) => e ? exports.FieldDescriptorProto.toJSON(e) : undefined); + obj.field = message.field.map(e => e ? exports.FieldDescriptorProto.toJSON(e) : undefined); } else { obj.field = []; } if (message.extension) { - obj.extension = message.extension.map((e) => e ? exports.FieldDescriptorProto.toJSON(e) : undefined); + obj.extension = message.extension.map(e => e ? exports.FieldDescriptorProto.toJSON(e) : undefined); } else { obj.extension = []; } if (message.nestedType) { - obj.nestedType = message.nestedType.map((e) => e ? exports.DescriptorProto.toJSON(e) : undefined); + obj.nestedType = message.nestedType.map(e => e ? exports.DescriptorProto.toJSON(e) : undefined); } else { obj.nestedType = []; } if (message.enumType) { - obj.enumType = message.enumType.map((e) => e ? exports.EnumDescriptorProto.toJSON(e) : undefined); + obj.enumType = message.enumType.map(e => e ? exports.EnumDescriptorProto.toJSON(e) : undefined); } else { obj.enumType = []; } if (message.extensionRange) { - obj.extensionRange = message.extensionRange.map((e) => e ? exports.DescriptorProto_ExtensionRange.toJSON(e) : undefined); + obj.extensionRange = message.extensionRange.map(e => e ? exports.DescriptorProto_ExtensionRange.toJSON(e) : undefined); } else { obj.extensionRange = []; } if (message.oneofDecl) { - obj.oneofDecl = message.oneofDecl.map((e) => e ? exports.OneofDescriptorProto.toJSON(e) : undefined); + obj.oneofDecl = message.oneofDecl.map(e => e ? exports.OneofDescriptorProto.toJSON(e) : undefined); } else { obj.oneofDecl = []; } - message.options !== undefined && - (obj.options = message.options - ? exports.MessageOptions.toJSON(message.options) - : undefined); + message.options !== undefined && (obj.options = message.options ? exports.MessageOptions.toJSON(message.options) : undefined); if (message.reservedRange) { - obj.reservedRange = message.reservedRange.map((e) => e ? exports.DescriptorProto_ReservedRange.toJSON(e) : undefined); + obj.reservedRange = message.reservedRange.map(e => e ? exports.DescriptorProto_ReservedRange.toJSON(e) : undefined); } else { obj.reservedRange = []; } if (message.reservedName) { - obj.reservedName = message.reservedName.map((e) => e); + obj.reservedName = message.reservedName.map(e => e); } else { obj.reservedName = []; @@ -849,33 +843,30 @@ exports.DescriptorProto = { fromPartial(object) { const message = createBaseDescriptorProto(); message.name = object.name ?? ""; - message.field = - object.field?.map((e) => exports.FieldDescriptorProto.fromPartial(e)) || []; - message.extension = - object.extension?.map((e) => exports.FieldDescriptorProto.fromPartial(e)) || []; - message.nestedType = - object.nestedType?.map((e) => exports.DescriptorProto.fromPartial(e)) || []; - message.enumType = - object.enumType?.map((e) => exports.EnumDescriptorProto.fromPartial(e)) || []; - message.extensionRange = - object.extensionRange?.map((e) => exports.DescriptorProto_ExtensionRange.fromPartial(e)) || []; - message.oneofDecl = - object.oneofDecl?.map((e) => exports.OneofDescriptorProto.fromPartial(e)) || []; - message.options = - object.options !== undefined && object.options !== null - ? exports.MessageOptions.fromPartial(object.options) - : undefined; - message.reservedRange = - object.reservedRange?.map((e) => exports.DescriptorProto_ReservedRange.fromPartial(e)) || []; - message.reservedName = object.reservedName?.map((e) => e) || []; + message.field = object.field?.map(e => exports.FieldDescriptorProto.fromPartial(e)) || []; + message.extension = object.extension?.map(e => exports.FieldDescriptorProto.fromPartial(e)) || []; + message.nestedType = object.nestedType?.map(e => exports.DescriptorProto.fromPartial(e)) || []; + message.enumType = object.enumType?.map(e => exports.EnumDescriptorProto.fromPartial(e)) || []; + message.extensionRange = object.extensionRange?.map(e => exports.DescriptorProto_ExtensionRange.fromPartial(e)) || []; + message.oneofDecl = object.oneofDecl?.map(e => exports.OneofDescriptorProto.fromPartial(e)) || []; + if (object.options !== undefined && object.options !== null) { + message.options = exports.MessageOptions.fromPartial(object.options); + } + message.reservedRange = object.reservedRange?.map(e => exports.DescriptorProto_ReservedRange.fromPartial(e)) || []; + message.reservedName = object.reservedName?.map(e => e) || []; return message; - }, + } }; function createBaseDescriptorProto_ExtensionRange() { - return { start: 0, end: 0, options: undefined }; + return { + start: 0, + end: 0, + options: undefined + }; } exports.DescriptorProto_ExtensionRange = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.ExtensionRange", + encode(message, writer = _m0.Writer.create()) { if (message.start !== 0) { writer.uint32(8).int32(message.start); } @@ -888,7 +879,7 @@ exports.DescriptorProto_ExtensionRange = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseDescriptorProto_ExtensionRange(); while (reader.pos < end) { @@ -911,40 +902,41 @@ exports.DescriptorProto_ExtensionRange = { return message; }, fromJSON(object) { - return { - start: isSet(object.start) ? Number(object.start) : 0, - end: isSet(object.end) ? Number(object.end) : 0, - options: isSet(object.options) - ? exports.ExtensionRangeOptions.fromJSON(object.options) - : undefined, - }; + const obj = createBaseDescriptorProto_ExtensionRange(); + if ((0, helpers_1.isSet)(object.start)) + obj.start = Number(object.start); + if ((0, helpers_1.isSet)(object.end)) + obj.end = Number(object.end); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.ExtensionRangeOptions.fromJSON(object.options); + return obj; }, toJSON(message) { const obj = {}; message.start !== undefined && (obj.start = Math.round(message.start)); message.end !== undefined && (obj.end = Math.round(message.end)); - message.options !== undefined && - (obj.options = message.options - ? exports.ExtensionRangeOptions.toJSON(message.options) - : undefined); + message.options !== undefined && (obj.options = message.options ? exports.ExtensionRangeOptions.toJSON(message.options) : undefined); return obj; }, fromPartial(object) { const message = createBaseDescriptorProto_ExtensionRange(); message.start = object.start ?? 0; message.end = object.end ?? 0; - message.options = - object.options !== undefined && object.options !== null - ? exports.ExtensionRangeOptions.fromPartial(object.options) - : undefined; + if (object.options !== undefined && object.options !== null) { + message.options = exports.ExtensionRangeOptions.fromPartial(object.options); + } return message; - }, + } }; function createBaseDescriptorProto_ReservedRange() { - return { start: 0, end: 0 }; + return { + start: 0, + end: 0 + }; } exports.DescriptorProto_ReservedRange = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.ReservedRange", + encode(message, writer = _m0.Writer.create()) { if (message.start !== 0) { writer.uint32(8).int32(message.start); } @@ -954,7 +946,7 @@ exports.DescriptorProto_ReservedRange = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseDescriptorProto_ReservedRange(); while (reader.pos < end) { @@ -974,10 +966,12 @@ exports.DescriptorProto_ReservedRange = { return message; }, fromJSON(object) { - return { - start: isSet(object.start) ? Number(object.start) : 0, - end: isSet(object.end) ? Number(object.end) : 0, - }; + const obj = createBaseDescriptorProto_ReservedRange(); + if ((0, helpers_1.isSet)(object.start)) + obj.start = Number(object.start); + if ((0, helpers_1.isSet)(object.end)) + obj.end = Number(object.end); + return obj; }, toJSON(message) { const obj = {}; @@ -990,20 +984,23 @@ exports.DescriptorProto_ReservedRange = { message.start = object.start ?? 0; message.end = object.end ?? 0; return message; - }, + } }; function createBaseExtensionRangeOptions() { - return { uninterpretedOption: [] }; + return { + uninterpretedOption: [] + }; } exports.ExtensionRangeOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.ExtensionRangeOptions", + encode(message, writer = _m0.Writer.create()) { for (const v of message.uninterpretedOption) { exports.UninterpretedOption.encode(v, writer.uint32(7994).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseExtensionRangeOptions(); while (reader.pos < end) { @@ -1020,16 +1017,15 @@ exports.ExtensionRangeOptions = { return message; }, fromJSON(object) { - return { - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseExtensionRangeOptions(); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -1038,10 +1034,9 @@ exports.ExtensionRangeOptions = { }, fromPartial(object) { const message = createBaseExtensionRangeOptions(); - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseFieldDescriptorProto() { return { @@ -1054,12 +1049,12 @@ function createBaseFieldDescriptorProto() { defaultValue: "", oneofIndex: 0, jsonName: "", - options: undefined, - proto3Optional: false, + options: undefined }; } exports.FieldDescriptorProto = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.FieldDescriptorProto", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1090,13 +1085,10 @@ exports.FieldDescriptorProto = { if (message.options !== undefined) { exports.FieldOptions.encode(message.options, writer.uint32(66).fork()).ldelim(); } - if (message.proto3Optional === true) { - writer.uint32(136).bool(message.proto3Optional); - } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseFieldDescriptorProto(); while (reader.pos < end) { @@ -1132,9 +1124,6 @@ exports.FieldDescriptorProto = { case 8: message.options = exports.FieldOptions.decode(reader, reader.uint32()); break; - case 17: - message.proto3Optional = reader.bool(); - break; default: reader.skipType(tag & 7); break; @@ -1143,51 +1132,41 @@ exports.FieldDescriptorProto = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - number: isSet(object.number) ? Number(object.number) : 0, - label: isSet(object.label) - ? fieldDescriptorProto_LabelFromJSON(object.label) - : 1, - type: isSet(object.type) - ? fieldDescriptorProto_TypeFromJSON(object.type) - : 1, - typeName: isSet(object.typeName) ? String(object.typeName) : "", - extendee: isSet(object.extendee) ? String(object.extendee) : "", - defaultValue: isSet(object.defaultValue) - ? String(object.defaultValue) - : "", - oneofIndex: isSet(object.oneofIndex) ? Number(object.oneofIndex) : 0, - jsonName: isSet(object.jsonName) ? String(object.jsonName) : "", - options: isSet(object.options) - ? exports.FieldOptions.fromJSON(object.options) - : undefined, - proto3Optional: isSet(object.proto3Optional) - ? Boolean(object.proto3Optional) - : false, - }; + const obj = createBaseFieldDescriptorProto(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if ((0, helpers_1.isSet)(object.number)) + obj.number = Number(object.number); + if ((0, helpers_1.isSet)(object.label)) + obj.label = fieldDescriptorProto_LabelFromJSON(object.label); + if ((0, helpers_1.isSet)(object.type)) + obj.type = fieldDescriptorProto_TypeFromJSON(object.type); + if ((0, helpers_1.isSet)(object.typeName)) + obj.typeName = String(object.typeName); + if ((0, helpers_1.isSet)(object.extendee)) + obj.extendee = String(object.extendee); + if ((0, helpers_1.isSet)(object.defaultValue)) + obj.defaultValue = String(object.defaultValue); + if ((0, helpers_1.isSet)(object.oneofIndex)) + obj.oneofIndex = Number(object.oneofIndex); + if ((0, helpers_1.isSet)(object.jsonName)) + obj.jsonName = String(object.jsonName); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.FieldOptions.fromJSON(object.options); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); message.number !== undefined && (obj.number = Math.round(message.number)); - message.label !== undefined && - (obj.label = fieldDescriptorProto_LabelToJSON(message.label)); - message.type !== undefined && - (obj.type = fieldDescriptorProto_TypeToJSON(message.type)); + message.label !== undefined && (obj.label = fieldDescriptorProto_LabelToJSON(message.label)); + message.type !== undefined && (obj.type = fieldDescriptorProto_TypeToJSON(message.type)); message.typeName !== undefined && (obj.typeName = message.typeName); message.extendee !== undefined && (obj.extendee = message.extendee); - message.defaultValue !== undefined && - (obj.defaultValue = message.defaultValue); - message.oneofIndex !== undefined && - (obj.oneofIndex = Math.round(message.oneofIndex)); + message.defaultValue !== undefined && (obj.defaultValue = message.defaultValue); + message.oneofIndex !== undefined && (obj.oneofIndex = Math.round(message.oneofIndex)); message.jsonName !== undefined && (obj.jsonName = message.jsonName); - message.options !== undefined && - (obj.options = message.options - ? exports.FieldOptions.toJSON(message.options) - : undefined); - message.proto3Optional !== undefined && - (obj.proto3Optional = message.proto3Optional); + message.options !== undefined && (obj.options = message.options ? exports.FieldOptions.toJSON(message.options) : undefined); return obj; }, fromPartial(object) { @@ -1201,19 +1180,21 @@ exports.FieldDescriptorProto = { message.defaultValue = object.defaultValue ?? ""; message.oneofIndex = object.oneofIndex ?? 0; message.jsonName = object.jsonName ?? ""; - message.options = - object.options !== undefined && object.options !== null - ? exports.FieldOptions.fromPartial(object.options) - : undefined; - message.proto3Optional = object.proto3Optional ?? false; + if (object.options !== undefined && object.options !== null) { + message.options = exports.FieldOptions.fromPartial(object.options); + } return message; - }, + } }; function createBaseOneofDescriptorProto() { - return { name: "", options: undefined }; + return { + name: "", + options: undefined + }; } exports.OneofDescriptorProto = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.OneofDescriptorProto", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1223,7 +1204,7 @@ exports.OneofDescriptorProto = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseOneofDescriptorProto(); while (reader.pos < end) { @@ -1243,31 +1224,27 @@ exports.OneofDescriptorProto = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - options: isSet(object.options) - ? exports.OneofOptions.fromJSON(object.options) - : undefined, - }; + const obj = createBaseOneofDescriptorProto(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.OneofOptions.fromJSON(object.options); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); - message.options !== undefined && - (obj.options = message.options - ? exports.OneofOptions.toJSON(message.options) - : undefined); + message.options !== undefined && (obj.options = message.options ? exports.OneofOptions.toJSON(message.options) : undefined); return obj; }, fromPartial(object) { const message = createBaseOneofDescriptorProto(); message.name = object.name ?? ""; - message.options = - object.options !== undefined && object.options !== null - ? exports.OneofOptions.fromPartial(object.options) - : undefined; + if (object.options !== undefined && object.options !== null) { + message.options = exports.OneofOptions.fromPartial(object.options); + } return message; - }, + } }; function createBaseEnumDescriptorProto() { return { @@ -1275,11 +1252,12 @@ function createBaseEnumDescriptorProto() { value: [], options: undefined, reservedRange: [], - reservedName: [], + reservedName: [] }; } exports.EnumDescriptorProto = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.EnumDescriptorProto", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1298,7 +1276,7 @@ exports.EnumDescriptorProto = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEnumDescriptorProto(); while (reader.pos < end) { @@ -1327,43 +1305,37 @@ exports.EnumDescriptorProto = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - value: Array.isArray(object?.value) - ? object.value.map((e) => exports.EnumValueDescriptorProto.fromJSON(e)) - : [], - options: isSet(object.options) - ? exports.EnumOptions.fromJSON(object.options) - : undefined, - reservedRange: Array.isArray(object?.reservedRange) - ? object.reservedRange.map((e) => exports.EnumDescriptorProto_EnumReservedRange.fromJSON(e)) - : [], - reservedName: Array.isArray(object?.reservedName) - ? object.reservedName.map((e) => String(e)) - : [], - }; + const obj = createBaseEnumDescriptorProto(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if (Array.isArray(object?.value)) + obj.value = object.value.map((e) => exports.EnumValueDescriptorProto.fromJSON(e)); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.EnumOptions.fromJSON(object.options); + if (Array.isArray(object?.reservedRange)) + obj.reservedRange = object.reservedRange.map((e) => exports.EnumDescriptorProto_EnumReservedRange.fromJSON(e)); + if (Array.isArray(object?.reservedName)) + obj.reservedName = object.reservedName.map((e) => String(e)); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); if (message.value) { - obj.value = message.value.map((e) => e ? exports.EnumValueDescriptorProto.toJSON(e) : undefined); + obj.value = message.value.map(e => e ? exports.EnumValueDescriptorProto.toJSON(e) : undefined); } else { obj.value = []; } - message.options !== undefined && - (obj.options = message.options - ? exports.EnumOptions.toJSON(message.options) - : undefined); + message.options !== undefined && (obj.options = message.options ? exports.EnumOptions.toJSON(message.options) : undefined); if (message.reservedRange) { - obj.reservedRange = message.reservedRange.map((e) => e ? exports.EnumDescriptorProto_EnumReservedRange.toJSON(e) : undefined); + obj.reservedRange = message.reservedRange.map(e => e ? exports.EnumDescriptorProto_EnumReservedRange.toJSON(e) : undefined); } else { obj.reservedRange = []; } if (message.reservedName) { - obj.reservedName = message.reservedName.map((e) => e); + obj.reservedName = message.reservedName.map(e => e); } else { obj.reservedName = []; @@ -1373,23 +1345,24 @@ exports.EnumDescriptorProto = { fromPartial(object) { const message = createBaseEnumDescriptorProto(); message.name = object.name ?? ""; - message.value = - object.value?.map((e) => exports.EnumValueDescriptorProto.fromPartial(e)) || []; - message.options = - object.options !== undefined && object.options !== null - ? exports.EnumOptions.fromPartial(object.options) - : undefined; - message.reservedRange = - object.reservedRange?.map((e) => exports.EnumDescriptorProto_EnumReservedRange.fromPartial(e)) || []; - message.reservedName = object.reservedName?.map((e) => e) || []; + message.value = object.value?.map(e => exports.EnumValueDescriptorProto.fromPartial(e)) || []; + if (object.options !== undefined && object.options !== null) { + message.options = exports.EnumOptions.fromPartial(object.options); + } + message.reservedRange = object.reservedRange?.map(e => exports.EnumDescriptorProto_EnumReservedRange.fromPartial(e)) || []; + message.reservedName = object.reservedName?.map(e => e) || []; return message; - }, + } }; function createBaseEnumDescriptorProto_EnumReservedRange() { - return { start: 0, end: 0 }; + return { + start: 0, + end: 0 + }; } exports.EnumDescriptorProto_EnumReservedRange = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.EnumReservedRange", + encode(message, writer = _m0.Writer.create()) { if (message.start !== 0) { writer.uint32(8).int32(message.start); } @@ -1399,7 +1372,7 @@ exports.EnumDescriptorProto_EnumReservedRange = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEnumDescriptorProto_EnumReservedRange(); while (reader.pos < end) { @@ -1419,10 +1392,12 @@ exports.EnumDescriptorProto_EnumReservedRange = { return message; }, fromJSON(object) { - return { - start: isSet(object.start) ? Number(object.start) : 0, - end: isSet(object.end) ? Number(object.end) : 0, - }; + const obj = createBaseEnumDescriptorProto_EnumReservedRange(); + if ((0, helpers_1.isSet)(object.start)) + obj.start = Number(object.start); + if ((0, helpers_1.isSet)(object.end)) + obj.end = Number(object.end); + return obj; }, toJSON(message) { const obj = {}; @@ -1435,13 +1410,18 @@ exports.EnumDescriptorProto_EnumReservedRange = { message.start = object.start ?? 0; message.end = object.end ?? 0; return message; - }, + } }; function createBaseEnumValueDescriptorProto() { - return { name: "", number: 0, options: undefined }; + return { + name: "", + number: 0, + options: undefined + }; } exports.EnumValueDescriptorProto = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.EnumValueDescriptorProto", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1454,7 +1434,7 @@ exports.EnumValueDescriptorProto = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEnumValueDescriptorProto(); while (reader.pos < end) { @@ -1477,40 +1457,42 @@ exports.EnumValueDescriptorProto = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - number: isSet(object.number) ? Number(object.number) : 0, - options: isSet(object.options) - ? exports.EnumValueOptions.fromJSON(object.options) - : undefined, - }; + const obj = createBaseEnumValueDescriptorProto(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if ((0, helpers_1.isSet)(object.number)) + obj.number = Number(object.number); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.EnumValueOptions.fromJSON(object.options); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); message.number !== undefined && (obj.number = Math.round(message.number)); - message.options !== undefined && - (obj.options = message.options - ? exports.EnumValueOptions.toJSON(message.options) - : undefined); + message.options !== undefined && (obj.options = message.options ? exports.EnumValueOptions.toJSON(message.options) : undefined); return obj; }, fromPartial(object) { const message = createBaseEnumValueDescriptorProto(); message.name = object.name ?? ""; message.number = object.number ?? 0; - message.options = - object.options !== undefined && object.options !== null - ? exports.EnumValueOptions.fromPartial(object.options) - : undefined; + if (object.options !== undefined && object.options !== null) { + message.options = exports.EnumValueOptions.fromPartial(object.options); + } return message; - }, + } }; function createBaseServiceDescriptorProto() { - return { name: "", method: [], options: undefined }; + return { + name: "", + method: [], + options: undefined + }; } exports.ServiceDescriptorProto = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.ServiceDescriptorProto", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1523,7 +1505,7 @@ exports.ServiceDescriptorProto = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseServiceDescriptorProto(); while (reader.pos < end) { @@ -1546,42 +1528,36 @@ exports.ServiceDescriptorProto = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - method: Array.isArray(object?.method) - ? object.method.map((e) => exports.MethodDescriptorProto.fromJSON(e)) - : [], - options: isSet(object.options) - ? exports.ServiceOptions.fromJSON(object.options) - : undefined, - }; + const obj = createBaseServiceDescriptorProto(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if (Array.isArray(object?.method)) + obj.method = object.method.map((e) => exports.MethodDescriptorProto.fromJSON(e)); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.ServiceOptions.fromJSON(object.options); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); if (message.method) { - obj.method = message.method.map((e) => e ? exports.MethodDescriptorProto.toJSON(e) : undefined); + obj.method = message.method.map(e => e ? exports.MethodDescriptorProto.toJSON(e) : undefined); } else { obj.method = []; } - message.options !== undefined && - (obj.options = message.options - ? exports.ServiceOptions.toJSON(message.options) - : undefined); + message.options !== undefined && (obj.options = message.options ? exports.ServiceOptions.toJSON(message.options) : undefined); return obj; }, fromPartial(object) { const message = createBaseServiceDescriptorProto(); message.name = object.name ?? ""; - message.method = - object.method?.map((e) => exports.MethodDescriptorProto.fromPartial(e)) || []; - message.options = - object.options !== undefined && object.options !== null - ? exports.ServiceOptions.fromPartial(object.options) - : undefined; + message.method = object.method?.map(e => exports.MethodDescriptorProto.fromPartial(e)) || []; + if (object.options !== undefined && object.options !== null) { + message.options = exports.ServiceOptions.fromPartial(object.options); + } return message; - }, + } }; function createBaseMethodDescriptorProto() { return { @@ -1590,11 +1566,12 @@ function createBaseMethodDescriptorProto() { outputType: "", options: undefined, clientStreaming: false, - serverStreaming: false, + serverStreaming: false }; } exports.MethodDescriptorProto = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.MethodDescriptorProto", + encode(message, writer = _m0.Writer.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1616,7 +1593,7 @@ exports.MethodDescriptorProto = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMethodDescriptorProto(); while (reader.pos < end) { @@ -1648,34 +1625,29 @@ exports.MethodDescriptorProto = { return message; }, fromJSON(object) { - return { - name: isSet(object.name) ? String(object.name) : "", - inputType: isSet(object.inputType) ? String(object.inputType) : "", - outputType: isSet(object.outputType) ? String(object.outputType) : "", - options: isSet(object.options) - ? exports.MethodOptions.fromJSON(object.options) - : undefined, - clientStreaming: isSet(object.clientStreaming) - ? Boolean(object.clientStreaming) - : false, - serverStreaming: isSet(object.serverStreaming) - ? Boolean(object.serverStreaming) - : false, - }; + const obj = createBaseMethodDescriptorProto(); + if ((0, helpers_1.isSet)(object.name)) + obj.name = String(object.name); + if ((0, helpers_1.isSet)(object.inputType)) + obj.inputType = String(object.inputType); + if ((0, helpers_1.isSet)(object.outputType)) + obj.outputType = String(object.outputType); + if ((0, helpers_1.isSet)(object.options)) + obj.options = exports.MethodOptions.fromJSON(object.options); + if ((0, helpers_1.isSet)(object.clientStreaming)) + obj.clientStreaming = Boolean(object.clientStreaming); + if ((0, helpers_1.isSet)(object.serverStreaming)) + obj.serverStreaming = Boolean(object.serverStreaming); + return obj; }, toJSON(message) { const obj = {}; message.name !== undefined && (obj.name = message.name); message.inputType !== undefined && (obj.inputType = message.inputType); message.outputType !== undefined && (obj.outputType = message.outputType); - message.options !== undefined && - (obj.options = message.options - ? exports.MethodOptions.toJSON(message.options) - : undefined); - message.clientStreaming !== undefined && - (obj.clientStreaming = message.clientStreaming); - message.serverStreaming !== undefined && - (obj.serverStreaming = message.serverStreaming); + message.options !== undefined && (obj.options = message.options ? exports.MethodOptions.toJSON(message.options) : undefined); + message.clientStreaming !== undefined && (obj.clientStreaming = message.clientStreaming); + message.serverStreaming !== undefined && (obj.serverStreaming = message.serverStreaming); return obj; }, fromPartial(object) { @@ -1683,14 +1655,13 @@ exports.MethodDescriptorProto = { message.name = object.name ?? ""; message.inputType = object.inputType ?? ""; message.outputType = object.outputType ?? ""; - message.options = - object.options !== undefined && object.options !== null - ? exports.MethodOptions.fromPartial(object.options) - : undefined; + if (object.options !== undefined && object.options !== null) { + message.options = exports.MethodOptions.fromPartial(object.options); + } message.clientStreaming = object.clientStreaming ?? false; message.serverStreaming = object.serverStreaming ?? false; return message; - }, + } }; function createBaseFileOptions() { return { @@ -1714,11 +1685,12 @@ function createBaseFileOptions() { phpNamespace: "", phpMetadataNamespace: "", rubyPackage: "", - uninterpretedOption: [], + uninterpretedOption: [] }; } exports.FileOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.FileOptions", + encode(message, writer = _m0.Writer.create()) { if (message.javaPackage !== "") { writer.uint32(10).string(message.javaPackage); } @@ -1785,7 +1757,7 @@ exports.FileOptions = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseFileOptions(); while (reader.pos < end) { @@ -1862,104 +1834,75 @@ exports.FileOptions = { return message; }, fromJSON(object) { - return { - javaPackage: isSet(object.javaPackage) ? String(object.javaPackage) : "", - javaOuterClassname: isSet(object.javaOuterClassname) - ? String(object.javaOuterClassname) - : "", - javaMultipleFiles: isSet(object.javaMultipleFiles) - ? Boolean(object.javaMultipleFiles) - : false, - javaGenerateEqualsAndHash: isSet(object.javaGenerateEqualsAndHash) - ? Boolean(object.javaGenerateEqualsAndHash) - : false, - javaStringCheckUtf8: isSet(object.javaStringCheckUtf8) - ? Boolean(object.javaStringCheckUtf8) - : false, - optimizeFor: isSet(object.optimizeFor) - ? fileOptions_OptimizeModeFromJSON(object.optimizeFor) - : 1, - goPackage: isSet(object.goPackage) ? String(object.goPackage) : "", - ccGenericServices: isSet(object.ccGenericServices) - ? Boolean(object.ccGenericServices) - : false, - javaGenericServices: isSet(object.javaGenericServices) - ? Boolean(object.javaGenericServices) - : false, - pyGenericServices: isSet(object.pyGenericServices) - ? Boolean(object.pyGenericServices) - : false, - phpGenericServices: isSet(object.phpGenericServices) - ? Boolean(object.phpGenericServices) - : false, - deprecated: isSet(object.deprecated) ? Boolean(object.deprecated) : false, - ccEnableArenas: isSet(object.ccEnableArenas) - ? Boolean(object.ccEnableArenas) - : false, - objcClassPrefix: isSet(object.objcClassPrefix) - ? String(object.objcClassPrefix) - : "", - csharpNamespace: isSet(object.csharpNamespace) - ? String(object.csharpNamespace) - : "", - swiftPrefix: isSet(object.swiftPrefix) ? String(object.swiftPrefix) : "", - phpClassPrefix: isSet(object.phpClassPrefix) - ? String(object.phpClassPrefix) - : "", - phpNamespace: isSet(object.phpNamespace) - ? String(object.phpNamespace) - : "", - phpMetadataNamespace: isSet(object.phpMetadataNamespace) - ? String(object.phpMetadataNamespace) - : "", - rubyPackage: isSet(object.rubyPackage) ? String(object.rubyPackage) : "", - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseFileOptions(); + if ((0, helpers_1.isSet)(object.javaPackage)) + obj.javaPackage = String(object.javaPackage); + if ((0, helpers_1.isSet)(object.javaOuterClassname)) + obj.javaOuterClassname = String(object.javaOuterClassname); + if ((0, helpers_1.isSet)(object.javaMultipleFiles)) + obj.javaMultipleFiles = Boolean(object.javaMultipleFiles); + if ((0, helpers_1.isSet)(object.javaGenerateEqualsAndHash)) + obj.javaGenerateEqualsAndHash = Boolean(object.javaGenerateEqualsAndHash); + if ((0, helpers_1.isSet)(object.javaStringCheckUtf8)) + obj.javaStringCheckUtf8 = Boolean(object.javaStringCheckUtf8); + if ((0, helpers_1.isSet)(object.optimizeFor)) + obj.optimizeFor = fileOptions_OptimizeModeFromJSON(object.optimizeFor); + if ((0, helpers_1.isSet)(object.goPackage)) + obj.goPackage = String(object.goPackage); + if ((0, helpers_1.isSet)(object.ccGenericServices)) + obj.ccGenericServices = Boolean(object.ccGenericServices); + if ((0, helpers_1.isSet)(object.javaGenericServices)) + obj.javaGenericServices = Boolean(object.javaGenericServices); + if ((0, helpers_1.isSet)(object.pyGenericServices)) + obj.pyGenericServices = Boolean(object.pyGenericServices); + if ((0, helpers_1.isSet)(object.phpGenericServices)) + obj.phpGenericServices = Boolean(object.phpGenericServices); + if ((0, helpers_1.isSet)(object.deprecated)) + obj.deprecated = Boolean(object.deprecated); + if ((0, helpers_1.isSet)(object.ccEnableArenas)) + obj.ccEnableArenas = Boolean(object.ccEnableArenas); + if ((0, helpers_1.isSet)(object.objcClassPrefix)) + obj.objcClassPrefix = String(object.objcClassPrefix); + if ((0, helpers_1.isSet)(object.csharpNamespace)) + obj.csharpNamespace = String(object.csharpNamespace); + if ((0, helpers_1.isSet)(object.swiftPrefix)) + obj.swiftPrefix = String(object.swiftPrefix); + if ((0, helpers_1.isSet)(object.phpClassPrefix)) + obj.phpClassPrefix = String(object.phpClassPrefix); + if ((0, helpers_1.isSet)(object.phpNamespace)) + obj.phpNamespace = String(object.phpNamespace); + if ((0, helpers_1.isSet)(object.phpMetadataNamespace)) + obj.phpMetadataNamespace = String(object.phpMetadataNamespace); + if ((0, helpers_1.isSet)(object.rubyPackage)) + obj.rubyPackage = String(object.rubyPackage); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; - message.javaPackage !== undefined && - (obj.javaPackage = message.javaPackage); - message.javaOuterClassname !== undefined && - (obj.javaOuterClassname = message.javaOuterClassname); - message.javaMultipleFiles !== undefined && - (obj.javaMultipleFiles = message.javaMultipleFiles); - message.javaGenerateEqualsAndHash !== undefined && - (obj.javaGenerateEqualsAndHash = message.javaGenerateEqualsAndHash); - message.javaStringCheckUtf8 !== undefined && - (obj.javaStringCheckUtf8 = message.javaStringCheckUtf8); - message.optimizeFor !== undefined && - (obj.optimizeFor = fileOptions_OptimizeModeToJSON(message.optimizeFor)); + message.javaPackage !== undefined && (obj.javaPackage = message.javaPackage); + message.javaOuterClassname !== undefined && (obj.javaOuterClassname = message.javaOuterClassname); + message.javaMultipleFiles !== undefined && (obj.javaMultipleFiles = message.javaMultipleFiles); + message.javaGenerateEqualsAndHash !== undefined && (obj.javaGenerateEqualsAndHash = message.javaGenerateEqualsAndHash); + message.javaStringCheckUtf8 !== undefined && (obj.javaStringCheckUtf8 = message.javaStringCheckUtf8); + message.optimizeFor !== undefined && (obj.optimizeFor = fileOptions_OptimizeModeToJSON(message.optimizeFor)); message.goPackage !== undefined && (obj.goPackage = message.goPackage); - message.ccGenericServices !== undefined && - (obj.ccGenericServices = message.ccGenericServices); - message.javaGenericServices !== undefined && - (obj.javaGenericServices = message.javaGenericServices); - message.pyGenericServices !== undefined && - (obj.pyGenericServices = message.pyGenericServices); - message.phpGenericServices !== undefined && - (obj.phpGenericServices = message.phpGenericServices); + message.ccGenericServices !== undefined && (obj.ccGenericServices = message.ccGenericServices); + message.javaGenericServices !== undefined && (obj.javaGenericServices = message.javaGenericServices); + message.pyGenericServices !== undefined && (obj.pyGenericServices = message.pyGenericServices); + message.phpGenericServices !== undefined && (obj.phpGenericServices = message.phpGenericServices); message.deprecated !== undefined && (obj.deprecated = message.deprecated); - message.ccEnableArenas !== undefined && - (obj.ccEnableArenas = message.ccEnableArenas); - message.objcClassPrefix !== undefined && - (obj.objcClassPrefix = message.objcClassPrefix); - message.csharpNamespace !== undefined && - (obj.csharpNamespace = message.csharpNamespace); - message.swiftPrefix !== undefined && - (obj.swiftPrefix = message.swiftPrefix); - message.phpClassPrefix !== undefined && - (obj.phpClassPrefix = message.phpClassPrefix); - message.phpNamespace !== undefined && - (obj.phpNamespace = message.phpNamespace); - message.phpMetadataNamespace !== undefined && - (obj.phpMetadataNamespace = message.phpMetadataNamespace); - message.rubyPackage !== undefined && - (obj.rubyPackage = message.rubyPackage); + message.ccEnableArenas !== undefined && (obj.ccEnableArenas = message.ccEnableArenas); + message.objcClassPrefix !== undefined && (obj.objcClassPrefix = message.objcClassPrefix); + message.csharpNamespace !== undefined && (obj.csharpNamespace = message.csharpNamespace); + message.swiftPrefix !== undefined && (obj.swiftPrefix = message.swiftPrefix); + message.phpClassPrefix !== undefined && (obj.phpClassPrefix = message.phpClassPrefix); + message.phpNamespace !== undefined && (obj.phpNamespace = message.phpNamespace); + message.phpMetadataNamespace !== undefined && (obj.phpMetadataNamespace = message.phpMetadataNamespace); + message.rubyPackage !== undefined && (obj.rubyPackage = message.rubyPackage); if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -1971,8 +1914,7 @@ exports.FileOptions = { message.javaPackage = object.javaPackage ?? ""; message.javaOuterClassname = object.javaOuterClassname ?? ""; message.javaMultipleFiles = object.javaMultipleFiles ?? false; - message.javaGenerateEqualsAndHash = - object.javaGenerateEqualsAndHash ?? false; + message.javaGenerateEqualsAndHash = object.javaGenerateEqualsAndHash ?? false; message.javaStringCheckUtf8 = object.javaStringCheckUtf8 ?? false; message.optimizeFor = object.optimizeFor ?? 1; message.goPackage = object.goPackage ?? ""; @@ -1989,10 +1931,9 @@ exports.FileOptions = { message.phpNamespace = object.phpNamespace ?? ""; message.phpMetadataNamespace = object.phpMetadataNamespace ?? ""; message.rubyPackage = object.rubyPackage ?? ""; - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseMessageOptions() { return { @@ -2000,11 +1941,12 @@ function createBaseMessageOptions() { noStandardDescriptorAccessor: false, deprecated: false, mapEntry: false, - uninterpretedOption: [], + uninterpretedOption: [] }; } exports.MessageOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.MessageOptions", + encode(message, writer = _m0.Writer.create()) { if (message.messageSetWireFormat === true) { writer.uint32(8).bool(message.messageSetWireFormat); } @@ -2023,7 +1965,7 @@ exports.MessageOptions = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMessageOptions(); while (reader.pos < end) { @@ -2052,30 +1994,27 @@ exports.MessageOptions = { return message; }, fromJSON(object) { - return { - messageSetWireFormat: isSet(object.messageSetWireFormat) - ? Boolean(object.messageSetWireFormat) - : false, - noStandardDescriptorAccessor: isSet(object.noStandardDescriptorAccessor) - ? Boolean(object.noStandardDescriptorAccessor) - : false, - deprecated: isSet(object.deprecated) ? Boolean(object.deprecated) : false, - mapEntry: isSet(object.mapEntry) ? Boolean(object.mapEntry) : false, - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseMessageOptions(); + if ((0, helpers_1.isSet)(object.messageSetWireFormat)) + obj.messageSetWireFormat = Boolean(object.messageSetWireFormat); + if ((0, helpers_1.isSet)(object.noStandardDescriptorAccessor)) + obj.noStandardDescriptorAccessor = Boolean(object.noStandardDescriptorAccessor); + if ((0, helpers_1.isSet)(object.deprecated)) + obj.deprecated = Boolean(object.deprecated); + if ((0, helpers_1.isSet)(object.mapEntry)) + obj.mapEntry = Boolean(object.mapEntry); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; - message.messageSetWireFormat !== undefined && - (obj.messageSetWireFormat = message.messageSetWireFormat); - message.noStandardDescriptorAccessor !== undefined && - (obj.noStandardDescriptorAccessor = message.noStandardDescriptorAccessor); + message.messageSetWireFormat !== undefined && (obj.messageSetWireFormat = message.messageSetWireFormat); + message.noStandardDescriptorAccessor !== undefined && (obj.noStandardDescriptorAccessor = message.noStandardDescriptorAccessor); message.deprecated !== undefined && (obj.deprecated = message.deprecated); message.mapEntry !== undefined && (obj.mapEntry = message.mapEntry); if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -2085,44 +2024,39 @@ exports.MessageOptions = { fromPartial(object) { const message = createBaseMessageOptions(); message.messageSetWireFormat = object.messageSetWireFormat ?? false; - message.noStandardDescriptorAccessor = - object.noStandardDescriptorAccessor ?? false; + message.noStandardDescriptorAccessor = object.noStandardDescriptorAccessor ?? false; message.deprecated = object.deprecated ?? false; message.mapEntry = object.mapEntry ?? false; - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseFieldOptions() { return { - ctype: 0, + ctype: 1, packed: false, - jstype: 0, + jstype: 1, lazy: false, - unverifiedLazy: false, deprecated: false, weak: false, - uninterpretedOption: [], + uninterpretedOption: [] }; } exports.FieldOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { - if (message.ctype !== 0) { + typeUrl: "/google.protobuf.FieldOptions", + encode(message, writer = _m0.Writer.create()) { + if (message.ctype !== 1) { writer.uint32(8).int32(message.ctype); } if (message.packed === true) { writer.uint32(16).bool(message.packed); } - if (message.jstype !== 0) { + if (message.jstype !== 1) { writer.uint32(48).int32(message.jstype); } if (message.lazy === true) { writer.uint32(40).bool(message.lazy); } - if (message.unverifiedLazy === true) { - writer.uint32(120).bool(message.unverifiedLazy); - } if (message.deprecated === true) { writer.uint32(24).bool(message.deprecated); } @@ -2135,7 +2069,7 @@ exports.FieldOptions = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseFieldOptions(); while (reader.pos < end) { @@ -2153,9 +2087,6 @@ exports.FieldOptions = { case 5: message.lazy = reader.bool(); break; - case 15: - message.unverifiedLazy = reader.bool(); - break; case 3: message.deprecated = reader.bool(); break; @@ -2173,37 +2104,33 @@ exports.FieldOptions = { return message; }, fromJSON(object) { - return { - ctype: isSet(object.ctype) ? fieldOptions_CTypeFromJSON(object.ctype) : 0, - packed: isSet(object.packed) ? Boolean(object.packed) : false, - jstype: isSet(object.jstype) - ? fieldOptions_JSTypeFromJSON(object.jstype) - : 0, - lazy: isSet(object.lazy) ? Boolean(object.lazy) : false, - unverifiedLazy: isSet(object.unverifiedLazy) - ? Boolean(object.unverifiedLazy) - : false, - deprecated: isSet(object.deprecated) ? Boolean(object.deprecated) : false, - weak: isSet(object.weak) ? Boolean(object.weak) : false, - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseFieldOptions(); + if ((0, helpers_1.isSet)(object.ctype)) + obj.ctype = fieldOptions_CTypeFromJSON(object.ctype); + if ((0, helpers_1.isSet)(object.packed)) + obj.packed = Boolean(object.packed); + if ((0, helpers_1.isSet)(object.jstype)) + obj.jstype = fieldOptions_JSTypeFromJSON(object.jstype); + if ((0, helpers_1.isSet)(object.lazy)) + obj.lazy = Boolean(object.lazy); + if ((0, helpers_1.isSet)(object.deprecated)) + obj.deprecated = Boolean(object.deprecated); + if ((0, helpers_1.isSet)(object.weak)) + obj.weak = Boolean(object.weak); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; - message.ctype !== undefined && - (obj.ctype = fieldOptions_CTypeToJSON(message.ctype)); + message.ctype !== undefined && (obj.ctype = fieldOptions_CTypeToJSON(message.ctype)); message.packed !== undefined && (obj.packed = message.packed); - message.jstype !== undefined && - (obj.jstype = fieldOptions_JSTypeToJSON(message.jstype)); + message.jstype !== undefined && (obj.jstype = fieldOptions_JSTypeToJSON(message.jstype)); message.lazy !== undefined && (obj.lazy = message.lazy); - message.unverifiedLazy !== undefined && - (obj.unverifiedLazy = message.unverifiedLazy); message.deprecated !== undefined && (obj.deprecated = message.deprecated); message.weak !== undefined && (obj.weak = message.weak); if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -2212,30 +2139,31 @@ exports.FieldOptions = { }, fromPartial(object) { const message = createBaseFieldOptions(); - message.ctype = object.ctype ?? 0; + message.ctype = object.ctype ?? 1; message.packed = object.packed ?? false; - message.jstype = object.jstype ?? 0; + message.jstype = object.jstype ?? 1; message.lazy = object.lazy ?? false; - message.unverifiedLazy = object.unverifiedLazy ?? false; message.deprecated = object.deprecated ?? false; message.weak = object.weak ?? false; - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseOneofOptions() { - return { uninterpretedOption: [] }; + return { + uninterpretedOption: [] + }; } exports.OneofOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.OneofOptions", + encode(message, writer = _m0.Writer.create()) { for (const v of message.uninterpretedOption) { exports.UninterpretedOption.encode(v, writer.uint32(7994).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseOneofOptions(); while (reader.pos < end) { @@ -2252,16 +2180,15 @@ exports.OneofOptions = { return message; }, fromJSON(object) { - return { - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseOneofOptions(); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -2270,16 +2197,20 @@ exports.OneofOptions = { }, fromPartial(object) { const message = createBaseOneofOptions(); - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseEnumOptions() { - return { allowAlias: false, deprecated: false, uninterpretedOption: [] }; + return { + allowAlias: false, + deprecated: false, + uninterpretedOption: [] + }; } exports.EnumOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.EnumOptions", + encode(message, writer = _m0.Writer.create()) { if (message.allowAlias === true) { writer.uint32(16).bool(message.allowAlias); } @@ -2292,7 +2223,7 @@ exports.EnumOptions = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEnumOptions(); while (reader.pos < end) { @@ -2315,20 +2246,21 @@ exports.EnumOptions = { return message; }, fromJSON(object) { - return { - allowAlias: isSet(object.allowAlias) ? Boolean(object.allowAlias) : false, - deprecated: isSet(object.deprecated) ? Boolean(object.deprecated) : false, - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseEnumOptions(); + if ((0, helpers_1.isSet)(object.allowAlias)) + obj.allowAlias = Boolean(object.allowAlias); + if ((0, helpers_1.isSet)(object.deprecated)) + obj.deprecated = Boolean(object.deprecated); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; message.allowAlias !== undefined && (obj.allowAlias = message.allowAlias); message.deprecated !== undefined && (obj.deprecated = message.deprecated); if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -2339,16 +2271,19 @@ exports.EnumOptions = { const message = createBaseEnumOptions(); message.allowAlias = object.allowAlias ?? false; message.deprecated = object.deprecated ?? false; - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseEnumValueOptions() { - return { deprecated: false, uninterpretedOption: [] }; + return { + deprecated: false, + uninterpretedOption: [] + }; } exports.EnumValueOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.EnumValueOptions", + encode(message, writer = _m0.Writer.create()) { if (message.deprecated === true) { writer.uint32(8).bool(message.deprecated); } @@ -2358,7 +2293,7 @@ exports.EnumValueOptions = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEnumValueOptions(); while (reader.pos < end) { @@ -2378,18 +2313,18 @@ exports.EnumValueOptions = { return message; }, fromJSON(object) { - return { - deprecated: isSet(object.deprecated) ? Boolean(object.deprecated) : false, - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseEnumValueOptions(); + if ((0, helpers_1.isSet)(object.deprecated)) + obj.deprecated = Boolean(object.deprecated); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; message.deprecated !== undefined && (obj.deprecated = message.deprecated); if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -2399,16 +2334,19 @@ exports.EnumValueOptions = { fromPartial(object) { const message = createBaseEnumValueOptions(); message.deprecated = object.deprecated ?? false; - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseServiceOptions() { - return { deprecated: false, uninterpretedOption: [] }; + return { + deprecated: false, + uninterpretedOption: [] + }; } exports.ServiceOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.ServiceOptions", + encode(message, writer = _m0.Writer.create()) { if (message.deprecated === true) { writer.uint32(264).bool(message.deprecated); } @@ -2418,7 +2356,7 @@ exports.ServiceOptions = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseServiceOptions(); while (reader.pos < end) { @@ -2438,18 +2376,18 @@ exports.ServiceOptions = { return message; }, fromJSON(object) { - return { - deprecated: isSet(object.deprecated) ? Boolean(object.deprecated) : false, - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseServiceOptions(); + if ((0, helpers_1.isSet)(object.deprecated)) + obj.deprecated = Boolean(object.deprecated); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; message.deprecated !== undefined && (obj.deprecated = message.deprecated); if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -2459,20 +2397,24 @@ exports.ServiceOptions = { fromPartial(object) { const message = createBaseServiceOptions(); message.deprecated = object.deprecated ?? false; - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseMethodOptions() { - return { deprecated: false, idempotencyLevel: 0, uninterpretedOption: [] }; + return { + deprecated: false, + idempotencyLevel: 1, + uninterpretedOption: [] + }; } exports.MethodOptions = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.MethodOptions", + encode(message, writer = _m0.Writer.create()) { if (message.deprecated === true) { writer.uint32(264).bool(message.deprecated); } - if (message.idempotencyLevel !== 0) { + if (message.idempotencyLevel !== 1) { writer.uint32(272).int32(message.idempotencyLevel); } for (const v of message.uninterpretedOption) { @@ -2481,7 +2423,7 @@ exports.MethodOptions = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMethodOptions(); while (reader.pos < end) { @@ -2504,23 +2446,21 @@ exports.MethodOptions = { return message; }, fromJSON(object) { - return { - deprecated: isSet(object.deprecated) ? Boolean(object.deprecated) : false, - idempotencyLevel: isSet(object.idempotencyLevel) - ? methodOptions_IdempotencyLevelFromJSON(object.idempotencyLevel) - : 0, - uninterpretedOption: Array.isArray(object?.uninterpretedOption) - ? object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)) - : [], - }; + const obj = createBaseMethodOptions(); + if ((0, helpers_1.isSet)(object.deprecated)) + obj.deprecated = Boolean(object.deprecated); + if ((0, helpers_1.isSet)(object.idempotencyLevel)) + obj.idempotencyLevel = methodOptions_IdempotencyLevelFromJSON(object.idempotencyLevel); + if (Array.isArray(object?.uninterpretedOption)) + obj.uninterpretedOption = object.uninterpretedOption.map((e) => exports.UninterpretedOption.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; message.deprecated !== undefined && (obj.deprecated = message.deprecated); - message.idempotencyLevel !== undefined && - (obj.idempotencyLevel = methodOptions_IdempotencyLevelToJSON(message.idempotencyLevel)); + message.idempotencyLevel !== undefined && (obj.idempotencyLevel = methodOptions_IdempotencyLevelToJSON(message.idempotencyLevel)); if (message.uninterpretedOption) { - obj.uninterpretedOption = message.uninterpretedOption.map((e) => e ? exports.UninterpretedOption.toJSON(e) : undefined); + obj.uninterpretedOption = message.uninterpretedOption.map(e => e ? exports.UninterpretedOption.toJSON(e) : undefined); } else { obj.uninterpretedOption = []; @@ -2530,25 +2470,25 @@ exports.MethodOptions = { fromPartial(object) { const message = createBaseMethodOptions(); message.deprecated = object.deprecated ?? false; - message.idempotencyLevel = object.idempotencyLevel ?? 0; - message.uninterpretedOption = - object.uninterpretedOption?.map((e) => exports.UninterpretedOption.fromPartial(e)) || []; + message.idempotencyLevel = object.idempotencyLevel ?? 1; + message.uninterpretedOption = object.uninterpretedOption?.map(e => exports.UninterpretedOption.fromPartial(e)) || []; return message; - }, + } }; function createBaseUninterpretedOption() { return { name: [], identifierValue: "", - positiveIntValue: long_1.default.UZERO, - negativeIntValue: long_1.default.ZERO, + positiveIntValue: helpers_1.Long.UZERO, + negativeIntValue: helpers_1.Long.ZERO, doubleValue: 0, stringValue: new Uint8Array(), - aggregateValue: "", + aggregateValue: "" }; } exports.UninterpretedOption = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.UninterpretedOption", + encode(message, writer = _m0.Writer.create()) { for (const v of message.name) { exports.UninterpretedOption_NamePart.encode(v, writer.uint32(18).fork()).ldelim(); } @@ -2573,7 +2513,7 @@ exports.UninterpretedOption = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUninterpretedOption(); while (reader.pos < end) { @@ -2608,77 +2548,64 @@ exports.UninterpretedOption = { return message; }, fromJSON(object) { - return { - name: Array.isArray(object?.name) - ? object.name.map((e) => exports.UninterpretedOption_NamePart.fromJSON(e)) - : [], - identifierValue: isSet(object.identifierValue) - ? String(object.identifierValue) - : "", - positiveIntValue: isSet(object.positiveIntValue) - ? long_1.default.fromValue(object.positiveIntValue) - : long_1.default.UZERO, - negativeIntValue: isSet(object.negativeIntValue) - ? long_1.default.fromValue(object.negativeIntValue) - : long_1.default.ZERO, - doubleValue: isSet(object.doubleValue) ? Number(object.doubleValue) : 0, - stringValue: isSet(object.stringValue) - ? bytesFromBase64(object.stringValue) - : new Uint8Array(), - aggregateValue: isSet(object.aggregateValue) - ? String(object.aggregateValue) - : "", - }; + const obj = createBaseUninterpretedOption(); + if (Array.isArray(object?.name)) + obj.name = object.name.map((e) => exports.UninterpretedOption_NamePart.fromJSON(e)); + if ((0, helpers_1.isSet)(object.identifierValue)) + obj.identifierValue = String(object.identifierValue); + if ((0, helpers_1.isSet)(object.positiveIntValue)) + obj.positiveIntValue = helpers_1.Long.fromValue(object.positiveIntValue); + if ((0, helpers_1.isSet)(object.negativeIntValue)) + obj.negativeIntValue = helpers_1.Long.fromValue(object.negativeIntValue); + if ((0, helpers_1.isSet)(object.doubleValue)) + obj.doubleValue = Number(object.doubleValue); + if ((0, helpers_1.isSet)(object.stringValue)) + obj.stringValue = (0, helpers_1.bytesFromBase64)(object.stringValue); + if ((0, helpers_1.isSet)(object.aggregateValue)) + obj.aggregateValue = String(object.aggregateValue); + return obj; }, toJSON(message) { const obj = {}; if (message.name) { - obj.name = message.name.map((e) => e ? exports.UninterpretedOption_NamePart.toJSON(e) : undefined); + obj.name = message.name.map(e => e ? exports.UninterpretedOption_NamePart.toJSON(e) : undefined); } else { obj.name = []; } - message.identifierValue !== undefined && - (obj.identifierValue = message.identifierValue); - message.positiveIntValue !== undefined && - (obj.positiveIntValue = (message.positiveIntValue || long_1.default.UZERO).toString()); - message.negativeIntValue !== undefined && - (obj.negativeIntValue = (message.negativeIntValue || long_1.default.ZERO).toString()); - message.doubleValue !== undefined && - (obj.doubleValue = message.doubleValue); - message.stringValue !== undefined && - (obj.stringValue = base64FromBytes(message.stringValue !== undefined - ? message.stringValue - : new Uint8Array())); - message.aggregateValue !== undefined && - (obj.aggregateValue = message.aggregateValue); + message.identifierValue !== undefined && (obj.identifierValue = message.identifierValue); + message.positiveIntValue !== undefined && (obj.positiveIntValue = (message.positiveIntValue || helpers_1.Long.UZERO).toString()); + message.negativeIntValue !== undefined && (obj.negativeIntValue = (message.negativeIntValue || helpers_1.Long.ZERO).toString()); + message.doubleValue !== undefined && (obj.doubleValue = message.doubleValue); + message.stringValue !== undefined && (obj.stringValue = (0, helpers_1.base64FromBytes)(message.stringValue !== undefined ? message.stringValue : new Uint8Array())); + message.aggregateValue !== undefined && (obj.aggregateValue = message.aggregateValue); return obj; }, fromPartial(object) { const message = createBaseUninterpretedOption(); - message.name = - object.name?.map((e) => exports.UninterpretedOption_NamePart.fromPartial(e)) || - []; + message.name = object.name?.map(e => exports.UninterpretedOption_NamePart.fromPartial(e)) || []; message.identifierValue = object.identifierValue ?? ""; - message.positiveIntValue = - object.positiveIntValue !== undefined && object.positiveIntValue !== null - ? long_1.default.fromValue(object.positiveIntValue) - : long_1.default.UZERO; - message.negativeIntValue = - object.negativeIntValue !== undefined && object.negativeIntValue !== null - ? long_1.default.fromValue(object.negativeIntValue) - : long_1.default.ZERO; + if (object.positiveIntValue !== undefined && object.positiveIntValue !== null) { + message.positiveIntValue = helpers_1.Long.fromValue(object.positiveIntValue); + } + if (object.negativeIntValue !== undefined && object.negativeIntValue !== null) { + message.negativeIntValue = helpers_1.Long.fromValue(object.negativeIntValue); + } message.doubleValue = object.doubleValue ?? 0; message.stringValue = object.stringValue ?? new Uint8Array(); message.aggregateValue = object.aggregateValue ?? ""; return message; - }, + } }; function createBaseUninterpretedOption_NamePart() { - return { namePart: "", isExtension: false }; + return { + namePart: "", + isExtension: false + }; } exports.UninterpretedOption_NamePart = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.NamePart", + encode(message, writer = _m0.Writer.create()) { if (message.namePart !== "") { writer.uint32(10).string(message.namePart); } @@ -2688,7 +2615,7 @@ exports.UninterpretedOption_NamePart = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUninterpretedOption_NamePart(); while (reader.pos < end) { @@ -2708,18 +2635,17 @@ exports.UninterpretedOption_NamePart = { return message; }, fromJSON(object) { - return { - namePart: isSet(object.namePart) ? String(object.namePart) : "", - isExtension: isSet(object.isExtension) - ? Boolean(object.isExtension) - : false, - }; + const obj = createBaseUninterpretedOption_NamePart(); + if ((0, helpers_1.isSet)(object.namePart)) + obj.namePart = String(object.namePart); + if ((0, helpers_1.isSet)(object.isExtension)) + obj.isExtension = Boolean(object.isExtension); + return obj; }, toJSON(message) { const obj = {}; message.namePart !== undefined && (obj.namePart = message.namePart); - message.isExtension !== undefined && - (obj.isExtension = message.isExtension); + message.isExtension !== undefined && (obj.isExtension = message.isExtension); return obj; }, fromPartial(object) { @@ -2727,20 +2653,23 @@ exports.UninterpretedOption_NamePart = { message.namePart = object.namePart ?? ""; message.isExtension = object.isExtension ?? false; return message; - }, + } }; function createBaseSourceCodeInfo() { - return { location: [] }; + return { + location: [] + }; } exports.SourceCodeInfo = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.SourceCodeInfo", + encode(message, writer = _m0.Writer.create()) { for (const v of message.location) { exports.SourceCodeInfo_Location.encode(v, writer.uint32(10).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseSourceCodeInfo(); while (reader.pos < end) { @@ -2757,16 +2686,15 @@ exports.SourceCodeInfo = { return message; }, fromJSON(object) { - return { - location: Array.isArray(object?.location) - ? object.location.map((e) => exports.SourceCodeInfo_Location.fromJSON(e)) - : [], - }; + const obj = createBaseSourceCodeInfo(); + if (Array.isArray(object?.location)) + obj.location = object.location.map((e) => exports.SourceCodeInfo_Location.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; if (message.location) { - obj.location = message.location.map((e) => e ? exports.SourceCodeInfo_Location.toJSON(e) : undefined); + obj.location = message.location.map(e => e ? exports.SourceCodeInfo_Location.toJSON(e) : undefined); } else { obj.location = []; @@ -2775,10 +2703,9 @@ exports.SourceCodeInfo = { }, fromPartial(object) { const message = createBaseSourceCodeInfo(); - message.location = - object.location?.map((e) => exports.SourceCodeInfo_Location.fromPartial(e)) || []; + message.location = object.location?.map(e => exports.SourceCodeInfo_Location.fromPartial(e)) || []; return message; - }, + } }; function createBaseSourceCodeInfo_Location() { return { @@ -2786,11 +2713,12 @@ function createBaseSourceCodeInfo_Location() { span: [], leadingComments: "", trailingComments: "", - leadingDetachedComments: [], + leadingDetachedComments: [] }; } exports.SourceCodeInfo_Location = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.Location", + encode(message, writer = _m0.Writer.create()) { writer.uint32(10).fork(); for (const v of message.path) { writer.int32(v); @@ -2813,7 +2741,7 @@ exports.SourceCodeInfo_Location = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseSourceCodeInfo_Location(); while (reader.pos < end) { @@ -2858,44 +2786,37 @@ exports.SourceCodeInfo_Location = { return message; }, fromJSON(object) { - return { - path: Array.isArray(object?.path) - ? object.path.map((e) => Number(e)) - : [], - span: Array.isArray(object?.span) - ? object.span.map((e) => Number(e)) - : [], - leadingComments: isSet(object.leadingComments) - ? String(object.leadingComments) - : "", - trailingComments: isSet(object.trailingComments) - ? String(object.trailingComments) - : "", - leadingDetachedComments: Array.isArray(object?.leadingDetachedComments) - ? object.leadingDetachedComments.map((e) => String(e)) - : [], - }; + const obj = createBaseSourceCodeInfo_Location(); + if (Array.isArray(object?.path)) + obj.path = object.path.map((e) => Number(e)); + if (Array.isArray(object?.span)) + obj.span = object.span.map((e) => Number(e)); + if ((0, helpers_1.isSet)(object.leadingComments)) + obj.leadingComments = String(object.leadingComments); + if ((0, helpers_1.isSet)(object.trailingComments)) + obj.trailingComments = String(object.trailingComments); + if (Array.isArray(object?.leadingDetachedComments)) + obj.leadingDetachedComments = object.leadingDetachedComments.map((e) => String(e)); + return obj; }, toJSON(message) { const obj = {}; if (message.path) { - obj.path = message.path.map((e) => Math.round(e)); + obj.path = message.path.map(e => Math.round(e)); } else { obj.path = []; } if (message.span) { - obj.span = message.span.map((e) => Math.round(e)); + obj.span = message.span.map(e => Math.round(e)); } else { obj.span = []; } - message.leadingComments !== undefined && - (obj.leadingComments = message.leadingComments); - message.trailingComments !== undefined && - (obj.trailingComments = message.trailingComments); + message.leadingComments !== undefined && (obj.leadingComments = message.leadingComments); + message.trailingComments !== undefined && (obj.trailingComments = message.trailingComments); if (message.leadingDetachedComments) { - obj.leadingDetachedComments = message.leadingDetachedComments.map((e) => e); + obj.leadingDetachedComments = message.leadingDetachedComments.map(e => e); } else { obj.leadingDetachedComments = []; @@ -2904,27 +2825,29 @@ exports.SourceCodeInfo_Location = { }, fromPartial(object) { const message = createBaseSourceCodeInfo_Location(); - message.path = object.path?.map((e) => e) || []; - message.span = object.span?.map((e) => e) || []; + message.path = object.path?.map(e => e) || []; + message.span = object.span?.map(e => e) || []; message.leadingComments = object.leadingComments ?? ""; message.trailingComments = object.trailingComments ?? ""; - message.leadingDetachedComments = - object.leadingDetachedComments?.map((e) => e) || []; + message.leadingDetachedComments = object.leadingDetachedComments?.map(e => e) || []; return message; - }, + } }; function createBaseGeneratedCodeInfo() { - return { annotation: [] }; + return { + annotation: [] + }; } exports.GeneratedCodeInfo = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.GeneratedCodeInfo", + encode(message, writer = _m0.Writer.create()) { for (const v of message.annotation) { exports.GeneratedCodeInfo_Annotation.encode(v, writer.uint32(10).fork()).ldelim(); } return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGeneratedCodeInfo(); while (reader.pos < end) { @@ -2941,16 +2864,15 @@ exports.GeneratedCodeInfo = { return message; }, fromJSON(object) { - return { - annotation: Array.isArray(object?.annotation) - ? object.annotation.map((e) => exports.GeneratedCodeInfo_Annotation.fromJSON(e)) - : [], - }; + const obj = createBaseGeneratedCodeInfo(); + if (Array.isArray(object?.annotation)) + obj.annotation = object.annotation.map((e) => exports.GeneratedCodeInfo_Annotation.fromJSON(e)); + return obj; }, toJSON(message) { const obj = {}; if (message.annotation) { - obj.annotation = message.annotation.map((e) => e ? exports.GeneratedCodeInfo_Annotation.toJSON(e) : undefined); + obj.annotation = message.annotation.map(e => e ? exports.GeneratedCodeInfo_Annotation.toJSON(e) : undefined); } else { obj.annotation = []; @@ -2959,16 +2881,21 @@ exports.GeneratedCodeInfo = { }, fromPartial(object) { const message = createBaseGeneratedCodeInfo(); - message.annotation = - object.annotation?.map((e) => exports.GeneratedCodeInfo_Annotation.fromPartial(e)) || []; + message.annotation = object.annotation?.map(e => exports.GeneratedCodeInfo_Annotation.fromPartial(e)) || []; return message; - }, + } }; function createBaseGeneratedCodeInfo_Annotation() { - return { path: [], sourceFile: "", begin: 0, end: 0 }; + return { + path: [], + sourceFile: "", + begin: 0, + end: 0 + }; } exports.GeneratedCodeInfo_Annotation = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.Annotation", + encode(message, writer = _m0.Writer.create()) { writer.uint32(10).fork(); for (const v of message.path) { writer.int32(v); @@ -2986,7 +2913,7 @@ exports.GeneratedCodeInfo_Annotation = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGeneratedCodeInfo_Annotation(); while (reader.pos < end) { @@ -3020,19 +2947,21 @@ exports.GeneratedCodeInfo_Annotation = { return message; }, fromJSON(object) { - return { - path: Array.isArray(object?.path) - ? object.path.map((e) => Number(e)) - : [], - sourceFile: isSet(object.sourceFile) ? String(object.sourceFile) : "", - begin: isSet(object.begin) ? Number(object.begin) : 0, - end: isSet(object.end) ? Number(object.end) : 0, - }; + const obj = createBaseGeneratedCodeInfo_Annotation(); + if (Array.isArray(object?.path)) + obj.path = object.path.map((e) => Number(e)); + if ((0, helpers_1.isSet)(object.sourceFile)) + obj.sourceFile = String(object.sourceFile); + if ((0, helpers_1.isSet)(object.begin)) + obj.begin = Number(object.begin); + if ((0, helpers_1.isSet)(object.end)) + obj.end = Number(object.end); + return obj; }, toJSON(message) { const obj = {}; if (message.path) { - obj.path = message.path.map((e) => Math.round(e)); + obj.path = message.path.map(e => Math.round(e)); } else { obj.path = []; @@ -3044,54 +2973,11 @@ exports.GeneratedCodeInfo_Annotation = { }, fromPartial(object) { const message = createBaseGeneratedCodeInfo_Annotation(); - message.path = object.path?.map((e) => e) || []; + message.path = object.path?.map(e => e) || []; message.sourceFile = object.sourceFile ?? ""; message.begin = object.begin ?? 0; message.end = object.end ?? 0; return message; - }, -}; -var globalThis = (() => { - if (typeof globalThis !== "undefined") - return globalThis; - if (typeof self !== "undefined") - return self; - if (typeof window !== "undefined") - return window; - if (typeof global !== "undefined") - return global; - throw "Unable to locate global object"; -})(); -function bytesFromBase64(b64) { - if (globalThis.Buffer) { - return Uint8Array.from(globalThis.Buffer.from(b64, "base64")); } - else { - const bin = globalThis.atob(b64); - const arr = new Uint8Array(bin.length); - for (let i = 0; i < bin.length; ++i) { - arr[i] = bin.charCodeAt(i); - } - return arr; - } -} -function base64FromBytes(arr) { - if (globalThis.Buffer) { - return globalThis.Buffer.from(arr).toString("base64"); - } - else { - const bin = []; - arr.forEach((byte) => { - bin.push(String.fromCharCode(byte)); - }); - return globalThis.btoa(bin.join("")); - } -} -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9nb29nbGUvcHJvdG9idWYvZGVzY3JpcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsZ0RBQXdCO0FBQ3hCLGlFQUFxQztBQUV4QixRQUFBLGVBQWUsR0FBRyxpQkFBaUIsQ0FBQztBQTZKakQsSUFBWSx5QkEwQ1g7QUExQ0QsV0FBWSx5QkFBeUI7SUFDbkM7OztPQUdHO0lBQ0gsdUZBQWUsQ0FBQTtJQUNmLHFGQUFjLENBQUE7SUFDZDs7O09BR0c7SUFDSCxxRkFBYyxDQUFBO0lBQ2QsdUZBQWUsQ0FBQTtJQUNmOzs7T0FHRztJQUNILHFGQUFjLENBQUE7SUFDZCx5RkFBZ0IsQ0FBQTtJQUNoQix5RkFBZ0IsQ0FBQTtJQUNoQixtRkFBYSxDQUFBO0lBQ2IsdUZBQWUsQ0FBQTtJQUNmOzs7OztPQUtHO0lBQ0gsc0ZBQWUsQ0FBQTtJQUNmLGlEQUFpRDtJQUNqRCwwRkFBaUIsQ0FBQTtJQUNqQixxQ0FBcUM7SUFDckMsc0ZBQWUsQ0FBQTtJQUNmLHdGQUFnQixDQUFBO0lBQ2hCLG9GQUFjLENBQUE7SUFDZCw0RkFBa0IsQ0FBQTtJQUNsQiw0RkFBa0IsQ0FBQTtJQUNsQiwwQ0FBMEM7SUFDMUMsd0ZBQWdCLENBQUE7SUFDaEIsMENBQTBDO0lBQzFDLHdGQUFnQixDQUFBO0lBQ2hCLDBGQUFpQixDQUFBO0FBQ25CLENBQUMsRUExQ1cseUJBQXlCLHlDQUF6Qix5QkFBeUIsUUEwQ3BDO0FBRUQsU0FBZ0IsaUNBQWlDLENBQy9DLE1BQVc7SUFFWCxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxDQUFDLENBQUM7UUFDUCxLQUFLLGFBQWE7WUFDaEIsT0FBTyx5QkFBeUIsQ0FBQyxXQUFXLENBQUM7UUFDL0MsS0FBSyxDQUFDLENBQUM7UUFDUCxLQUFLLFlBQVk7WUFDZixPQUFPLHlCQUF5QixD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Q0FBQyxJQUFJLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxRQUFRLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDNUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxRQUFRLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDNUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxZQUFZLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDaEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FB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SyxJQUFJLEVBQUUsQ0FBQztZQUM1QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUMxQixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLGNBQWMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNwQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbEQsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFVBQVUsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNoQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDN0MsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUMxQixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUNELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDNUMsMkJBQW1CLENBQUMsTUFBTSxDQUFDLENBQUUsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxD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 \ No newline at end of file +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlYy9nb29nbGUvcHJvdG9idWYvZGVzY3JpcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQiwyQ0FBa0c7QUFDbEcsd0RBQTBDO0FBRTdCLFFBQUEsZUFBZSxHQUFHLGlCQUFpQixDQUFDO0FBQ2pELElBQVkseUJBMENYO0FBMUNELFdBQVkseUJBQXlCO0lBQ25DOzs7T0FHRztJQUNILHVGQUFlLENBQUE7SUFDZixxRkFBYyxDQUFBO0lBQ2Q7OztPQUdHO0lBQ0gscUZBQWMsQ0FBQTtJQUNkLHVGQUFlLENBQUE7SUFDZjs7O09BR0c7SUFDSCxxRkFBYyxDQUFBO0lBQ2QseUZBQWdCLENBQUE7SUFDaEIseUZBQWdCLENBQUE7SUFDaEIsbUZBQWEsQ0FBQTtJQUNiLHVGQUFlLENBQUE7SUFDZjs7Ozs7T0FLRztJQUNILHNGQUFlLENBQUE7SUFDZixpREFBaUQ7SUFDakQsMEZBQWlCLENBQUE7SUFDakIscUNBQXFDO0lBQ3JDLHNGQUFlLENBQUE7SUFDZix3RkFBZ0IsQ0FBQTtJQUNoQixvRkFBYyxDQUFBO0lBQ2QsNEZBQWtCLENBQUE7SUFDbEIsNEZBQWtCLENBQUE7SUFDbEIsMENBQTBDO0lBQzFDLHdGQUFnQixDQUFBO0lBQ2hCLDBDQUEwQztJQUMxQyx3RkFBZ0IsQ0FBQTtJQUNoQiwwRkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBMUNXLHlCQUF5Qix5Q0FBekIseUJBQXlCLFFBMENwQztBQUNELFNBQWdCLGlDQUFpQyxDQUFDLE1BQVc7SUFDM0QsUUFBUSxNQUFNLEVBQUUsQ0FBQztRQUNmLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxhQUFhO1lBQ2hCLE9BQU8seUJBQXlCLENBQUMsV0FBVyxDQUFDO1FBQy9DLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxZQUFZ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QUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ2hDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsVUFBVSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzVCLE1B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QyxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDNUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDMUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDaEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDMUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQzVDLDJCQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFFLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJ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 \ No newline at end of file diff --git a/dist/codec/google/protobuf/duration.d.ts b/dist/codec/google/protobuf/duration.d.ts index 40bc1d5..600b67f 100644 --- a/dist/codec/google/protobuf/duration.d.ts +++ b/dist/codec/google/protobuf/duration.d.ts @@ -1,5 +1,7 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; +/// +import { Long } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; export declare const protobufPackage = "google.protobuf"; /** * A Duration represents a signed, fixed-length span of time represented @@ -79,10 +81,11 @@ export interface Duration { nanos: number; } export declare const Duration: { + typeUrl: string; encode(message: Duration, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Duration; fromJSON(object: any): Duration; - toJSON(message: Duration): unknown; + toJSON(message: Duration): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): Duration; + } & Record, never>>(object: I): Duration; }; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; -}; -export {}; diff --git a/dist/codec/google/protobuf/duration.js b/dist/codec/google/protobuf/duration.js index f4b7199..8e7886e 100644 --- a/dist/codec/google/protobuf/duration.js +++ b/dist/codec/google/protobuf/duration.js @@ -1,18 +1,42 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Duration = exports.protobufPackage = void 0; /* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); exports.protobufPackage = "google.protobuf"; function createBaseDuration() { - return { seconds: long_1.default.ZERO, nanos: 0 }; + return { + seconds: helpers_1.Long.ZERO, + nanos: 0 + }; } exports.Duration = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.Duration", + encode(message, writer = _m0.Writer.create()) { if (!message.seconds.isZero()) { writer.uint32(8).int64(message.seconds); } @@ -22,7 +46,7 @@ exports.Duration = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseDuration(); while (reader.pos < end) { @@ -42,35 +66,26 @@ exports.Duration = { return message; }, fromJSON(object) { - return { - seconds: isSet(object.seconds) - ? long_1.default.fromValue(object.seconds) - : long_1.default.ZERO, - nanos: isSet(object.nanos) ? Number(object.nanos) : 0, - }; + const obj = createBaseDuration(); + if ((0, helpers_1.isSet)(object.seconds)) + obj.seconds = helpers_1.Long.fromValue(object.seconds); + if ((0, helpers_1.isSet)(object.nanos)) + obj.nanos = Number(object.nanos); + return obj; }, toJSON(message) { const obj = {}; - message.seconds !== undefined && - (obj.seconds = (message.seconds || long_1.default.ZERO).toString()); + message.seconds !== undefined && (obj.seconds = (message.seconds || helpers_1.Long.ZERO).toString()); message.nanos !== undefined && (obj.nanos = Math.round(message.nanos)); return obj; }, fromPartial(object) { const message = createBaseDuration(); - message.seconds = - object.seconds !== undefined && object.seconds !== null - ? long_1.default.fromValue(object.seconds) - : long_1.default.ZERO; + if (object.seconds !== undefined && object.seconds !== null) { + message.seconds = helpers_1.Long.fromValue(object.seconds); + } message.nanos = object.nanos ?? 0; return message; - }, + } }; -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZ29vZ2xlL3Byb3RvYnVmL2R1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQixnREFBd0I7QUFDeEIsaUVBQXFDO0FBRXhCLFFBQUEsZUFBZSxHQUFHLGlCQUFpQixDQUFDO0FBZ0ZqRCxTQUFTLGtCQUFrQjtJQUN6QixPQUFPLEVBQUUsT0FBTyxFQUFFLGNBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDO0FBQzFDLENBQUM7QUFFWSxRQUFBLFFBQVEsR0FBRztJQUN0QixNQUFNLENBQ0osT0FBaUIsRUFDakIsU0FBcUIsaUJBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBRXhDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDOUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQThCLEVBQUUsTUFBZTtRQUNwRCxNQUFNLE1BQU0sR0FBRyxLQUFLLFlBQVksaUJBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxpQkFBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLEdBQUcsR0FBRyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3JDLE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUN4QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsUUFBUSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2xCLEtBQUssQ0FBQztvQkFDSixPQUFPLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQVUsQ0FBQztvQkFDekMsTUFBTTtnQkFDUixLQUFLLENBQUM7b0JBQ0osT0FBTyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQy9CLE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBVztRQUNsQixPQUFPO1lBQ0wsT0FBTyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUM1QixDQUFDLENBQUMsY0FBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUNoQyxDQUFDLENBQUMsY0FBSSxDQUFDLElBQUk7WUFDYixLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN0RCxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFpQjtRQUN0QixNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUM7UUFDcEIsT0FBTyxDQUFDLE9BQU8sS0FBSyxTQUFTO1lBQzNCLENBQUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksY0FBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDNUQsT0FBTyxDQUFDLEtBQUssS0FBSyxTQUFTLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdkUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsV0FBVyxDQUE0QyxNQUFTO1FBQzlELE1BQU0sT0FBTyxHQUFHLGtCQUFrQixFQUFFLENBQUM7UUFDckMsT0FBTyxDQUFDLE9BQU87WUFDYixNQUFNLENBQUMsT0FBTyxLQUFLLFNBQVMsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLElBQUk7Z0JBQ3JELENBQUMsQ0FBQyxjQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7Z0JBQ2hDLENBQUMsQ0FBQyxjQUFJLENBQUMsSUFBSSxDQUFDO1FBQ2hCLE9BQU8sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDbEMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGLENBQUM7QUE4QkYsSUFBSSxpQkFBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssY0FBSSxFQUFFLENBQUM7SUFDM0IsaUJBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLGNBQVcsQ0FBQztJQUM1QixpQkFBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBQ2xCLENBQUM7QUFFRCxTQUFTLEtBQUssQ0FBQyxLQUFVO0lBQ3ZCLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDO0FBQy9DLENBQUMifQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWMvZ29vZ2xlL3Byb3RvYnVmL2R1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLDJDQUFnRTtBQUNoRSx3REFBMEM7QUFFN0IsUUFBQSxlQUFlLEdBQUcsaUJBQWlCLENBQUM7QUE4RWpELFNBQVMsa0JBQWtCO0lBQ3pCLE9BQU87UUFDTCxPQUFPLEVBQUUsY0FBSSxDQUFDLElBQUk7UUFDbEIsS0FBSyxFQUFFLENBQUM7S0FDVCxDQUFDO0FBQ0osQ0FBQztBQUNZLFFBQUEsUUFBUSxHQUFHO0lBQ3RCLE9BQU8sRUFBRSwyQkFBMkI7SUFDcEMsTUFBTSxDQUFDLE9BQWlCLEVBQUUsU0FBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDaEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUM5QixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN4QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztR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 \ No newline at end of file diff --git a/dist/codec/google/protobuf/timestamp.d.ts b/dist/codec/google/protobuf/timestamp.d.ts index dc763fb..1f24467 100644 --- a/dist/codec/google/protobuf/timestamp.d.ts +++ b/dist/codec/google/protobuf/timestamp.d.ts @@ -1,5 +1,7 @@ -import Long from "long"; -import _m0 from "protobufjs/minimal"; +/// +import { Long } from "../../helpers"; +import * as _m0 from "protobufjs/minimal"; +import { JsonSafe } from "../../json-safe"; export declare const protobufPackage = "google.protobuf"; /** * A Timestamp represents a point in time independent of any time zone or local @@ -53,16 +55,7 @@ export declare const protobufPackage = "google.protobuf"; * .setNanos((int) ((millis % 1000) * 1000000)).build(); * * - * Example 5: Compute Timestamp from Java `Instant.now()`. - * - * Instant now = Instant.now(); - * - * Timestamp timestamp = - * Timestamp.newBuilder().setSeconds(now.getEpochSecond()) - * .setNanos(now.getNano()).build(); - * - * - * Example 6: Compute Timestamp from current time in Python. + * Example 5: Compute Timestamp from current time in Python. * * timestamp = Timestamp() * timestamp.GetCurrentTime() @@ -110,10 +103,11 @@ export interface Timestamp { nanos: number; } export declare const Timestamp: { + typeUrl: string; encode(message: Timestamp, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Timestamp; fromJSON(object: any): Timestamp; - toJSON(message: Timestamp): unknown; + toJSON(message: Timestamp): JsonSafe; fromPartial string; toUnsigned: () => Long.Long; xor: (other: string | number | Long.Long) => Long.Long; - } & { [K in Exclude]: never; }) | undefined; + } & Record, never>) | undefined; nanos?: number | undefined; - } & { [K_1 in Exclude]: never; }>(object: I): Timestamp; -}; -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { - [K in keyof T]?: DeepPartial; -} : Partial; -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P : P & { - [K in keyof P]: Exact; -} & { - [K in Exclude>]: never; + } & Record, never>>(object: I): Timestamp; }; -export {}; diff --git a/dist/codec/google/protobuf/timestamp.js b/dist/codec/google/protobuf/timestamp.js index e9539a7..49274be 100644 --- a/dist/codec/google/protobuf/timestamp.js +++ b/dist/codec/google/protobuf/timestamp.js @@ -1,18 +1,42 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Timestamp = exports.protobufPackage = void 0; /* eslint-disable */ -const long_1 = __importDefault(require("long")); -const minimal_1 = __importDefault(require("protobufjs/minimal")); +const helpers_1 = require("../../helpers"); +const _m0 = __importStar(require("protobufjs/minimal")); exports.protobufPackage = "google.protobuf"; function createBaseTimestamp() { - return { seconds: long_1.default.ZERO, nanos: 0 }; + return { + seconds: helpers_1.Long.ZERO, + nanos: 0 + }; } exports.Timestamp = { - encode(message, writer = minimal_1.default.Writer.create()) { + typeUrl: "/google.protobuf.Timestamp", + encode(message, writer = _m0.Writer.create()) { if (!message.seconds.isZero()) { writer.uint32(8).int64(message.seconds); } @@ -22,7 +46,7 @@ exports.Timestamp = { return writer; }, decode(input, length) { - const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input); + const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseTimestamp(); while (reader.pos < end) { @@ -42,35 +66,26 @@ exports.Timestamp = { return message; }, fromJSON(object) { - return { - seconds: isSet(object.seconds) - ? long_1.default.fromValue(object.seconds) - : long_1.default.ZERO, - nanos: isSet(object.nanos) ? Number(object.nanos) : 0, - }; + const obj = createBaseTimestamp(); + if ((0, helpers_1.isSet)(object.seconds)) + obj.seconds = helpers_1.Long.fromValue(object.seconds); + if ((0, helpers_1.isSet)(object.nanos)) + obj.nanos = Number(object.nanos); + return obj; }, toJSON(message) { const obj = {}; - message.seconds !== undefined && - (obj.seconds = (message.seconds || long_1.default.ZERO).toString()); + message.seconds !== undefined && (obj.seconds = (message.seconds || helpers_1.Long.ZERO).toString()); message.nanos !== undefined && (obj.nanos = Math.round(message.nanos)); return obj; }, fromPartial(object) { const message = createBaseTimestamp(); - message.seconds = - object.seconds !== undefined && object.seconds !== null - ? long_1.default.fromValue(object.seconds) - : long_1.default.ZERO; + if (object.seconds !== undefined && object.seconds !== null) { + message.seconds = helpers_1.Long.fromValue(object.seconds); + } message.nanos = object.nanos ?? 0; return message; - }, + } }; -if (minimal_1.default.util.Long !== long_1.default) { - minimal_1.default.util.Long = long_1.default; - minimal_1.default.configure(); -} -function isSet(value) { - return value !== null && value !== undefined; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXN0YW1wLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QixpRUFBcUM7QUFFeEIsUUFBQSxlQUFlLEdBQUcsaUJBQWlCLENBQUM7QUErR2pELFNBQVMsbUJBQW1CO0lBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUsY0FBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7QUFDMUMsQ0FBQztBQUVZLFFBQUEsU0FBUyxHQUFHO0lBQ3ZCLE1BQU0sQ0FDSixPQUFrQixFQUNsQixTQUFxQixpQkFBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFFeEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUM5QixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN4QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBOEIsRUFBRSxNQUFlO1FBQ3BELE1BQU0sTUFBTSxHQUFHLEtBQUssWUFBWSxpQkFBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLGlCQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLElBQUksR0FBRyxHQUFHLE1BQU0sS0FBSyxTQUFTLENB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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXN0YW1wLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvZGVjL2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsMkNBQWdFO0FBQ2hFLHdEQUEwQztBQUU3QixRQUFBLGVBQWUsR0FBRyxpQkFBaUIsQ0FBQztBQW9HakQsU0FBUyxtQkFBbUI7SUFDMUIsT0FBTztRQUNMLE9BQU8sRUFBRSxjQUFJLENBQUMsSUFBSTtRQUNsQixLQUFLLEVBQUUsQ0FBQztLQUNULENBQUM7QUFDSixDQUFDO0FBQ1ksUUFBQSxTQUFTLEdBQUc7SUFDdkIsT0FBTyxFQUFFLDRCQUE0QjtJQUNyQyxNQUFNLENBQUMsT0FBa0IsRUFBRSxTQUFxQixHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUNqRSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1lBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUNELE1BQU0sQ0FBQyxLQUE4QixFQUFFLE1BQWU7UUFDcEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxZQUFZLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFD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 \ No newline at end of file diff --git a/dist/codec/helpers.d.ts b/dist/codec/helpers.d.ts new file mode 100644 index 0000000..d6ba63a --- /dev/null +++ b/dist/codec/helpers.d.ts @@ -0,0 +1,82 @@ +/** +* This file and any referenced files were automatically generated by @cosmology/telescope@1.8.3 +* DO NOT MODIFY BY HAND. Instead, download the latest proto files for your chain +* and run the transpile command or npm scripts command that is used to regenerate this bundle. +*/ +import Long from 'long'; +export { Long }; +export declare function bytesFromBase64(b64: string): Uint8Array; +export declare function base64FromBytes(arr: Uint8Array): string; +export interface AminoHeight { + readonly revision_number?: string; + readonly revision_height?: string; +} +export declare function omitDefault(input: T): T | undefined; +interface Duration { + /** + * Signed seconds of the span of time. Must be from -315,576,000,000 + * to +315,576,000,000 inclusive. Note: these bounds are computed from: + * 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years + */ + seconds: Long; + /** + * Signed fractions of a second at nanosecond resolution of the span + * of time. Durations less than one second are represented with a 0 + * `seconds` field and a positive or negative `nanos` field. For durations + * of one second or more, a non-zero value for the `nanos` field must be + * of the same sign as the `seconds` field. Must be from -999,999,999 + * to +999,999,999 inclusive. + */ + nanos: number; +} +export declare function toDuration(duration: string): Duration; +export declare function fromDuration(duration: Duration): string; +export declare function isSet(value: any): boolean; +export declare function isObject(value: any): boolean; +export interface PageRequest { + key: Uint8Array; + offset: Long; + limit: Long; + countTotal: boolean; + reverse: boolean; +} +export interface PageRequestParams { + "pagination.key"?: string; + "pagination.offset"?: string; + "pagination.limit"?: string; + "pagination.count_total"?: boolean; + "pagination.reverse"?: boolean; +} +export interface Params { + params: PageRequestParams; +} +export declare const setPaginationParams: (options: Params, pagination?: PageRequest) => Params; +type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; +export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { + [K in keyof T]?: DeepPartial; +} : Partial; +type KeysOfUnion = T extends T ? keyof T : never; +export type Exact = P extends Builtin ? P : P & { + [K in keyof P]: Exact; +} & Record>, never>; +export interface Rpc { + request(service: string, method: string, data: Uint8Array): Promise; +} +interface Timestamp { + /** + * Represents seconds of UTC time since Unix epoch + * 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to + * 9999-12-31T23:59:59Z inclusive. + */ + seconds: Long; + /** + * Non-negative fractions of a second at nanosecond resolution. Negative + * second values with fractions must still have non-negative nanos values + * that count forward in time. Must be from 0 to 999,999,999 + * inclusive. + */ + nanos: number; +} +export declare function toTimestamp(date: Date): Timestamp; +export declare function fromTimestamp(t: Timestamp): Date; +export declare function fromJsonTimestamp(o: any): Timestamp; diff --git a/dist/codec/helpers.js b/dist/codec/helpers.js new file mode 100644 index 0000000..059cbeb --- /dev/null +++ b/dist/codec/helpers.js @@ -0,0 +1,182 @@ +"use strict"; +/* eslint-disable */ +/** +* This file and any referenced files were automatically generated by @cosmology/telescope@1.8.3 +* DO NOT MODIFY BY HAND. Instead, download the latest proto files for your chain +* and run the transpile command or npm scripts command that is used to regenerate this bundle. +*/ +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.fromJsonTimestamp = exports.fromTimestamp = exports.toTimestamp = exports.setPaginationParams = exports.isObject = exports.isSet = exports.fromDuration = exports.toDuration = exports.omitDefault = exports.base64FromBytes = exports.bytesFromBase64 = exports.Long = void 0; +const _m0 = __importStar(require("protobufjs/minimal")); +const long_1 = __importDefault(require("long")); +exports.Long = long_1.default; +// @ts-ignore +if (_m0.util.Long !== long_1.default) { + _m0.util.Long = long_1.default; + _m0.configure(); +} +var globalThis = (() => { + if (typeof globalThis !== 'undefined') + return globalThis; + if (typeof self !== 'undefined') + return self; + if (typeof window !== 'undefined') + return window; + if (typeof global !== 'undefined') + return global; + throw 'Unable to locate global object'; +})(); +const atob = globalThis.atob || ((b64) => globalThis.Buffer.from(b64, 'base64').toString('binary')); +function bytesFromBase64(b64) { + const bin = atob(b64); + const arr = new Uint8Array(bin.length); + for (let i = 0; i < bin.length; ++i) { + arr[i] = bin.charCodeAt(i); + } + return arr; +} +exports.bytesFromBase64 = bytesFromBase64; +const btoa = globalThis.btoa || ((bin) => globalThis.Buffer.from(bin, 'binary').toString('base64')); +function base64FromBytes(arr) { + const bin = []; + arr.forEach((byte) => { + bin.push(String.fromCharCode(byte)); + }); + return btoa(bin.join('')); +} +exports.base64FromBytes = base64FromBytes; +; +function omitDefault(input) { + if (typeof input === "string") { + return input === "" ? undefined : input; + } + if (typeof input === "number") { + return input === 0 ? undefined : input; + } + if (typeof input === "boolean") { + return input === false ? undefined : input; + } + if (long_1.default.isLong(input)) { + return input.isZero() ? undefined : input; + } + throw new Error(`Got unsupported type ${typeof input}`); +} +exports.omitDefault = omitDefault; +; +function toDuration(duration) { + return { + seconds: long_1.default.fromNumber(Math.floor(parseInt(duration) / 1000000000)), + nanos: parseInt(duration) % 1000000000 + }; +} +exports.toDuration = toDuration; +; +function fromDuration(duration) { + return (parseInt(duration.seconds.toString()) * 1000000000 + duration.nanos).toString(); +} +exports.fromDuration = fromDuration; +; +function isSet(value) { + return value !== null && value !== undefined; +} +exports.isSet = isSet; +; +function isObject(value) { + return typeof value === 'object' && value !== null; +} +exports.isObject = isObject; +; +; +; +; +const setPaginationParams = (options, pagination) => { + if (!pagination) { + return options; + } + if (typeof pagination?.countTotal !== "undefined") { + options.params['pagination.count_total'] = pagination.countTotal; + } + if (typeof pagination?.key !== "undefined") { + // String to Uint8Array + // let uint8arr = new Uint8Array(Buffer.from(data,'base64')); + // Uint8Array to String + options.params['pagination.key'] = Buffer.from(pagination.key).toString('base64'); + } + if (typeof pagination?.limit !== "undefined") { + options.params["pagination.limit"] = pagination.limit.toString(); + } + if (typeof pagination?.offset !== "undefined") { + options.params["pagination.offset"] = pagination.offset.toString(); + } + if (typeof pagination?.reverse !== "undefined") { + options.params['pagination.reverse'] = pagination.reverse; + } + return options; +}; +exports.setPaginationParams = setPaginationParams; +; +function toTimestamp(date) { + const seconds = numberToLong(date.getTime() / 1000); + const nanos = date.getTime() % 1000 * 1000000; + return { + seconds, + nanos + }; +} +exports.toTimestamp = toTimestamp; +; +function fromTimestamp(t) { + let millis = t.seconds.toNumber() * 1000; + millis += t.nanos / 1000000; + return new Date(millis); +} +exports.fromTimestamp = fromTimestamp; +; +const timestampFromJSON = (object) => { + return { + seconds: isSet(object.seconds) ? long_1.default.fromValue(object.seconds) : long_1.default.ZERO, + nanos: isSet(object.nanos) ? Number(object.nanos) : 0, + }; +}; +function fromJsonTimestamp(o) { + if (o instanceof Date) { + return toTimestamp(o); + } + else if (typeof o === "string") { + return toTimestamp(new Date(o)); + } + else { + return timestampFromJSON(o); + } +} +exports.fromJsonTimestamp = fromJsonTimestamp; +function numberToLong(number) { + return long_1.default.fromNumber(number); +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb2RlYy9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvQkFBb0I7QUFDcEI7Ozs7RUFJRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFRix3REFBMEM7QUFDMUMsZ0RBQXdCO0FBU2YsZUFURixjQUFJLENBU0U7QUFQYixhQUFhO0FBQ2IsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxjQUFJLEVBQUUsQ0FBQztJQUN6QixHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksR0FBSSxjQUFZLENBQUM7SUFFOUIsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBQ3BCLENBQUM7QUFPRCxJQUFJLFVBQVUsR0FBUSxDQUFDLEdBQUcsRUFBRTtJQUN4QixJQUFJLE9BQU8sVUFBVSxLQUFLLFdBQVc7UUFBRSxPQUFPLFVBQVUsQ0FBQztJQUN6RCxJQUFJLE9BQU8sSUFBSSxLQUFLLFdBQVc7UUFBRSxPQUFPLElBQUksQ0FBQztJQUM3QyxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVc7UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUNqRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVc7UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUNqRCxNQUFNLGdDQUFnQyxDQUFDO0FBQzNDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFFTCxNQUFNLElBQUksR0FDTixVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztBQUUzRixTQUFnQixlQUFlLENBQUMsR0FBVztJQUN2QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEIsTUFBTSxHQUFHLEdB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 \ No newline at end of file diff --git a/dist/codec/index.d.ts b/dist/codec/index.d.ts new file mode 100644 index 0000000..e69de29 diff --git a/dist/codec/index.js b/dist/codec/index.js new file mode 100644 index 0000000..54cbd07 --- /dev/null +++ b/dist/codec/index.js @@ -0,0 +1,3 @@ +"use strict"; +// Auto-generated, see scripts/codegen.js! +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29kZWMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNJLDBDQUEwQyJ9 \ No newline at end of file diff --git a/dist/codec/json-safe.d.ts b/dist/codec/json-safe.d.ts new file mode 100644 index 0000000..3f9bfff --- /dev/null +++ b/dist/codec/json-safe.d.ts @@ -0,0 +1,8 @@ +/** +* This file and any referenced files were automatically generated by @cosmology/telescope@1.8.3 +* DO NOT MODIFY BY HAND. Instead, download the latest proto files for your chain +* and run the transpile command or npm scripts command that is used to regenerate this bundle. +*/ +export type JsonSafe = { + [Prop in keyof T]: T[Prop] extends Uint8Array | bigint | Date ? string : T[Prop]; +}; diff --git a/dist/codec/json-safe.js b/dist/codec/json-safe.js new file mode 100644 index 0000000..b9d53e2 --- /dev/null +++ b/dist/codec/json-safe.js @@ -0,0 +1,9 @@ +"use strict"; +/* eslint-disable */ +/** +* This file and any referenced files were automatically generated by @cosmology/telescope@1.8.3 +* DO NOT MODIFY BY HAND. Instead, download the latest proto files for your chain +* and run the transpile command or npm scripts command that is used to regenerate this bundle. +*/ +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1zYWZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvZGVjL2pzb24tc2FmZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCOzs7O0VBSUUifQ== \ No newline at end of file diff --git a/dist/queries.d.ts b/dist/queries.d.ts index 6a08f9b..b008688 100644 --- a/dist/queries.d.ts +++ b/dist/queries.d.ts @@ -1,14 +1,29 @@ -/// import { QueryClient } from "@cosmjs/stargate"; -import { QueryParamsResponse, QueryInferenceAgentResponse, QuerySessionResponse, QueryVRFSeedResponse, QuerySessionByAgentResponse } from "./codec/agent/v1/query"; -import { SessionStatus } from "./codec/agent/v1/agent"; -export interface AgentExtension { - readonly agent: { - readonly params: () => Promise; - readonly inferenceAgentRequest: (account: string, modelName: string, limit: Long, key: Uint8Array) => Promise; - readonly sessionRequest: (id: string) => Promise; - readonly sessionByAgentRequest: (account: string, status: SessionStatus, limit: Long, orderDesc: boolean, key: Uint8Array, expireTime?: Date) => Promise; - readonly VRFSeedRequest: (account: string) => Promise; +import { AgentModelStatus, SessionStatus } from "./codec/agent/v1/agent"; +import { PageRequest } from "./codec/cosmos/base/query/v1beta1/pagination"; +import { Availability, InferenceType } from "./codec/dht/v1/orchestrator"; +export declare function setupAgentExtension(base: QueryClient): { + agent: { + params: () => Promise; + inferenceAgentRequest: (account: string, modelName: string, limit: Long, key: Uint8Array) => Promise; + agentByModelRequest: (modelName: string, status: AgentModelStatus) => Promise; + sessionRequest: (id: string) => Promise; + sessionByAgentRequest: (account: string, status: SessionStatus | undefined, expireTime: Date, limit: Long, orderDesc: boolean, key: Uint8Array) => Promise; + sessionByChallengeRequest: (account: string, limit: Long, key: Uint8Array) => Promise; + VRFSeedRequest: (account: string) => Promise; }; -} -export declare function setupAgentExtension(base: QueryClient): AgentExtension; +}; +export declare function setupDHTExtension(base: QueryClient): { + dht: { + params: () => Promise; + getModel: (modelName: string) => Promise; + getModelBlocks: (modelName: string, pagination?: PageRequest) => Promise; + getNode: (nodeId: string) => Promise; + getMiner: (nodeId: string) => Promise; + getOrchestrator: (nodeId: string) => Promise; + getAllOrchestrator: (pagination?: PageRequest) => Promise; + getOrchestratorsByParams: (inferenceType: InferenceType, availability: Availability, limit: number, key: Uint8Array) => Promise; + getOrchestratorHeartbeat: (nodeId: string) => Promise; + getMinerHeartbeat: (nodeId: string) => Promise; + }; +}; diff --git a/dist/queries.js b/dist/queries.js index 5bed3f9..20533d7 100644 --- a/dist/queries.js +++ b/dist/queries.js @@ -1,34 +1,32 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.setupAgentExtension = void 0; +exports.setupDHTExtension = exports.setupAgentExtension = void 0; const stargate_1 = require("@cosmjs/stargate"); const query_1 = require("./codec/agent/v1/query"); -// public async getSessionByAgent(account: string, status: SessionStatus, limit: Long, orderDesc: boolean, key: Uint8Array, expireTime?: Date): Promise { -// const result = await this.query.agent.sessionByAgentRequest(account, status, expireTime, limit, orderDesc, key); -// return result; -// } +const helpers_1 = require("./codec/helpers"); +const query_2 = require("./codec/dht/v1/query"); function setupAgentExtension(base) { const rpc = (0, stargate_1.createProtobufRpcClient)(base); const agentQueryService = new query_1.QueryClientImpl(rpc); return { agent: { - // modelRequest: async (name: string) => { - // return await agentQueryService.ModelRequest({ name }); - // }, - // modelRequestAll: async (key: Uint8Array, offset: Long, limit: Long, countTotal: boolean, reverse: boolean) => { - // return await agentQueryService.ModelRequestAll({pagination: {key, offset, limit, countTotal, reverse}}); - // }, params: async () => { return await agentQueryService.Params({}); }, inferenceAgentRequest: async (account, modelName, limit, key) => { return await agentQueryService.InferenceAgentRequest({ account, modelName, limit, key }); }, + agentByModelRequest: async (modelName, status) => { + return await agentQueryService.AgentByModelRequest({ modelName, status }); + }, sessionRequest: async (id) => { return await agentQueryService.SessionRequest({ id }); }, - sessionByAgentRequest: async (account, status, limit, orderDesc, key, expireTime) => { - return await agentQueryService.SessionByAgentRequest({ account, status, expireTime, limit, orderDesc, key }); + sessionByAgentRequest: async (account, status, expireTime, limit, orderDesc, key) => { + return await agentQueryService.SessionByAgentRequest({ account, status, expireTime: (0, helpers_1.toTimestamp)(expireTime), limit, orderDesc, key }); + }, + sessionByChallengeRequest: async (account, limit, key) => { + return await agentQueryService.SessionByChallengeRequest({ account, limit, key }); }, VRFSeedRequest: async (account) => { return await agentQueryService.VRFSeedRequest({ account }); @@ -37,4 +35,65 @@ function setupAgentExtension(base) { }; } exports.setupAgentExtension = setupAgentExtension; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9xdWVyaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtDQUcwQjtBQUMxQixrREFVZ0M7QUFrQmhDLHNMQUFzTDtBQUN0TCxxSEFBcUg7QUFDckgsbUJBQW1CO0FBQ25CLElBQUk7QUFDSixTQUFnQixtQkFBbUIsQ0FBQyxJQUFpQjtJQUNuRCxNQUFNLEdBQUcsR0FBRyxJQUFBLGtDQUF1QixFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSx1QkFBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRS9DLE9BQU87UUFDTCxLQUFLLEVBQUU7WUFDTCwwQ0FBMEM7WUFDMUMsMkRBQTJEO1lBQzNELEtBQUs7WUFDTCxrSEFBa0g7WUFDbEgsNkdBQTZHO1lBQzdHLEtBQUs7WUFDTCxNQUFNLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQ2pCLE9BQU8sTUFBTSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUMsQ0FBQztZQUNELHFCQUFxQixFQUFFLEtBQUssRUFBRSxPQUFlLEVBQUUsU0FBaUIsRUFBRSxLQUFXLEVBQUUsR0FBZSxFQUFFLEVBQUU7Z0JBQ2hHLE9BQU8sTUFBTSxpQkFBaUIsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDM0YsQ0FBQztZQUNELGNBQWMsRUFBRSxLQUFLLEVBQUUsRUFBVSxFQUFFLEVBQUU7Z0JBQ25DLE9BQU8sTUFBTSxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3hELENBQUM7WUFDRCxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsT0FBZSxFQUFFLE1BQXFCLEVBQUUsS0FBVyxFQUFFLFNBQWtCLEVBQUUsR0FBZSxFQUFFLFVBQWlCLEVBQUUsRUFBRTtnQkFDM0ksT0FBTyxNQUFNLGlCQUFpQixDQUFDLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQy9HLENBQUM7WUFDRCxjQUFjLEVBQUUsS0FBSyxFQUFFLE9BQWUsRUFBRSxFQUFFO2dCQUN4QyxPQUFPLE1BQU0saUJBQWlCLENBQUMsY0FBYyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUM3RCxDQUFDO1NBQ0Y7S0FDRixDQUFBO0FBQ0gsQ0FBQztBQTdCRCxrREE2QkMifQ== \ No newline at end of file +function setupDHTExtension(base) { + const rpc = (0, stargate_1.createProtobufRpcClient)(base); + const dhtQueryService = new query_2.QueryClientImpl(rpc); + return { + dht: { + params: async () => { + return await dhtQueryService.Params({}); + }, + getModel: async (modelName) => { + return await dhtQueryService.GetModel({ + modelName + }); + }, + getModelBlocks: async (modelName, pagination) => { + return await dhtQueryService.GetModelBlocks({ + modelName, + pagination + }); + }, + getNode: async (nodeId) => { + return await dhtQueryService.GetNode({ + nodeId + }); + }, + getMiner: async (nodeId) => { + return await dhtQueryService.GetMiner({ + nodeId + }); + }, + getOrchestrator: async (nodeId) => { + return await dhtQueryService.GetOrchestrator({ + nodeId + }); + }, + getAllOrchestrator: async (pagination) => { + return await dhtQueryService.GetAllOrchestrator({ + pagination + }); + }, + getOrchestratorsByParams: async (inferenceType, availability, limit, key) => { + return await dhtQueryService.GetOrchestratorsByParams({ + inferenceType, + availability, + limit, + key + }); + }, + getOrchestratorHeartbeat: async (nodeId) => { + return await dhtQueryService.GetOrchestratorHeartbeat({ + nodeId + }); + }, + getMinerHeartbeat: async (nodeId) => { + return await dhtQueryService.GetMinerHeartbeat({ + nodeId + }); + }, + } + }; +} +exports.setupDHTExtension = setupDHTExtension; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9xdWVyaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtDQUcwQjtBQUMxQixrREFFZ0M7QUFFaEMsNkNBQThDO0FBQzlDLGdEQUU4QjtBQUs5QixTQUFnQixtQkFBbUIsQ0FBQyxJQUFpQjtJQUNuRCxNQUFNLEdBQUcsR0FBRyxJQUFBLGtDQUF1QixFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSx1QkFBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRS9DLE9BQU87UUFDTCxLQUFLLEVBQUU7WUFDTCxNQUFNLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQ2pCLE9BQU8sTUFBTSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUMsQ0FBQztZQUNELHFCQUFxQixFQUFFLEtBQUssRUFDMUIsT0FBZSxFQUNmLFNBQWlCLEVBQ2pCLEtBQVcsRUFDWCxHQUFlLEVBQ2YsRUFBRTtnQkFDRixPQUFPLE1BQU0saUJBQWlCLENBQUMscUJBQXFCLENBQUMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQzNGLENBQUM7WUFDRCxtQkFBbUIsRUFBRSxLQUFLLEVBQ3hCLFNBQWlCLEVBQ2pCLE1BQXdCLEVBQ3hCLEVBQUU7Z0JBQ0YsT0FBTyxNQUFNLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7WUFDNUUsQ0FBQztZQUNELGNBQWMsRUFBRSxLQUFLLEVBQUUsRUFBVSxFQUFFLEVBQUU7Z0JBQ25DLE9BQU8sTUFBTSxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3hELENBQUM7WUFDRCxxQkFBcUIsRUFBRSxLQUFLLEVBQzFCLE9BQWUsRUFDZixNQUFpQyxF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 \ No newline at end of file diff --git a/dist/walletOperation.d.ts b/dist/walletOperation.d.ts index ca7b201..5eedb26 100644 --- a/dist/walletOperation.d.ts +++ b/dist/walletOperation.d.ts @@ -1,6 +1,7 @@ import { NesaClient } from "./client"; import { ChainInfo } from "@keplr-wallet/types"; import type { CosmjsOfflineSigner } from "@leapwallet/cosmos-snap-provider"; +import { QueryGetModelResponse } from "./codec/dht/v1/query"; declare class WalletOperation { static getNesaClient(chainInfo: ChainInfo, offlineSigner: CosmjsOfflineSigner | undefined): Promise; static registerSession(recordId: string, client: NesaClient, modelName: string, lockAmount: string, denom: string, chainInfo: ChainInfo, offlineSigner: CosmjsOfflineSigner): Promise<{ @@ -10,5 +11,6 @@ declare class WalletOperation { static requestAgentInfo(client: NesaClient | undefined, agentName: string, modelName: string): Promise; static requestParams(client: NesaClient | undefined): Promise; static requestVrfSeed(client: NesaClient, offlineSigner: CosmjsOfflineSigner): Promise; + static requestModel(client: NesaClient, modelName: string): Promise; } export default WalletOperation; diff --git a/dist/walletOperation.js b/dist/walletOperation.js index d3b21ca..fc0716e 100644 --- a/dist/walletOperation.js +++ b/dist/walletOperation.js @@ -22,17 +22,26 @@ class WalletOperation { } static async registerSession(recordId, client, modelName, lockAmount, denom, chainInfo, offlineSigner) { encryptUtils_1.default.generateKey(recordId); - const res = await encryptUtils_1.default.requestVrf(recordId, client, offlineSigner); + const [resVrf, resModel] = await Promise.all([ + encryptUtils_1.default.requestVrf(recordId, client, offlineSigner), + this.requestModel(client, modelName) + ]); const fee = { amount: [ { denom: chainInfo.feeCurrencies[0].coinMinimalDenom, amount: "6" }, ], gas: "200000", }; - if (res?.vrf && res?.sessionId) { - return client.signRegisterSession(res.sessionId, modelName, fee, { denom: denom, amount: lockAmount }, res.vrf); + const lockBalance = { denom: denom, amount: lockAmount }; + if (!(resVrf?.vrf && resVrf?.sessionId)) { + throw new Error('Vrf seed is null'); + } + else if (!(resModel?.model && resModel.model?.tokenPrice)) { + throw new Error('Model tokenPrice is null'); + } + else { + return client.signRegisterSession(resVrf.sessionId, modelName, fee, lockBalance, resVrf.vrf, resModel.model.tokenPrice); } - throw new Error("Vrf seed is null"); } static requestAgentInfo(client, agentName, modelName) { console.log("modelName: ", modelName); @@ -51,6 +60,9 @@ class WalletOperation { const account = (await offlineSigner.getAccounts())[0]; return client.getVRFSeed(account.address); } + static requestModel(client, modelName) { + return client.getModel(modelName); + } } exports.default = WalletOperation; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0T3BlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3dhbGxldE9wZXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLHFDQUFzQztBQUN0QywrQ0FBNEM7QUFFNUMsa0VBQTBDO0FBQzFDLGdEQUF3QjtBQUd4QixNQUFNLGVBQWU7SUFDbkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQ3hCLFNBQW9CLEVBQ3BCLGFBQThDO1FBRTlDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksS0FBSyxDQUNiLG9FQUFvRSxDQUNyRSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDO1FBQ25DLE1BQU0sT0FBTyxHQUFHLENBQUMsTUFBTSxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2RCxPQUFPLG1CQUFVLENBQUMsaUJBQWlCLENBQ2pDLEdBQUcsRUFDSCxhQUFhLEVBQ2IsT0FBTyxDQUFDLE9BQU8sRUFDZixPQUFPLEVBQ1A7WUFDRSxRQUFRLEVBQUUsbUJBQVEsQ0FBQyxVQUFVLENBQzNCLFFBQVEsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUN0RDtZQUNELGtCQUFrQixFQUFFLENBQUM7WUFDckIsb0JBQW9CLEVBQUUsQ0FBQztTQUN4QixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQzFCLFFBQWdCLEVBQ2hCLE1BQWtCLEVBQ2xCLFNBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLEtBQWEsRUFDYixTQUFvQixFQUNwQixhQUFrQztRQUVsQyxzQkFBWSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVuQyxNQUFNLEdBQUcsR0FBRyxNQUFNLHNCQUFZLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFFM0UsTUFBTSxHQUFHLEdBQUc7WUFDVixNQUFNLEVBQUU7Z0JBQ04sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFO2FBQ3BFO1lBQ0QsR0FBRyxFQUFFLFFBQVE7U0FDZCxDQUFDO1FBRUYsSUFBSSxHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsRUFBRSxTQUFTLEVBQUUsQ0FBQztZQUMvQixPQUFPLE1BQU0sQ0FBQyxtQkFBbUIsQ0FDL0IsR0FBRyxDQUFDLFNBQVMsRUFDYixTQUFTLEVBQ1QsR0FBRyxFQUNILEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEVBQ3BDLEdBQUcsQ0FBQyxHQUFHLENBQ1IsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FDckIsTUFBOEIsRUFDOUIsU0FBaUIsRUFDakIsU0FBaUI7UUFFakIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFdEMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osTUFBTSxvQkFBb0IsQ0FBQztRQUM3QixDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUMsaUJBQWlCLENBQzdCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsY0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFDbEIsSUFBSSxVQUFVLEVBQUUsQ0FDakIsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQThCO1FBQ2pELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN4QyxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUN6QixNQUFrQixFQUNsQixhQUFrQztRQUVsQyxNQUFNLE9BQU8sR0FBZ0IsQ0FBQyxNQUFNLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQztDQUNGO0FBRUQsa0JBQWUsZUFBZSxDQUFDIn0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0T3BlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3dhbGxldE9wZXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLHFDQUFzQztBQUN0QywrQ0FBNEM7QUFFNUMsa0VBQTBDO0FBQzFDLGdEQUF3QjtBQUl4QixNQUFNLGVBQWU7SUFDbkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQ3hCLFNBQW9CLEVBQ3BCLGFBQThDO1FBRTlDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksS0FBSyxDQUNiLG9FQUFvRSxDQUNyRSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDO1FBQ25DLE1BQU0sT0FBTyxHQUFHLENBQUMsTUFBTSxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2RCxPQUFPLG1CQUFVLENBQUMsaUJBQWlCLENBQ2pDLEdBQUcsRUFDSCxhQUFhLEVBQ2IsT0FBTyxDQUFDLE9BQU8sRUFDZixPQUFPLEVBQ1A7WUFDRSxRQUFRLEVBQUUsbUJBQVEsQ0FBQyxVQUFVLENBQzNCLFFBQVEsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUN0RDtZQUNELGtCQUFrQixFQUFFLENBQUM7WUFDckIsb0JBQW9CLEVBQUUsQ0FBQztTQUN4QixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQzFCLFFBQWdCLEVBQ2hCLE1BQWtCLEVBQ2xCLFNBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLEtBQWEsRUFDYixTQUFvQixFQUNwQixhQUFrQztRQUVsQyxzQkFBWSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVuQyxNQUFNLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxH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 \ No newline at end of file From 308d1547c9b1d511f317456b4b833cc4883d2904 Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Thu, 19 Sep 2024 17:08:32 +0800 Subject: [PATCH 04/16] fix comments --- src/walletOperation.ts | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/walletOperation.ts b/src/walletOperation.ts index 34380e7..09ecb2b 100644 --- a/src/walletOperation.ts +++ b/src/walletOperation.ts @@ -46,28 +46,30 @@ class WalletOperation { offlineSigner: CosmjsOfflineSigner ) { EncryptUtils.generateKey(recordId); - const [resVrf, resModel] = await Promise.all([ EncryptUtils.requestVrf(recordId, client, offlineSigner), this.requestModel(client, modelName) ]) - + if (!resVrf?.vrf) { + throw new Error("Vrf is null"); + } + if (!resVrf?.sessionId) { + throw new Error("SessionId is null"); + } + if (!resModel?.model) { + throw new Error('Model is null'); + } + if (!resModel?.model?.tokenPrice) { + throw new Error('Model token price is null'); + } const fee = { amount: [ { denom: chainInfo.feeCurrencies[0].coinMinimalDenom, amount: "6" }, ], gas: "200000", }; - const lockBalance = { denom: denom, amount: lockAmount }; - - if (!(resVrf?.vrf && resVrf?.sessionId)) { - throw new Error('Vrf seed is null') - } else if (!(resModel?.model && resModel.model?.tokenPrice)) { - throw new Error('Model tokenPrice is null') - } else { - return client.signRegisterSession(resVrf.sessionId, modelName, fee, lockBalance, resVrf.vrf, resModel.model.tokenPrice); - } + return client.signRegisterSession(resVrf.sessionId, modelName, fee, lockBalance, resVrf.vrf, resModel.model.tokenPrice); } static requestAgentInfo( From f9ea588be872d95046ef386324d1185ad2ef8aed Mon Sep 17 00:00:00 2001 From: zhangyelong Date: Fri, 25 Oct 2024 11:10:28 +0800 Subject: [PATCH 05/16] fix async issue --- src/chatClient.ts | 7 +++++-- src/socket.ts | 10 ++++++++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/chatClient.ts b/src/chatClient.ts index 724dfb6..6509677 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -553,6 +553,8 @@ class ChatClient { reject(error); }); }); + + return this.lastGetAgentInfoPromise; } checkSignBroadcastResult(readableStream?: any) { @@ -569,8 +571,9 @@ class ChatClient { ); this.nesaClient .broadcastRegisterSession() - .then((result: any) => { - resolve(this.requestAgentInfo(result, readableStream)); + .then(async (result: any) => { + await this.requestAgentInfo(result, readableStream) + resolve(result); }) .catch((error: any) => { console.log("checkSignBroadcastResultError: ", error); diff --git a/src/socket.ts b/src/socket.ts index 3691fe0..1b6d73a 100644 --- a/src/socket.ts +++ b/src/socket.ts @@ -49,8 +49,14 @@ export const socket: ISocket = { if (this.signatureData === "") { handle?.onerror?.(new Error("SignatureData is null")); } else { - socket.heartbeat(); - handle?.onopen?.(); + socket.send({ + message: "hello", + signature_message: this.signatureData, + }, () => { + console.log("websocket opened"); + socket.heartbeat(); + handle?.onopen?.(); + }); } }; socket.web_socket!.onclose = (e) => { From c9c1197e14d3d5a15a37aa02b5bdf8eb30edc32e Mon Sep 17 00:00:00 2001 From: zhangyelong Date: Mon, 28 Oct 2024 19:06:58 +0800 Subject: [PATCH 06/16] fix error handle --- src/chatClient.ts | 29 ++++++++++++++++------------- src/socket.ts | 1 + src/walletOperation.ts | 2 +- 3 files changed, 18 insertions(+), 14 deletions(-) diff --git a/src/chatClient.ts b/src/chatClient.ts index 6509677..cb68279 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -93,7 +93,7 @@ class ChatClient { this.tokenPrice = 0; this.chatId = options.chatId || Date.now().toString(); - console.log("client options", options, this.chatId); + // console.log("client options", options, this.chatId); this.initWallet(); } @@ -147,7 +147,7 @@ class ChatClient { Buffer.from(this.privateKey, "hex"), "nesa" ); - console.log("private key wallet", wallet); + // console.log("private key wallet", wallet); this.offlineSigner = wallet; resolve(this.offlineSigner); this.getNesaClient(); @@ -160,7 +160,7 @@ class ChatClient { this.mnemonic, { prefix: "nesa", hdPaths: [stringToPath("m/44'/118'/0'/0/0")] } ); - console.log("private key wallet", wallet); + // console.log("private key wallet", wallet); this.offlineSigner = wallet; resolve(this.offlineSigner); this.getNesaClient(); @@ -496,7 +496,6 @@ class ChatClient { const selectAgent = agentInfo?.inferenceAgent; const { agentWsUrl, agentHeartbeatUrl } = getAgentUrls(selectAgent); - let firstInitHeartbeat = true; this.chatProgressReadable?.push({ @@ -521,13 +520,13 @@ class ChatClient { resolve(result); } }, - onerror: () => { + onerror: (e: Event | Error) => { readableStream?.push({ code: 319, message: "Agent connection error: " + selectAgent.url, }); readableStream?.push(null); - reject(new Error("Agent heartbeat packet connection failed")); + reject(new Error("Agent heartbeat packet connection failed, " + (e as Error)?.message)); }, }); } else { @@ -564,15 +563,17 @@ class ChatClient { new Error("Please wait for the requestSession registration result") ); } else { - console.log( - "checkSignBroadcastResult this.modelName", - this.modelName, - this.nesaClient.broadcastRegisterSession() - ); + // console.log( + // "checkSignBroadcastResult this.modelName", + // this.modelName, + // this.nesaClient.broadcastRegisterSession() + // ); this.nesaClient .broadcastRegisterSession() .then(async (result: any) => { - await this.requestAgentInfo(result, readableStream) + await this.requestAgentInfo(result, readableStream).catch((err: any) => { + reject(err); + }); resolve(result); }) .catch((error: any) => { @@ -684,7 +685,9 @@ class ChatClient { code: 200, message: result?.transactionHash, }); - this.checkSignBroadcastResult(readableStream).catch(() => {}); + this.checkSignBroadcastResult(readableStream).catch((err: any) => { + console.error("checkSignBroadcastResult error", err); + }); return readableStream; } diff --git a/src/socket.ts b/src/socket.ts index 1b6d73a..3195f50 100644 --- a/src/socket.ts +++ b/src/socket.ts @@ -61,6 +61,7 @@ export const socket: ISocket = { }; socket.web_socket!.onclose = (e) => { if (socket.ever_succeeded && !socket.forceClose) { + console.log("websocket closed, reconnecting"); clearInterval(socket.heartbeat_timer); setTimeout(() => { socket.init(handle); diff --git a/src/walletOperation.ts b/src/walletOperation.ts index 09ecb2b..2abe008 100644 --- a/src/walletOperation.ts +++ b/src/walletOperation.ts @@ -77,7 +77,7 @@ class WalletOperation { agentName: string, modelName: string ) { - console.log("modelName: ", modelName); + // console.log("modelName: ", modelName); if (!client) { throw "Client init failed"; From a49f6bdb9fe0b5e1b7cf6300288a891beb283fc4 Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Tue, 29 Oct 2024 14:56:28 +0800 Subject: [PATCH 07/16] fix payment --- build/.tsbuildinfo | 2 +- dist/chatClient.d.ts | 12 ++++++-- dist/chatClient.js | 65 +++++++++++++++++++++++++-------------- dist/client.d.ts | 1 + dist/client.js | 3 +- dist/default.config.d.ts | 4 +-- dist/default.config.js | 8 ++--- dist/socket.js | 13 ++++++-- dist/walletOperation.d.ts | 1 + dist/walletOperation.js | 26 +++++++++------- src/chatClient.ts | 54 ++++++++++++++++++++------------ src/client.ts | 1 + src/default.config.ts | 4 +-- 13 files changed, 125 insertions(+), 69 deletions(-) diff --git a/build/.tsbuildinfo b/build/.tsbuildinfo index 1d6b53a..f307d37 100644 --- a/build/.tsbuildinfo +++ b/build/.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"89d5c71600191bf39281855f60620ee6a74554babbc6566b555612281bb1a40f","signature":"320ab7fcc4c4beddde59aceebe26136aeeeede6b695f9fa5cdcf54e4965b18d3"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"7a0b78230e1475dfe816390a8ac8307f443191a16a47e7d66c5c1b842af40049","signature":"fe525a4018ce2e4d24852a1c4b00ef11e3d05b274c596e822c42436345f692ca"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"71fb46c506006f1967e7f4bf80e48939a943245876026508be5d695b41411bed","signature":"90a17908ba188b01a64b3d563a6a206145fbf196dfd351b569b7b30a398d183c"},{"version":"69b66496eaea7649272c5793b2835bdd5214a170af0edc451be6b7e6e7de43ba","signature":"9d15c9f74a05da1c82370bb4967ce3cfb9fe4cbcd67432a4326e4faf3d569e94"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"5cdd6f0d3cf68909f968efa357a521efdf604b654e9f3cd9ea87b0efd5f62f53","signature":"37992ec0c6d7b8b3b0ab87ec3e695cbccbc9abfa1530bbef699b4355b81c4c15"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"738f65f67fe0500163d0df149b5cd0fcb924483b58c88d25b4538c0815219dd5","signature":"474d1a3428a5354bd3a2841453d3196a69d6475144486fe46af31213bf775f32"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file +{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"2a9b253eb5b4c93a583ef1b787c79a0be2f6be92244abe9d5655e6503ab0a51d","signature":"9df8c66d2399b3c7f1f004f555c84105dc08a2938f1b8669f9396bd3f3e7a089"},{"version":"a9f6c748918c72e5bf9a0b131752613767a5ba6ae6bcc16e7fac82a061a6321e","signature":"9d15c9f74a05da1c82370bb4967ce3cfb9fe4cbcd67432a4326e4faf3d569e94"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"5cdd6f0d3cf68909f968efa357a521efdf604b654e9f3cd9ea87b0efd5f62f53","signature":"37992ec0c6d7b8b3b0ab87ec3e695cbccbc9abfa1530bbef699b4355b81c4c15"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"d4e5342e6a5c28249cdd0bfd1b158c1055b65451e287cb93ff51a51ab7ec5f82","signature":"97471dbc0e010ce14f65304c002f5c238540631daf2cfa5a008d03389df6e48c"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file diff --git a/dist/chatClient.d.ts b/dist/chatClient.d.ts index a6003d8..94a7a41 100644 --- a/dist/chatClient.d.ts +++ b/dist/chatClient.d.ts @@ -1,11 +1,16 @@ import { ChainInfo } from "@keplr-wallet/types"; import { NesaClient } from "./client"; +import { TokenPrice } from "./codec/agent/v1/agent"; +interface TokenNumber { + inputTokens: number; + outputTokens: number; +} interface ConfigOptions { modelName: string; lockAmount?: string; chainInfo?: ChainInfo; walletName?: string; - singlePaymentAmount?: string; + priceUnit?: string; lowBalance?: string; privateKey?: string; mnemonic?: string; @@ -25,7 +30,7 @@ declare class ChatClient { modelName: string; chainInfo: ChainInfo; lockAmount: string; - singlePaymentAmount: string; + priceUnit: string; lowBalance: string; lockAmountDenom: string; chatId: string; @@ -57,7 +62,8 @@ declare class ChatClient { getChainParams(nesaClient: NesaClient): any; version(): string; getSignaturePayment(): string; - checkSinglePaymentAmount(): string; + checkSinglePaymentAmount(singlePaymentAmount: string): string; + computePaymentAmount(tokenNumber: TokenNumber, tokenPrice: TokenPrice): string; requestChatQueue(readableStream: any, question: QuestionParams): void; requestCloseHeartbeat(): void; requestAgentInfo(result: any, readableStream: any): any; diff --git a/dist/chatClient.js b/dist/chatClient.js index 3b1cf0b..925859b 100644 --- a/dist/chatClient.js +++ b/dist/chatClient.js @@ -28,8 +28,7 @@ class ChatClient { this.chainInfo = options.chainInfo || default_config_1.defaultChainInfo; this.lockAmount = options.lockAmount || default_config_1.defaultLockAmount; this.signaturePayment = {}; - this.singlePaymentAmount = - options.singlePaymentAmount || default_config_1.defaultSinglePaymentAmount; + this.priceUnit = options.priceUnit || default_config_1.defaultPriceUnit; this.lowBalance = options.lowBalance || default_config_1.defaultLowBalance; this.lockAmountDenom = ""; this.walletName = options.walletName || ""; @@ -38,9 +37,8 @@ class ChatClient { this.isEverRequestSession = false; this.isBrowser = typeof window !== "undefined"; this.isBrowser && (window.nesaSdkVersion = default_config_1.sdkVersion); - this.tokenPrice = 0; this.chatId = options.chatId || Date.now().toString(); - console.log("client options", options, this.chatId); + // console.log("client options", options, this.chatId); this.initWallet(); } initWallet() { @@ -81,7 +79,7 @@ class ChatClient { else { if (this.privateKey) { const wallet = await proto_signing_1.DirectSecp256k1Wallet.fromKey(Buffer.from(this.privateKey, "hex"), "nesa"); - console.log("private key wallet", wallet); + // console.log("private key wallet", wallet); this.offlineSigner = wallet; resolve(this.offlineSigner); this.getNesaClient(); @@ -89,7 +87,7 @@ class ChatClient { } if (this.mnemonic) { const wallet = await proto_signing_1.DirectSecp256k1HdWallet.fromMnemonic(this.mnemonic, { prefix: "nesa", hdPaths: [(0, crypto_1.stringToPath)("m/44'/118'/0'/0/0")] }); - console.log("private key wallet", wallet); + // console.log("private key wallet", wallet); this.offlineSigner = wallet; resolve(this.offlineSigner); this.getNesaClient(); @@ -155,10 +153,10 @@ class ChatClient { this.signaturePayment[this.totalSignedPayment] = signaturePayment; return signaturePayment; } - checkSinglePaymentAmount() { + checkSinglePaymentAmount(singlePaymentAmount) { if (new bignumber_js_1.BigNumber(this.totalSignedPayment).isLessThanOrEqualTo(this.lowBalance)) { this.totalSignedPayment = Number(new bignumber_js_1.BigNumber(this.totalSignedPayment) - .plus(this.singlePaymentAmount) + .plus(singlePaymentAmount) .toFixed(0, 1)); return this.getSignaturePayment(); } @@ -170,10 +168,10 @@ class ChatClient { return this.getSignaturePayment(); } if (new bignumber_js_1.BigNumber(this.totalSignedPayment) - .plus(this.singlePaymentAmount) + .plus(singlePaymentAmount) .isLessThanOrEqualTo(this.lockAmount)) { this.totalSignedPayment = Number(new bignumber_js_1.BigNumber(this.totalSignedPayment) - .plus(this.singlePaymentAmount) + .plus(singlePaymentAmount) .toFixed(0, 1)); } else { @@ -183,6 +181,11 @@ class ChatClient { } return this.getSignaturePayment(); } + computePaymentAmount(tokenNumber, tokenPrice) { + const inputAmount = new bignumber_js_1.BigNumber(tokenNumber.inputTokens).multipliedBy(tokenPrice.inputPrice.amount); + const outputAmount = new bignumber_js_1.BigNumber(tokenNumber.outputTokens).multipliedBy(tokenPrice.outputPrice.amount); + return inputAmount.plus(outputAmount).dividedBy(this.priceUnit).toFixed(0, 1); + } requestChatQueue(readableStream, question) { this.isChatting = true; this.chatSeq += 1; @@ -279,7 +282,11 @@ class ChatClient { }); messageTimes += 1; } - const signedMessage = this.checkSinglePaymentAmount(); + const singlePaymentAmount = this.computePaymentAmount({ + inputTokens: messageJson?.input_tokens, + outputTokens: messageJson?.output_tokens, + }, this.tokenPrice); + const signedMessage = this.checkSinglePaymentAmount(singlePaymentAmount); const total_payment = { amount: this.totalSignedPayment, denom: this.chainInfo.feeCurrencies[0].coinMinimalDenom, @@ -290,7 +297,7 @@ class ChatClient { session_id: messageJson?.session_id || "", total_payment, }); - this.totalUsedPayment += this.tokenPrice; + this.totalUsedPayment = new bignumber_js_1.BigNumber(this.totalUsedPayment).plus(singlePaymentAmount).toNumber(); if (new bignumber_js_1.BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount)) { readableStream.push({ code: 205, @@ -398,13 +405,13 @@ class ChatClient { resolve(result); } }, - onerror: () => { + onerror: (e) => { readableStream?.push({ code: 319, message: "Agent connection error: " + selectAgent.url, }); readableStream?.push(null); - reject(new Error("Agent heartbeat packet connection failed")); + reject(new Error("Agent heartbeat packet connection failed, " + e?.message)); }, }); } @@ -429,6 +436,7 @@ class ChatClient { reject(error); }); }); + return this.lastGetAgentInfoPromise; } checkSignBroadcastResult(readableStream) { return new Promise((resolve, reject) => { @@ -436,11 +444,18 @@ class ChatClient { reject(new Error("Please wait for the requestSession registration result")); } else { - console.log("checkSignBroadcastResult this.modelName", this.modelName, this.nesaClient.broadcastRegisterSession()); + // console.log( + // "checkSignBroadcastResult this.modelName", + // this.modelName, + // this.nesaClient.broadcastRegisterSession() + // ); this.nesaClient .broadcastRegisterSession() - .then((result) => { - resolve(this.requestAgentInfo(result, readableStream)); + .then(async (result) => { + await this.requestAgentInfo(result, readableStream).catch((err) => { + reject(err); + }); + resolve(result); }) .catch((error) => { console.log("checkSignBroadcastResultError: ", error); @@ -472,9 +487,8 @@ class ChatClient { throw new Error("Registering session, please wait"); } if (!this.lockAmount || - new bignumber_js_1.BigNumber(this.lockAmount).isNaN() || - new bignumber_js_1.BigNumber(this.lockAmount).isLessThan(this.singlePaymentAmount)) { - throw new Error("LockAmount invalid value or less than singlePaymentAmount"); + new bignumber_js_1.BigNumber(this.lockAmount).isNaN()) { + throw new Error("LockAmount invalid value"); } this.isEverRequestSession = true; const readableStream = new stream_browserify_1.Readable({ objectMode: true }); @@ -493,7 +507,6 @@ class ChatClient { }); return readableStream; } - this.tokenPrice = params?.params?.tokenPrice?.low; if (new bignumber_js_1.BigNumber(this.lockAmount).isLessThan(params?.params?.userMinimumLock?.amount)) { readableStream.push({ code: 311, @@ -514,7 +527,10 @@ class ChatClient { code: 200, message: result?.transactionHash, }); - this.checkSignBroadcastResult(readableStream).catch(() => { }); + this.tokenPrice = result?.tokenPrice; + this.checkSignBroadcastResult(readableStream).catch((err) => { + console.error("checkSignBroadcastResult error", err); + }); return readableStream; } this.isRegisteringSession = false; @@ -565,6 +581,9 @@ class ChatClient { if (!this.isEverRequestSession) { throw new Error("Please call requestSession first to complete Session registration"); } + if (!this.tokenPrice) { + throw new Error("Please wait for the session registration to complete before requesting chat"); + } if (!this.agentUrl) { const result = await this.checkSignBroadcastResult(); console.log("checkSignBroadcastResult-result: ", result); @@ -590,4 +609,4 @@ class ChatClient { } } exports.default = ChatClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQXlCcEUsTUFBTSxVQUFVO0lBK0JkLFlBQVksT0FBc0I7UUF0QjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWdCN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsbUJBQW1CO1lBQ3RCLE9BQU8sQ0FBQyxtQkFBbUIsSUFBSSwyQ0FBMEIsQ0FBQztRQUM1RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLFVBQVUs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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQStCcEUsTUFBTSxVQUFVO0lBK0JkLFlBQVksT0FBc0I7UUF0QjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWdCN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksaUNBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLGtDQUFpQixDQUFDO1FBQzFELElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcs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 \ No newline at end of file diff --git a/dist/client.d.ts b/dist/client.d.ts index e4e6775..e3f16a4 100644 --- a/dist/client.d.ts +++ b/dist/client.d.ts @@ -57,6 +57,7 @@ export declare class NesaClient { broadcastRegisterSession(): any; signRegisterSession(sessionId: string, modelName: string, fee: StdFee, lockBalance: Coin, vrf: VRF, tokenPrice: TokenPrice): Promise<{ sessionId: string; + tokenPrice: TokenPrice; transactionHash: string; }>; registerSession(sessionId: string, modelName: string, lockBalance: Coin, vrf: VRF, tokenPrice: TokenPrice): Promise; diff --git a/dist/client.js b/dist/client.js index 6ad61d6..09fd89b 100644 --- a/dist/client.js +++ b/dist/client.js @@ -145,6 +145,7 @@ class NesaClient { this.broadcastRegisterSession(); return { sessionId, + tokenPrice, transactionHash: (0, encoding_1.toHex)((0, crypto_1.sha256)(Buffer.from(hex, "hex"))).toUpperCase(), }; } @@ -315,4 +316,4 @@ class NesaClient { } } exports.NesaClient = NesaClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5REFBZ0U7QUFDaEUsK0NBUTBCO0FBQzFCLDJEQUFtRTtBQUNuRSxxQ0FBOEM7QUFDOUMsbUNBQXdEO0FBQ3hELDRDQU82QjtBQUc3Qix1Q0FBa0U7QUFFbEUsMERBQTBEO0FBQzFELDJDQUF3QztBQUN4QywrQ0FBeUM7QUFDekMsMENBQXFFO0FBV3JFLFNBQVMsWUFBWTtJQUNuQixPQUFPLElBQUksd0JBQVEsQ0FBQztRQUNsQixHQUFHLCtCQUFvQjtRQUN2QixDQUFDLDJCQUEyQixFQUFFLG9CQUFlLENBQUM7UUFDOUMsb0RBQW9EO1FBQ3BELENBQUMscUNBQXFDLEVBQUUsOEJBQXlCLENBQUM7UUFDbEUsQ0FBQyw4QkFBOEIsRUFBRSx1QkFBa0IsQ0FBQztRQUNwRCxDQUFDLDRCQUE0QixFQUFFLHFCQUFnQixDQUFDO1FBQ2hELENBQUMsZUFBZSxFQUFFLFFBQUcsQ0FBQztRQUN0QixDQUFDLDBCQUEwQixFQUFFLHFCQUFnQixDQUFDO1FBQzlDLENBQUMsd0JBQXdCLEVBQUUsbUJBQWMsQ0FBQztLQUMzQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBZUQsTUFBYSxVQUFVO0lBc0JkLE1BQU0sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQ25DLFFBQWdCLEVBQ2hCLE1BQXFCLEVBQ3JCLGFBQXFCLEVBQ3JCLE9BQTJCLEVBQzNCLE9BQTBCO1FBRTFCLE1BQU0sYUFBYSxHQUFHO1lBQ3BCLEdBQUcsT0FBTztZQUNWLFFBQVEsRUFBRSxZQUFZLEVBQUU7U0FDekIsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBQSw2QkFBWSxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sYUFBYSxHQUFHLE1BQU0sZ0NBQXFCLENBQUMsZ0JBQWdCLENBQ2hFLFFBQVEsRUFDUixNQUFNLEVBQ04sYUFBYSxDQUNkLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixPQUFPLEdBQUcsTUFBTSxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0MsQ0FBQztRQUVELE9BQU8sSUFBSSxVQUFVLENBQ25CLGFBQWEsRUFDYixRQUFRLEVBQ1IsYUFBYSxFQUNiLE9BQU8sRUFDUCxPQUFPLENBQ1IsQ0FBQztJQUNKLENBQUM7SUFFRCxZQUNFLGFBQW9DLEVBQ3BDLFFBQXFCLEVBQ3JCLGFBQXFCLEVBQ3JCLE9BQWUsRUFDZixPQUEwQjtRQXZEWixnQkFBVyxHQUN6QixFQUFFLENBQUM7UUFFVyxpQkFBWSxHQUV4QixFQUFFLENBQUM7UUFFUyxjQUFTLEdBQXlDLEVBQUUsQ0FBQztRQUVyRCx5QkFBb0IsR0FBb0MsRUFBRSxDQUFDO1FBZ0R6RSxJQUFJLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQztRQUUxQixJQUFJLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQztRQUVuQixJQUFJLENBQUMsS0FBSyxHQUFHLHNCQUFXLENBQUMsY0FBYyxDQUNyQyxRQUFRLEVBQ1IsNkJBQW1CLEVBQ25CLDJCQUFpQixDQUNsQixDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFFbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLG1CQUFVLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDO1FBQ3JELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxPQUFPLENBQUMsb0JBQW9CLENBQUM7SUFDM0QsQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFZLENBQ3ZCLFNBQWlCLEVBQ2pCLE1BQWM7UUFFZCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNyQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3pDLE1BQU0sZUFBZSxHQUFHO1lBQ3RCLE9BQU8sRUFBRSwyQkFBMkI7WUFDcEMsS0FBSyxFQUFFLG9CQUFlLENBQUMsV0FBVyxDQUFDO2dCQUNqQyxTQUFTO2dCQUNULE1BQU07YUFDUCxDQUFDO1NBQ0gsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQzlELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FDN0MsYUFBYSxFQUNiLENBQUMsZUFBZSxDQUFDLEVBQ2pCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFBLDZCQUFrQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUNELE9BQU87WUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtTQUN0QixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxzQkFBc0IsQ0FDakMsR0FBVyxFQUNYLE9BQWE7UUFFYixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDekMsTUFBTSx5QkFBeUIsR0FBRztZQUNoQyxPQUFPLEVBQUUscUNBQXFDO1lBQzlDLEtBQUssRUFBRSw4QkFBeUIsQ0FBQyxXQUFXLENBQUM7Z0JBQzNDLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixHQUFHO2dCQUNILE9BQU87YUFDUixDQUFDO1NBQ0gsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDBCQUEwQixFQUFFLHlCQUF5QixDQUFDLENBQUM7UUFDekUsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUM3QyxhQUFhLEVBQ2IsQ0FBQyx5QkFBeUIsQ0FBQyxFQUMzQixNQUFNLENBQ1AsQ0FBQztRQUNGLElBQUksSUFBQSw2QkFBa0IsRUFBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsSUFBQSxxQ0FBNkIsRUFBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFFRCxPQUFPO1lBQ0wsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1lBQ3JCLGVBQWUsRUFBRSxNQUFNLENBQUMsZUFBZTtZQUN2QyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07U0FDdEIsQ0FBQztJQUNKLENBQUM7SUFFTSx3QkFBd0I7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQixPQUFPLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDMUIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDL0IsQ0FBQztRQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUN0RCxJQUFJLENBQUMsSUFBSTtpQkFDTixXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO2lCQUNwRSxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDZixJQUFJLElBQUEsNkJBQWtCLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztvQkFDL0IsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLElBQUEscUNBQTZCLEVBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzRCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sT0FBTyxDQUFDO3dCQUNOLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTt3QkFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO3dCQUN2QyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07d0JBQ3JCLE9BQU8sRUFBRSwrQkFBMEIsQ0FBQyxNQUFNLENBQ3hDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUM5QixDQUFDLE9BQU87cUJBQ1YsQ0FBQyxDQUFDO2dCQUNMLENBQUM7WUFDSCxDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sS0FBSyxDQUFDLG1CQUFtQixDQUM5QixTQUFpQixFQUNqQixTQUFpQixFQUNqQixHQUFXLEVBQ1gsV0FBaUIsRUFDakIsR0FBUSxFQUNSLFVBQXNCO1FBRXRCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDeEMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN6QyxNQUFNLGtCQUFrQixHQUFHO1lBQ3pCLE9BQU8sRUFBRSw4QkFBOEI7WUFDdkMsS0FBSyxFQUFFLHVCQUFrQixDQUFDLFdBQVcsQ0FBQztnQkFDcEMsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFNBQVM7Z0JBQ1QsU0FBUztnQkFDVCxXQUFXO2dCQUNYLEdBQUc7Z0JBQ0gsVUFBVTthQUNYLENBQUM7U0FDSCxDQUFDO1FBQ0YsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDckMsYUFBYSxFQUNiLENBQUMsa0JBQWtCLENBQUMsRUFDcEIsR0FBRyxFQUNILEVBQUUsQ0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFFN0IsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FDckIsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUN4RCxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBRWhDLE9BQU87WUFDTCxTQUFTO1lBQ1QsZUFBZSxFQUFFLElBQUEsZ0JBQUssRUFBQyxJQUFBLGVBQU0sRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFO1NBQ3RFLENBQUM7SUFDSixDQUFDO0lBRU0sS0FBSyxDQUFDLGVBQWUsQ0FDMUIsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsV0FBaUIsRUFDakIsR0FBUSxFQUNSLFVBQXNCO1FBRXRCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDeEMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN6QyxNQUFNLGtCQUFrQixHQUFHO1lBQ3pCLE9BQU8sRUFBRSw4QkFBOEI7WUFDdkMsS0FBSyxFQUFFLHVCQUFrQixDQUFDLFdBQVcsQ0FBQztnQkFDcEMsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFNBQVM7Z0JBQ1QsU0FBUztnQkFDVCxXQUFXO2dCQUNYLEdBQUc7Z0JBQ0gsVUFBVTthQUNYLENBQUM7U0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUNwRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQzdDLGFBQWEsRUFDYixDQUFDLGtCQUFrQixDQUFDLEVBQ3BCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFBLDZCQUFrQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixPQUFPLEVBQUUsK0JBQTBCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDO2lCQUN0RSxPQUFPO1NBQ1gsQ0FBQztJQUNKLENBQUM7SUFFTSxLQUFLLENBQUMsYUFBYSxDQUN4QixTQUFpQixFQUNqQixTQUFxQixFQUNyQixPQUFpQjtRQUVqQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRztZQUN2QixPQUFPLEVBQUUsNEJBQTRCO1lBQ3JDLEtBQUssRUFBRSxxQkFBZ0IsQ0FBQyxXQUFXLENBQUM7Z0JBQ2xDLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixTQUFTO2dCQUNULFNBQVM7Z0JBQ1QsT0FBTzthQUNSLENBQUM7U0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUNoRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQzdDLGFBQWEsRUFDYixDQUFDLGdCQUFnQixDQUFDLEVBQ2xCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFBLDZCQUFrQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtTQUN0QixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxhQUFhLENBQ3hCLE9BQWUsRUFDZixTQUFpQixFQUNqQixTQUFtQixFQUNuQixTQUFtQixFQUNuQixVQUF1QjtRQUV2QixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRztZQUN2QixPQUFPLEVBQUUsMEJBQTBCO1lBQ25DLEtBQUssRUFBRSxxQkFBZ0IsQ0FBQyxXQUFXLENBQUM7Z0JBQ2xDLE9BQU87Z0JBQ1AsU0FBUztnQkFDVCxTQUFTO2dCQUNULFNBQVM7Z0JBQ1QsVUFBVTthQUNYLENBQUM7U0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUNoRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQzdDLGFBQWEsRUFDYixDQUFDLGdCQUFnQixDQUFDLEVBQ2xCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFBLDZCQUFrQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtTQUN0QixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxXQUFXLENBQ3RCLFNBQWlCLEVBQ2pCLFNBQW1CLEVBQ25CLFVBQXNCO1FBRXRCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3BDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDekMsTUFBTSxjQUFjLEdBQUc7WUFDckIsT0FBTyxFQUFFLHdCQUF3QjtZQUNqQyxLQUFLLEVBQUUsbUJBQWMsQ0FBQyxXQUFXLENBQUM7Z0JBQ2hDLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixTQUFTO2dCQUNULFNBQVM7Z0JBQ1QsVUFBVTthQUNYLENBQUM7U0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDNUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUM3QyxhQUFhLEVBQ2IsQ0FBQyxjQUFjLENBQUMsRUFDaEIsTUFBTSxDQUNQLENBQUM7UUFDRixJQUFJLElBQUEsNkJBQWtCLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLElBQUEscUNBQTZCLEVBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBRUQsT0FBTztZQUNMLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixlQUFlLEVBQUUsTUFBTSxDQUFDLGVBQWU7WUFDdkMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1NBQ3RCLENBQUM7SUFDSixDQUFDO0lBRU0sS0FBSyxDQUFDLFNBQVM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvQyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLGlCQUFpQixDQUM1QixPQUFlLEVBQ2YsU0FBaUIsRUFDakIsS0FBVyxFQUNYLEdBQWU7UUFFZixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUN6RCxPQUFPLEVBQ1AsU0FBUyxFQUNULEtBQUssRUFDTCxHQUFHLENBQ0osQ0FBQztRQUNGLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZSxDQUMxQixTQUFpQixFQUNqQixNQUF3QjtRQUV4QixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUN2RCxTQUFTLEVBQ1QsTUFBTSxDQUNQLENBQUM7UUFDRixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFpQjtRQUN2QyxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoRSxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLGlCQUFpQixDQUM1QixPQUFlLEVBQ2YsTUFBaUMsRUFDakMsVUFBZ0IsRUFDaEIsS0FBVyxFQUNYLFNBQWtCLEVBQ2xCLEdBQWU7UUFFZixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUN6RCxPQUFPLEVBQ1AsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULEdBQUcsQ0FDSixDQUFDO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxxQkFBcUIsQ0FDaEMsT0FBZSxFQUNmLEtBQVcsRUFDWCxHQUFlO1FBRWYsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FDN0QsT0FBTyxFQUNQLEtBQUssRUFDTCxHQUFHLENBQ0osQ0FBQztRQUNGLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQWU7UUFDckMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFZO1FBQ3ZCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDN0MsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBaUI7UUFDckMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDeEQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxjQUFjLENBQUMsU0FBaUIsRUFBRSxVQUF3QjtRQUNyRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUMsVUFBVSxDQUFDLENBQUM7UUFDekUsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBYztRQUNqQyxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFjO1FBQ2xDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZSxDQUFDLE1BQWM7UUFDekMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxVQUF3QjtRQUN0RCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25FLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsd0JBQXdCLENBQ25DLGFBQTRCLEVBQzVCLFlBQTBCLEVBQzFCLEtBQWEsRUFDYixHQUFlO1FBRWYsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FDMUQsYUFBYSxFQUNiLFlBQVksRUFDWixLQUFLLEVBQ0wsR0FBRyxDQUNKLENBQUM7UUFDRixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLHdCQUF3QixDQUFDLE1BQWM7UUFDbEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRSxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQWM7UUFDM0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5RCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0Y7QUFuZUQsZ0NBbWVDIn0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5REFBZ0U7QUFDaEUsK0NBUTBCO0FBQzFCLDJEQUFtRTtBQUNuRSxxQ0FBOEM7QUFDOUMsbUNBQXdEO0FBQ3hELDRDQU82QjtBQUc3Qix1Q0FBa0U7QUFFbEUsMERBQTBEO0FBQzFELDJDQUF3QztBQUN4QywrQ0FBeUM7QUFDekMsMENBQXFFO0FBV3JFLFNBQVMsWUFBWTtJQUNuQixPQUFPLElBQUksd0JBQVEsQ0FBQztRQUNsQixHQUFHLCtCQUFvQjtRQUN2QixDQUFDLDJCQUEyQixFQUFFLG9CQUFlLENBQUM7UUFDOUMsb0RBQW9EO1FBQ3BELENBQUMscUNBQXFDLEVBQUUsOEJBQXlCLENBQUM7UUFDbEUsQ0FBQyw4QkFBOEIsRUFBRSx1QkFBa0IsQ0FBQztRQUNwRCxDQUFDLDRCQUE0QixFQUFFLHFCQUFnQixDQUFDO1FBQ2hELENBQUMsZUFBZSxFQUFFLFFBQUcsQ0FBQztRQUN0QixDQUFDLDBCQUEwQixFQUFFLHFCQUFnQixDQUFDO1FBQzlDLENBQUMsd0JBQXdCLEVBQUUsbUJBQWMsQ0FBQztLQUMzQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBZUQsTUFBYSxVQUFVO0lBc0JkLE1BQU0sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQ25DLFFBQWdCLEVBQ2hCLE1BQXFCLEVBQ3JCLGFBQXFCLEVBQ3JCLE9BQTJCLEVBQzNCLE9BQTBCO1FBRTFCLE1BQU0sYUFBYSxHQUFHO1lBQ3BCLEdBQUcsT0FBTztZQUNWLFFBQVEsRUFBRSxZQUFZLEVBQUU7U0FDekIsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBQSw2QkFBWSxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sYUFBYSxHQUFHLE1BQU0sZ0NBQXFCLENBQUMsZ0JBQWdCLENBQ2hFLFFBQVEsRUFDUixNQUFNLEVBQ04sYUFBYSxD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 \ No newline at end of file diff --git a/dist/default.config.d.ts b/dist/default.config.d.ts index 3150b94..6dffc96 100644 --- a/dist/default.config.d.ts +++ b/dist/default.config.d.ts @@ -2,7 +2,7 @@ import { ChainInfo } from "@keplr-wallet/types"; declare const defaultAgentUrl = "wss://agent.nesa.ai/pingws"; declare const sdkVersion = "1.0.0"; declare const defaultLockAmount = "1000000"; -declare const defaultSinglePaymentAmount = "100000"; +declare const defaultPriceUnit = "100000"; declare const defaultLowBalance = "10000"; declare const defaultChainInfo: ChainInfo; -export { defaultAgentUrl, defaultLockAmount, defaultChainInfo, sdkVersion, defaultSinglePaymentAmount, defaultLowBalance, }; +export { defaultAgentUrl, defaultLockAmount, defaultChainInfo, sdkVersion, defaultPriceUnit, defaultLowBalance, }; diff --git a/dist/default.config.js b/dist/default.config.js index 43cb969..1834943 100644 --- a/dist/default.config.js +++ b/dist/default.config.js @@ -1,14 +1,14 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.defaultLowBalance = exports.defaultSinglePaymentAmount = exports.sdkVersion = exports.defaultChainInfo = exports.defaultLockAmount = exports.defaultAgentUrl = void 0; +exports.defaultLowBalance = exports.defaultPriceUnit = exports.sdkVersion = exports.defaultChainInfo = exports.defaultLockAmount = exports.defaultAgentUrl = void 0; const defaultAgentUrl = "wss://agent.nesa.ai/pingws"; exports.defaultAgentUrl = defaultAgentUrl; const sdkVersion = '1.0.0'; exports.sdkVersion = sdkVersion; const defaultLockAmount = '1000000'; exports.defaultLockAmount = defaultLockAmount; -const defaultSinglePaymentAmount = '100000'; -exports.defaultSinglePaymentAmount = defaultSinglePaymentAmount; +const defaultPriceUnit = '100000'; +exports.defaultPriceUnit = defaultPriceUnit; const defaultLowBalance = '10000'; exports.defaultLowBalance = defaultLowBalance; const defaultChainInfo = { @@ -68,4 +68,4 @@ const defaultChainInfo = { }, }; exports.defaultChainInfo = defaultChainInfo; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGVmYXVsdC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsTUFBTSxlQUFlLEdBQUcsNEJBQTRCLENBQUM7QUFvRWpELDBDQUFlO0FBbkVuQixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUE7QUFzRXRCLGdDQUFVO0FBckVkLE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFBO0FBbUUvQiw4Q0FBaUI7QUFsRXJCLE1BQU0sMEJBQTBCLEdBQUcsUUFBUSxDQUFBO0FBcUV2QyxnRUFBMEI7QUFwRTlCLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFBO0FBcUU3Qiw4Q0FBaUI7QUFwRXJCLE1BQU0sZ0JBQWdCLEdBQWM7SUFDaEMsT0FBTyxFQUFFLGdCQUFnQjtJQUN6QixTQUFTLEVBQUUsY0FBYztJQUN6QixtQkFBbUIsRUFDZiw4RkFBOEY7SUFDbEcsSUFBSSxFQUFFLDBCQUEwQjtJQUNoQyxHQUFHLEVBQUUsMEJBQTBCO0lBQy9CLFlBQVksRUFBRTtRQUNWLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFLGFBQWE7UUFDcEIsT0FBTyxFQUFFLGtCQUFrQjtLQUM5QjtJQUVELEtBQUssRUFBRTtRQUNILFFBQVEsRUFBRSxHQUFHO0tBQ2hCO0lBQ0QsWUFBWSxFQUFFO1FBQ1YsbUJBQW1CLEVBQUUsTUFBTTtRQUMzQixrQkFBa0IsRUFBRSxNQUFNLEdBQUcsS0FBSztRQUNsQyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsU0FBUztRQUN2QyxrQkFBa0IsRUFBRSxNQUFNLEdBQUcsWUFBWTtRQUN6QyxvQkFBb0IsRUFBRSxNQUFNLEdBQUcsU0FBUztRQUN4QyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsWUFBWTtLQUM3QztJQUNELFVBQVUsRUFBRTtRQUNSO1lBQ0ksU0FBUyxFQUFFLEtBQUs7WUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixZQUFZLEVBQUUsQ0FBQztZQUNmLFdBQVcsRUFBRSxNQUFNO1lBQ25CLFlBQVksRUFDUiw0RkFBNEY7U0FDbkc7S0FDSjtJQUNELGFBQWEsRUFBRTtRQUNYO1lBQ0ksU0FBUyxFQUFFLEtBQUs7WUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixZQUFZLEVBQUUsQ0FBQztZQUNmLFdBQVcsRUFBRSxNQUFNO1lBQ25CLFlBQVksRUFDUiw0RkFBNEY7WUFDaEcsWUFBWSxFQUFFO2dCQUNWLEdBQUcsRUFBRSxJQUFJO2dCQUNULE9BQU8sRUFBRSxJQUFJO2dCQUNiLElBQUksRUFBRSxHQUFHO2FBQ1o7U0FDSjtLQUNKO0lBQ0QsYUFBYSxFQUFFO1FBQ1gsU0FBUyxFQUFFLEtBQUs7UUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtRQUN4QixZQUFZLEVBQUUsQ0FBQztRQUNmLFdBQVcsRUFBRSxNQUFNO1FBQ25CLFlBQVksRUFDUiw0RkFBNEY7UUFDaEcsWUFBWTtRQUNaLFlBQVksRUFBRSxFQUFFO1FBQ2hCLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQztLQUN6QjtDQUNKLENBQUM7QUFLRSw0Q0FBZ0IifQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGVmYXVsdC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsTUFBTSxlQUFlLEdBQUcsNEJBQTRCLENBQUM7QUFvRWpELDBDQUFlO0FBbkVuQixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUE7QUFzRXRCLGdDQUFVO0FBckVkLE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFBO0FBbUUvQiw4Q0FBaUI7QUFsRXJCLE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxDQUFBO0FBcUU3Qiw0Q0FBZ0I7QUFwRXBCLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFBO0FBcUU3Qiw4Q0FBaUI7QUFwRXJCLE1BQU0sZ0JBQWdCLEdBQWM7SUFDaEMsT0FBTyxFQUFFLGdCQUFnQjtJQUN6QixTQUFTLEVBQUUsY0FBYztJQUN6QixtQkFBbUIsRUFDZiw4RkFBOEY7SUFDbEcsSUFBSSxFQUFFLDBCQUEwQjtJQUNoQyxHQUFHLEVBQUUsMEJBQTBCO0lBQy9CLFlBQVksRUFBRTtRQUNWLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFLGFBQWE7UUFDcEIsT0FBTyxFQUFFLGtCQUFrQjtLQUM5QjtJQUVELEtBQUssRUFBRTtRQUNILFFBQVEsRUFBRSxHQUFHO0tBQ2hCO0lBQ0QsWUFBWSxFQUFFO1FBQ1YsbUJBQW1CLEVBQUUsTUFBTTtRQUMzQixrQkFBa0IsRUFBRSxNQUFNLEdBQUcsS0FBSztRQUNsQyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsU0FBUztRQUN2QyxrQkFBa0IsRUFBRSxNQUFNLEdBQUcsWUFBWTtRQUN6QyxvQkFBb0IsRUFBRSxNQUFNLEdBQUcsU0FBUztRQUN4QyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsWUFBWTtLQUM3QztJQUNELFVBQVUsRUFBRTtRQUNSO1lBQ0ksU0FBUyxFQUFFLEtBQUs7WUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixZQUFZLEVBQUUsQ0FBQztZQUNmLFdBQVcsRUFBRSxNQUFNO1lBQ25CLFlBQVksRUFDUiw0RkFBNEY7U0FDbkc7S0FDSjtJQUNELGFBQWEsRUFBRTtRQUNYO1lBQ0ksU0FBUyxFQUFFLEtBQUs7WUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixZQUFZLEVBQUUsQ0FBQztZQUNmLFdBQVcsRUFBRSxNQUFNO1lBQ25CLFlBQVksRUFDUiw0RkFBNEY7WUFDaEcsWUFBWSxFQUFFO2dCQUNWLEdBQUcsRUFBRSxJQUFJO2dCQUNULE9BQU8sRUFBRSxJQUFJO2dCQUNiLElBQUksRUFBRSxHQUFHO2FBQ1o7U0FDSjtLQUNKO0lBQ0QsYUFBYSxFQUFFO1FBQ1gsU0FBUyxFQUFFLEtBQUs7UUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtRQUN4QixZQUFZLEVBQUUsQ0FBQztRQUNmLFdBQVcsRUFBRSxNQUFNO1FBQ25CLFlBQVksRUFDUiw0RkFBNEY7UUFDaEcsWUFBWTtRQUNaLFlBQVksRUFBRSxFQUFFO1FBQ2hCLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQztLQUN6QjtDQUNKLENBQUM7QUFLRSw0Q0FBZ0IifQ== \ No newline at end of file diff --git a/dist/socket.js b/dist/socket.js index cdaf922..742dbb6 100644 --- a/dist/socket.js +++ b/dist/socket.js @@ -33,12 +33,19 @@ exports.socket = { handle?.onerror?.(new Error("SignatureData is null")); } else { - exports.socket.heartbeat(); - handle?.onopen?.(); + exports.socket.send({ + message: "hello", + signature_message: this.signatureData, + }, () => { + console.log("websocket opened"); + exports.socket.heartbeat(); + handle?.onopen?.(); + }); } }; exports.socket.web_socket.onclose = (e) => { if (exports.socket.ever_succeeded && !exports.socket.forceClose) { + console.log("websocket closed, reconnecting"); clearInterval(exports.socket.heartbeat_timer); setTimeout(() => { exports.socket.init(handle); @@ -75,4 +82,4 @@ exports.socket = { exports.socket.web_socket?.close(); }, }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrRUFBMEM7QUF3QjdCLFFBQUEsTUFBTSxHQUFZO0lBQzdCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLGNBQWMsRUFBRSxLQUFLO0lBQ3JCLE1BQU0sRUFBRSxFQUFFO0lBQ1YsV0FBVyxFQUFFLEtBQUs7SUFDbEIsZUFBZSxFQUFFLFNBQVM7SUFDMUIsa0JBQWtCLEVBQUUsSUFBSTtJQUN4QixhQUFhLEVBQUUsRUFBRTtJQUNqQixVQUFVLEVBQUUsS0FBSztJQUVqQixJQUFJLENBQUMsTUFBTTtRQUNULGNBQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM5QixJQUFJLFVBQVUsQ0FBQztRQUNmLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDbEMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLFVBQVUsR0FBRyxJQUFJLFNBQVMsQ0FBQyxjQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDTixVQUFVLEdBQUcsSUFBSSxTQUFTLENBQUMsY0FBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFDRCxjQUFNLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUMvQixjQUFNLENBQUMsVUFBVyxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7WUFDL0IsY0FBTSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDMUIsY0FBTSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxzQkFBWSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzFFLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxFQUFFLEVBQUUsQ0FBQztnQkFDOUIsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztZQUN4RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sY0FBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNuQixNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUNyQixDQUFDO1FBQ0gsQ0FBQyxDQUFDO1FBQ0YsY0FBTSxDQUFDLFVBQVcsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNqQyxJQUFJLGNBQU0sQ0FBQyxjQUFjLElBQUksQ0FBQyxjQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ2hELGFBQWEsQ0FBQyxjQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQ3RDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsY0FBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDdEIsQ0FBQyxFQUFFLGNBQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO2dCQUM5QixjQUFNLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztnQkFDM0IsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7UUFDSCxDQUFDLENBQUM7UUFDRixjQUFNLENBQUMsVUFBVyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2pDLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2QixDQUFDLENBQUM7UUFDRixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksY0FBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzNCLGFBQWEsQ0FBQyxjQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUNELGNBQU0sQ0FBQyxlQUFlLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUN4QyxjQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYTthQUN0QyxDQUFDLENBQUM7UUFDTCxDQUFDLEVBQUUsY0FBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksQ0FBQyxJQUFTLEVBQUUsUUFBbUI7UUFDakMsSUFDRSxjQUFNLENBQUMsVUFBVTtZQUNqQixDQUFDLENBQUMsY0FBTSxDQUFDLFVBQVUsRUFBRSxVQUFVLEtBQUssY0FBTSxDQUFDLFdBQVcsRUFDdEQsQ0FBQztZQUNELGNBQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUM3QyxRQUFRLElBQUksUUFBUSxFQUFFLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLO1FBQ0gsYUFBYSxDQUFDLGNBQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN0QyxjQUFNLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzdCLENBQUM7Q0FDRixDQUFDIn0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrRUFBMEM7QUF3QjdCLFFBQUEsTUFBTSxHQUFZO0lBQzdCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLGNBQWMsRUFBRSxLQUFLO0lBQ3JCLE1BQU0sRUFBRSxFQUFFO0lBQ1YsV0FBVyxFQUFFLEtBQUs7SUFDbEIsZUFBZSxFQUFFLFNBQVM7SUFDMUIsa0JBQWtCLEVBQUUsSUFBSTtJQUN4QixhQUFhLEVBQUUsRUFBRTtJQUNqQixVQUFVLEVBQUUsS0FBSztJQUVqQixJQUFJLENBQUMsTUFBTTtRQUNULGNBQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM5QixJQUFJLFVBQVUsQ0FBQztRQUNmLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDbEMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLFVBQVUsR0FBRyxJQUFJLFNBQVMsQ0FBQyxjQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDTixVQUFVLEdBQUcsSUFBSSxTQUFTLENBQUMsY0FBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFDRCxjQUFNLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUMvQixjQUFNLENBQUMsVUFBVyxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7WUFDL0IsY0FBTSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDMUIsY0FBTSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxzQkFBWSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzFFLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxFQUFFLEVB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 \ No newline at end of file diff --git a/dist/walletOperation.d.ts b/dist/walletOperation.d.ts index 5eedb26..d20cff4 100644 --- a/dist/walletOperation.d.ts +++ b/dist/walletOperation.d.ts @@ -6,6 +6,7 @@ declare class WalletOperation { static getNesaClient(chainInfo: ChainInfo, offlineSigner: CosmjsOfflineSigner | undefined): Promise; static registerSession(recordId: string, client: NesaClient, modelName: string, lockAmount: string, denom: string, chainInfo: ChainInfo, offlineSigner: CosmjsOfflineSigner): Promise<{ sessionId: string; + tokenPrice: import("./codec/agent/v1/agent").TokenPrice; transactionHash: string; }>; static requestAgentInfo(client: NesaClient | undefined, agentName: string, modelName: string): Promise; diff --git a/dist/walletOperation.js b/dist/walletOperation.js index fc0716e..30bc173 100644 --- a/dist/walletOperation.js +++ b/dist/walletOperation.js @@ -26,6 +26,18 @@ class WalletOperation { encryptUtils_1.default.requestVrf(recordId, client, offlineSigner), this.requestModel(client, modelName) ]); + if (!resVrf?.vrf) { + throw new Error("Vrf is null"); + } + if (!resVrf?.sessionId) { + throw new Error("SessionId is null"); + } + if (!resModel?.model) { + throw new Error('Model is null'); + } + if (!resModel?.model?.tokenPrice) { + throw new Error('Model token price is null'); + } const fee = { amount: [ { denom: chainInfo.feeCurrencies[0].coinMinimalDenom, amount: "6" }, @@ -33,18 +45,10 @@ class WalletOperation { gas: "200000", }; const lockBalance = { denom: denom, amount: lockAmount }; - if (!(resVrf?.vrf && resVrf?.sessionId)) { - throw new Error('Vrf seed is null'); - } - else if (!(resModel?.model && resModel.model?.tokenPrice)) { - throw new Error('Model tokenPrice is null'); - } - else { - return client.signRegisterSession(resVrf.sessionId, modelName, fee, lockBalance, resVrf.vrf, resModel.model.tokenPrice); - } + return client.signRegisterSession(resVrf.sessionId, modelName, fee, lockBalance, resVrf.vrf, resModel.model.tokenPrice); } static requestAgentInfo(client, agentName, modelName) { - console.log("modelName: ", modelName); + // console.log("modelName: ", modelName); if (!client) { throw "Client init failed"; } @@ -65,4 +69,4 @@ class WalletOperation { } } exports.default = WalletOperation; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0T3BlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3dhbGxldE9wZXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLHFDQUFzQztBQUN0QywrQ0FBNEM7QUFFNUMsa0VBQTBDO0FBQzFDLGdEQUF3QjtBQUl4QixNQUFNLGVBQWU7SUFDbkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQ3hCLFNBQW9CLEVBQ3BCLGFBQThDO1FBRTlDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksS0FBSyxDQUNiLG9FQUFvRSxDQUNyRSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDO1FBQ25DLE1BQU0sT0FBTyxHQUFHLENBQUMsTUFBTSxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2RCxPQUFPLG1CQUFVLENBQUMsaUJBQWlCLENBQ2pDLEdBQUcsRUFDSCxhQUFhLEVBQ2IsT0FBTyxDQUFDLE9BQU8sRUFDZixPQUFPLEVBQ1A7WUFDRSxRQUFRLEVBQUUsbUJBQVEsQ0FBQyxVQUFVLENBQzNCLFFBQVEsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUN0RDtZQUNELGtCQUFrQixFQUFFLENBQUM7WUFDckIsb0JBQW9CLEVBQUUsQ0FBQztTQUN4QixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQzFCLFFBQWdCLEVBQ2hCLE1BQWtCLEVBQ2xCLFNBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLEtBQWEsRUFDYixTQUFvQixFQUNwQixhQUFrQztRQUVsQyxzQkFBWSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVuQyxNQUFNLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxH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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0T3BlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3dhbGxldE9wZXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLHFDQUFzQztBQUN0QywrQ0FBNEM7QUFFNUMsa0VBQTBDO0FBQzFDLGdEQUF3QjtBQUl4QixNQUFNLGVBQWU7SUFDbkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQ3hCLFNBQW9CLEVBQ3BCLGFBQThDO1FBRTlDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksS0FBSyxDQUNiLG9FQUFvRSxDQUNyRSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDO1FBQ25DLE1BQU0sT0FBTyxHQUFHLENBQUMsTUFBTSxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2RCxPQUFPLG1CQUFVLENBQUMsaUJBQWlCLENBQ2pDLEdBQUcsRUFDSCxhQUFhLEVBQ2IsT0FBTyxDQUFDLE9BQU8sRUFDZixPQUFPLEVBQ1A7WUFDRSxRQUFRLEVBQUUsbUJBQVEsQ0FBQyxVQUFVLENBQzNCLFFBQVEsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUN0RDtZQUNELGtCQUFrQixFQUFFLENBQUM7WUFDckIsb0JBQW9CLEVBQUUsQ0FBQztTQUN4QixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQzFCLFFBQWdCLEVBQ2hCLE1BQWtCLEVBQ2xCLFNBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLEtBQWEsRUFDYixTQUFvQixFQUNwQixhQUFrQztRQUVsQyxzQkFBWSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuQyxNQUFNLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxH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 \ No newline at end of file diff --git a/src/chatClient.ts b/src/chatClient.ts index cb68279..28588a3 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -5,7 +5,7 @@ import { ChainInfo } from "@keplr-wallet/types"; import { defaultChainInfo, defaultLockAmount, - defaultSinglePaymentAmount, + defaultPriceUnit, defaultLowBalance, sdkVersion, } from "./default.config"; @@ -20,13 +20,19 @@ import { stringToPath } from "@cosmjs/crypto"; import { NesaClient } from "./client"; import { getAgentUrls } from "./helpers/getAgentUrls"; import { getIsChainInfoValid } from "./helpers/getIsChainInfoValid"; +import { TokenPrice } from "./codec/agent/v1/agent"; + +interface TokenNumber { + inputTokens: number; + outputTokens: number; +} interface ConfigOptions { modelName: string; lockAmount?: string; chainInfo?: ChainInfo; walletName?: string; - singlePaymentAmount?: string; + priceUnit?: string; lowBalance?: string; privateKey?: string; mnemonic?: string; @@ -48,7 +54,7 @@ class ChatClient { public modelName: string; public chainInfo: ChainInfo; public lockAmount: string; - public singlePaymentAmount: string; + public priceUnit: string; public lowBalance: string; public lockAmountDenom: string; public chatId: string; @@ -73,15 +79,14 @@ class ChatClient { private privateKey: string; private mnemonic: string; private isEverRequestSession: boolean; - private tokenPrice: number; + private tokenPrice: TokenPrice | undefined; constructor(options: ConfigOptions) { this.modelName = options?.modelName?.toLowerCase(); this.chainInfo = options.chainInfo || defaultChainInfo; this.lockAmount = options.lockAmount || defaultLockAmount; this.signaturePayment = {}; - this.singlePaymentAmount = - options.singlePaymentAmount || defaultSinglePaymentAmount; + this.priceUnit = options.priceUnit || defaultPriceUnit; this.lowBalance = options.lowBalance || defaultLowBalance; this.lockAmountDenom = ""; this.walletName = options.walletName || ""; @@ -90,7 +95,6 @@ class ChatClient { this.isEverRequestSession = false; this.isBrowser = typeof window !== "undefined"; this.isBrowser && (window.nesaSdkVersion = sdkVersion); - this.tokenPrice = 0; this.chatId = options.chatId || Date.now().toString(); // console.log("client options", options, this.chatId); @@ -242,7 +246,7 @@ class ChatClient { return signaturePayment; } - checkSinglePaymentAmount() { + checkSinglePaymentAmount(singlePaymentAmount:string) { if ( new BigNumber(this.totalSignedPayment).isLessThanOrEqualTo( this.lowBalance @@ -250,7 +254,7 @@ class ChatClient { ) { this.totalSignedPayment = Number( new BigNumber(this.totalSignedPayment) - .plus(this.singlePaymentAmount) + .plus(singlePaymentAmount) .toFixed(0, 1) ); return this.getSignaturePayment(); @@ -268,12 +272,12 @@ class ChatClient { } if ( new BigNumber(this.totalSignedPayment) - .plus(this.singlePaymentAmount) + .plus(singlePaymentAmount) .isLessThanOrEqualTo(this.lockAmount) ) { this.totalSignedPayment = Number( new BigNumber(this.totalSignedPayment) - .plus(this.singlePaymentAmount) + .plus(singlePaymentAmount) .toFixed(0, 1) ); } else { @@ -284,6 +288,12 @@ class ChatClient { return this.getSignaturePayment(); } + computePaymentAmount(tokenNumber: TokenNumber,tokenPrice: TokenPrice) { + const inputAmount = new BigNumber(tokenNumber.inputTokens).multipliedBy(tokenPrice.inputPrice.amount); + const outputAmount = new BigNumber(tokenNumber.outputTokens).multipliedBy(tokenPrice.outputPrice.amount); + return inputAmount.plus(outputAmount).dividedBy(this.priceUnit).toFixed(0, 1); + } + requestChatQueue(readableStream: any, question: QuestionParams) { this.isChatting = true; this.chatSeq += 1; @@ -388,7 +398,11 @@ class ChatClient { }); messageTimes += 1; } - const signedMessage = this.checkSinglePaymentAmount(); + const singlePaymentAmount = this.computePaymentAmount({ + inputTokens: messageJson?.input_tokens, + outputTokens: messageJson?.output_tokens, + },this.tokenPrice!); + const signedMessage = this.checkSinglePaymentAmount(singlePaymentAmount); const total_payment = { amount: this.totalSignedPayment, denom: this.chainInfo.feeCurrencies[0].coinMinimalDenom, @@ -399,8 +413,7 @@ class ChatClient { session_id: messageJson?.session_id || "", total_payment, }); - this.totalUsedPayment += this.tokenPrice; - + this.totalUsedPayment = new BigNumber(this.totalUsedPayment).plus(singlePaymentAmount).toNumber(); if ( new BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount) ) { @@ -617,11 +630,10 @@ class ChatClient { if ( !this.lockAmount || - new BigNumber(this.lockAmount).isNaN() || - new BigNumber(this.lockAmount).isLessThan(this.singlePaymentAmount) + new BigNumber(this.lockAmount).isNaN() ) { throw new Error( - "LockAmount invalid value or less than singlePaymentAmount" + "LockAmount invalid value" ); } @@ -648,7 +660,6 @@ class ChatClient { return readableStream; } - this.tokenPrice = params?.params?.tokenPrice?.low; if ( new BigNumber(this.lockAmount).isLessThan( params?.params?.userMinimumLock?.amount @@ -674,7 +685,7 @@ class ChatClient { this.chainInfo, this.offlineSigner ); - + console.log("registerSession-result: ", result); if (result?.transactionHash) { this.chatProgressReadable?.push({ @@ -685,6 +696,7 @@ class ChatClient { code: 200, message: result?.transactionHash, }); + this.tokenPrice = result?.tokenPrice; this.checkSignBroadcastResult(readableStream).catch((err: any) => { console.error("checkSignBroadcastResult error", err); }); @@ -744,6 +756,10 @@ class ChatClient { ); } + if(!this.tokenPrice) { + throw new Error("Please wait for the session registration to complete before requesting chat"); + } + if (!this.agentUrl) { const result = await this.checkSignBroadcastResult(); console.log("checkSignBroadcastResult-result: ", result); diff --git a/src/client.ts b/src/client.ts index 6de1b69..cef86b9 100644 --- a/src/client.ts +++ b/src/client.ts @@ -270,6 +270,7 @@ export class NesaClient { return { sessionId, + tokenPrice, transactionHash: toHex(sha256(Buffer.from(hex, "hex"))).toUpperCase(), }; } diff --git a/src/default.config.ts b/src/default.config.ts index db42bfd..8b0ef7b 100644 --- a/src/default.config.ts +++ b/src/default.config.ts @@ -2,7 +2,7 @@ import { ChainInfo } from "@keplr-wallet/types" const defaultAgentUrl = "wss://agent.nesa.ai/pingws"; const sdkVersion = '1.0.0' const defaultLockAmount = '1000000' -const defaultSinglePaymentAmount = '100000' +const defaultPriceUnit = '100000' const defaultLowBalance = '10000' const defaultChainInfo: ChainInfo = { chainId: 'nesa-testnet-3', @@ -71,6 +71,6 @@ export { defaultLockAmount, defaultChainInfo, sdkVersion, - defaultSinglePaymentAmount, + defaultPriceUnit, defaultLowBalance, }; \ No newline at end of file From d66d20ea4714642ffa65f92d59d32a996c671b21 Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Wed, 30 Oct 2024 14:27:08 +0800 Subject: [PATCH 08/16] update defaultPriceUnit --- src/default.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/default.config.ts b/src/default.config.ts index 8b0ef7b..c35bc9f 100644 --- a/src/default.config.ts +++ b/src/default.config.ts @@ -2,7 +2,7 @@ import { ChainInfo } from "@keplr-wallet/types" const defaultAgentUrl = "wss://agent.nesa.ai/pingws"; const sdkVersion = '1.0.0' const defaultLockAmount = '1000000' -const defaultPriceUnit = '100000' +const defaultPriceUnit = '1000000' const defaultLowBalance = '10000' const defaultChainInfo: ChainInfo = { chainId: 'nesa-testnet-3', From 2b293755b9f9836acabf072c44be43868fe8100f Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Thu, 31 Oct 2024 15:20:09 +0800 Subject: [PATCH 09/16] fix payment --- src/chatClient.ts | 48 +++++++++-------------------------------------- 1 file changed, 9 insertions(+), 39 deletions(-) diff --git a/src/chatClient.ts b/src/chatClient.ts index 28588a3..5547ae9 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -246,44 +246,13 @@ class ChatClient { return signaturePayment; } - checkSinglePaymentAmount(singlePaymentAmount:string) { + checkSinglePaymentAmount(totalSignedPayment: string) { if ( - new BigNumber(this.totalSignedPayment).isLessThanOrEqualTo( - this.lowBalance - ) - ) { - this.totalSignedPayment = Number( - new BigNumber(this.totalSignedPayment) - .plus(singlePaymentAmount) - .toFixed(0, 1) - ); - return this.getSignaturePayment(); - } - if ( - new BigNumber(this.totalSignedPayment) - .minus(this.totalUsedPayment) - .isLessThanOrEqualTo(this.lowBalance) + new BigNumber(totalSignedPayment).isLessThanOrEqualTo(this.lockAmount) ) { - if ( - new BigNumber(this.totalSignedPayment).isLessThan(this.totalUsedPayment) - ) { - this.totalSignedPayment = Number(this.totalUsedPayment); - return this.getSignaturePayment(); - } - if ( - new BigNumber(this.totalSignedPayment) - .plus(singlePaymentAmount) - .isLessThanOrEqualTo(this.lockAmount) - ) { - this.totalSignedPayment = Number( - new BigNumber(this.totalSignedPayment) - .plus(singlePaymentAmount) - .toFixed(0, 1) - ); - } else { - this.totalSignedPayment = Number(this.lockAmount); - } - return this.getSignaturePayment(); + this.totalSignedPayment = Number(totalSignedPayment); + } else { + this.totalSignedPayment = Number(this.lockAmount); } return this.getSignaturePayment(); } @@ -398,11 +367,11 @@ class ChatClient { }); messageTimes += 1; } - const singlePaymentAmount = this.computePaymentAmount({ + const totalSignedPayment = this.computePaymentAmount({ inputTokens: messageJson?.input_tokens, outputTokens: messageJson?.output_tokens, },this.tokenPrice!); - const signedMessage = this.checkSinglePaymentAmount(singlePaymentAmount); + const signedMessage = this.checkSinglePaymentAmount(totalSignedPayment); const total_payment = { amount: this.totalSignedPayment, denom: this.chainInfo.feeCurrencies[0].coinMinimalDenom, @@ -413,7 +382,7 @@ class ChatClient { session_id: messageJson?.session_id || "", total_payment, }); - this.totalUsedPayment = new BigNumber(this.totalUsedPayment).plus(singlePaymentAmount).toNumber(); + this.totalUsedPayment = new BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); if ( new BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount) ) { @@ -421,6 +390,7 @@ class ChatClient { code: 205, message: '{"code":1015,"msg":"balance insufficient"}', }); + // TODO If the amount used is greater than lockAmount, the connection is closed, but no signature information is sent. ws.close(); } else if (signedMessage) { const data = JSON.stringify({ From ac572f004f55b1286d66bdbb22bb1647615d4ea3 Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Fri, 1 Nov 2024 10:30:53 +0800 Subject: [PATCH 10/16] add miner_session_id --- build/.tsbuildinfo | 2 +- dist/chatClient.d.ts | 3 ++- dist/chatClient.js | 43 ++++++++++++++-------------------------- dist/default.config.d.ts | 2 +- dist/default.config.js | 4 ++-- src/chatClient.ts | 6 ++++++ 6 files changed, 27 insertions(+), 33 deletions(-) diff --git a/build/.tsbuildinfo b/build/.tsbuildinfo index f307d37..eefc609 100644 --- a/build/.tsbuildinfo +++ b/build/.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"2a9b253eb5b4c93a583ef1b787c79a0be2f6be92244abe9d5655e6503ab0a51d","signature":"9df8c66d2399b3c7f1f004f555c84105dc08a2938f1b8669f9396bd3f3e7a089"},{"version":"a9f6c748918c72e5bf9a0b131752613767a5ba6ae6bcc16e7fac82a061a6321e","signature":"9d15c9f74a05da1c82370bb4967ce3cfb9fe4cbcd67432a4326e4faf3d569e94"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"5cdd6f0d3cf68909f968efa357a521efdf604b654e9f3cd9ea87b0efd5f62f53","signature":"37992ec0c6d7b8b3b0ab87ec3e695cbccbc9abfa1530bbef699b4355b81c4c15"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"d4e5342e6a5c28249cdd0bfd1b158c1055b65451e287cb93ff51a51ab7ec5f82","signature":"97471dbc0e010ce14f65304c002f5c238540631daf2cfa5a008d03389df6e48c"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file +{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"a9f6c748918c72e5bf9a0b131752613767a5ba6ae6bcc16e7fac82a061a6321e","signature":"9d15c9f74a05da1c82370bb4967ce3cfb9fe4cbcd67432a4326e4faf3d569e94"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"5cdd6f0d3cf68909f968efa357a521efdf604b654e9f3cd9ea87b0efd5f62f53","signature":"37992ec0c6d7b8b3b0ab87ec3e695cbccbc9abfa1530bbef699b4355b81c4c15"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"6a6e2697a1293c6807de6eafdd6de00f12170898f7fc915bc4eecee6c0629597","signature":"0a04fdc019b39c1f54cd0e15684ba471678051dfbb0bc58eded3444fba442fe8"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file diff --git a/dist/chatClient.d.ts b/dist/chatClient.d.ts index 94a7a41..5796cc3 100644 --- a/dist/chatClient.d.ts +++ b/dist/chatClient.d.ts @@ -56,13 +56,14 @@ declare class ChatClient { private mnemonic; private isEverRequestSession; private tokenPrice; + private minerSessionId; constructor(options: ConfigOptions); initWallet(): any; getNesaClient(): Promise; getChainParams(nesaClient: NesaClient): any; version(): string; getSignaturePayment(): string; - checkSinglePaymentAmount(singlePaymentAmount: string): string; + checkSinglePaymentAmount(totalSignedPayment: string): string; computePaymentAmount(tokenNumber: TokenNumber, tokenPrice: TokenPrice): string; requestChatQueue(readableStream: any, question: QuestionParams): void; requestCloseHeartbeat(): void; diff --git a/dist/chatClient.js b/dist/chatClient.js index 925859b..5cc8bc1 100644 --- a/dist/chatClient.js +++ b/dist/chatClient.js @@ -38,6 +38,7 @@ class ChatClient { this.isBrowser = typeof window !== "undefined"; this.isBrowser && (window.nesaSdkVersion = default_config_1.sdkVersion); this.chatId = options.chatId || Date.now().toString(); + this.minerSessionId = ""; // console.log("client options", options, this.chatId); this.initWallet(); } @@ -153,31 +154,12 @@ class ChatClient { this.signaturePayment[this.totalSignedPayment] = signaturePayment; return signaturePayment; } - checkSinglePaymentAmount(singlePaymentAmount) { - if (new bignumber_js_1.BigNumber(this.totalSignedPayment).isLessThanOrEqualTo(this.lowBalance)) { - this.totalSignedPayment = Number(new bignumber_js_1.BigNumber(this.totalSignedPayment) - .plus(singlePaymentAmount) - .toFixed(0, 1)); - return this.getSignaturePayment(); + checkSinglePaymentAmount(totalSignedPayment) { + if (new bignumber_js_1.BigNumber(totalSignedPayment).isLessThanOrEqualTo(this.lockAmount)) { + this.totalSignedPayment = Number(totalSignedPayment); } - if (new bignumber_js_1.BigNumber(this.totalSignedPayment) - .minus(this.totalUsedPayment) - .isLessThanOrEqualTo(this.lowBalance)) { - if (new bignumber_js_1.BigNumber(this.totalSignedPayment).isLessThan(this.totalUsedPayment)) { - this.totalSignedPayment = Number(this.totalUsedPayment); - return this.getSignaturePayment(); - } - if (new bignumber_js_1.BigNumber(this.totalSignedPayment) - .plus(singlePaymentAmount) - .isLessThanOrEqualTo(this.lockAmount)) { - this.totalSignedPayment = Number(new bignumber_js_1.BigNumber(this.totalSignedPayment) - .plus(singlePaymentAmount) - .toFixed(0, 1)); - } - else { - this.totalSignedPayment = Number(this.lockAmount); - } - return this.getSignaturePayment(); + else { + this.totalSignedPayment = Number(this.lockAmount); } return this.getSignaturePayment(); } @@ -205,6 +187,7 @@ class ChatClient { stream: true, ...question, model: question?.model?.toLowerCase(), + miner_session_id: this.minerSessionId }); if (question.messages && this.assistantRoleName) { question.messages = question.messages.map((item) => { @@ -282,11 +265,11 @@ class ChatClient { }); messageTimes += 1; } - const singlePaymentAmount = this.computePaymentAmount({ + const totalSignedPayment = this.computePaymentAmount({ inputTokens: messageJson?.input_tokens, outputTokens: messageJson?.output_tokens, }, this.tokenPrice); - const signedMessage = this.checkSinglePaymentAmount(singlePaymentAmount); + const signedMessage = this.checkSinglePaymentAmount(totalSignedPayment); const total_payment = { amount: this.totalSignedPayment, denom: this.chainInfo.feeCurrencies[0].coinMinimalDenom, @@ -297,12 +280,16 @@ class ChatClient { session_id: messageJson?.session_id || "", total_payment, }); - this.totalUsedPayment = new bignumber_js_1.BigNumber(this.totalUsedPayment).plus(singlePaymentAmount).toNumber(); + if (messageJson?.session_id) { + this.minerSessionId = messageJson?.session_id; + } + this.totalUsedPayment = new bignumber_js_1.BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); if (new bignumber_js_1.BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount)) { readableStream.push({ code: 205, message: '{"code":1015,"msg":"balance insufficient"}', }); + // TODO If the amount used is greater than lockAmount, the connection is closed, but no signature information is sent. ws.close(); } else if (signedMessage) { @@ -609,4 +596,4 @@ class ChatClient { } } exports.default = ChatClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQStCcEUsTUFBTSxVQUFVO0lBK0JkLFlBQVksT0FBc0I7UUF0QjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWdCN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksaUNBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLGtDQUFpQixDQUFDO1FBQzFELElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcs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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQStCcEUsTUFBTSxVQUFVO0lBZ0NkLFlBQVksT0FBc0I7UUF2QjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWlCN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksaUNBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLGtDQUFpQixDQUFDO1FBQzFELElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcs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 \ No newline at end of file diff --git a/dist/default.config.d.ts b/dist/default.config.d.ts index 6dffc96..62855e0 100644 --- a/dist/default.config.d.ts +++ b/dist/default.config.d.ts @@ -2,7 +2,7 @@ import { ChainInfo } from "@keplr-wallet/types"; declare const defaultAgentUrl = "wss://agent.nesa.ai/pingws"; declare const sdkVersion = "1.0.0"; declare const defaultLockAmount = "1000000"; -declare const defaultPriceUnit = "100000"; +declare const defaultPriceUnit = "1000000"; declare const defaultLowBalance = "10000"; declare const defaultChainInfo: ChainInfo; export { defaultAgentUrl, defaultLockAmount, defaultChainInfo, sdkVersion, defaultPriceUnit, defaultLowBalance, }; diff --git a/dist/default.config.js b/dist/default.config.js index 1834943..974b71b 100644 --- a/dist/default.config.js +++ b/dist/default.config.js @@ -7,7 +7,7 @@ const sdkVersion = '1.0.0'; exports.sdkVersion = sdkVersion; const defaultLockAmount = '1000000'; exports.defaultLockAmount = defaultLockAmount; -const defaultPriceUnit = '100000'; +const defaultPriceUnit = '1000000'; exports.defaultPriceUnit = defaultPriceUnit; const defaultLowBalance = '10000'; exports.defaultLowBalance = defaultLowBalance; @@ -68,4 +68,4 @@ const defaultChainInfo = { }, }; exports.defaultChainInfo = defaultChainInfo; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGVmYXVsdC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsTUFBTSxlQUFlLEdBQUcsNEJBQTRCLENBQUM7QUFvRWpELDBDQUFlO0FBbkVuQixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUE7QUFzRXRCLGdDQUFVO0FBckVkLE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFBO0FBbUUvQiw4Q0FBaUI7QUFsRXJCLE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxDQUFBO0FBcUU3Qiw0Q0FBZ0I7QUFwRXBCLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFBO0FBcUU3Qiw4Q0FBaUI7QUFwRXJCLE1BQU0sZ0JBQWdCLEdBQWM7SUFDaEMsT0FBTyxFQUFFLGdCQUFnQjtJQUN6QixTQUFTLEVBQUUsY0FBYztJQUN6QixtQkFBbUIsRUFDZiw4RkFBOEY7SUFDbEcsSUFBSSxFQUFFLDBCQUEwQjtJQUNoQyxHQUFHLEVBQUUsMEJBQTBCO0lBQy9CLFlBQVksRUFBRTtRQUNWLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFLGFBQWE7UUFDcEIsT0FBTyxFQUFFLGtCQUFrQjtLQUM5QjtJQUVELEtBQUssRUFBRTtRQUNILFFBQVEsRUFBRSxHQUFHO0tBQ2hCO0lBQ0QsWUFBWSxFQUFFO1FBQ1YsbUJBQW1CLEVBQUUsTUFBTTtRQUMzQixrQkFBa0IsRUFBRSxNQUFNLEdBQUcsS0FBSztRQUNsQyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsU0FBUztRQUN2QyxrQkFBa0IsRUFBRSxNQUFNLEdBQUcsWUFBWTtRQUN6QyxvQkFBb0IsRUFBRSxNQUFNLEdBQUcsU0FBUztRQUN4QyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsWUFBWTtLQUM3QztJQUNELFVBQVUsRUFBRTtRQUNSO1lBQ0ksU0FBUyxFQUFFLEtBQUs7WUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixZQUFZLEVBQUUsQ0FBQztZQUNmLFdBQVcsRUFBRSxNQUFNO1lBQ25CLFlBQVksRUFDUiw0RkFBNEY7U0FDbkc7S0FDSjtJQUNELGFBQWEsRUFBRTtRQUNYO1lBQ0ksU0FBUyxFQUFFLEtBQUs7WUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixZQUFZLEVBQUUsQ0FBQztZQUNmLFdBQVcsRUFBRSxNQUFNO1lBQ25CLFlBQVksRUFDUiw0RkFBNEY7WUFDaEcsWUFBWSxFQUFFO2dCQUNWLEdBQUcsRUFBRSxJQUFJO2dCQUNULE9BQU8sRUFBRSxJQUFJO2dCQUNiLElBQUksRUFBRSxHQUFHO2FBQ1o7U0FDSjtLQUNKO0lBQ0QsYUFBYSxFQUFFO1FBQ1gsU0FBUyxFQUFFLEtBQUs7UUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtRQUN4QixZQUFZLEVBQUUsQ0FBQztRQUNmLFdBQVcsRUFBRSxNQUFNO1FBQ25CLFlBQVksRUFDUiw0RkFBNEY7UUFDaEcsWUFBWTtRQUNaLFlBQVksRUFBRSxFQUFFO1FBQ2hCLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQztLQUN6QjtDQUNKLENBQUM7QUFLRSw0Q0FBZ0IifQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGVmYXVsdC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsTUFBTSxlQUFlLEdBQUcsNEJBQTRCLENBQUM7QUFvRWpELDBDQUFlO0FBbkVuQixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUE7QUFzRXRCLGdDQUFVO0FBckVkLE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFBO0FBbUUvQiw4Q0FBaUI7QUFsRXJCLE1BQU0sZ0JBQWdCLEdBQUcsU0FBUyxDQUFBO0FBcUU5Qiw0Q0FBZ0I7QUFwRXBCLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFBO0FBcUU3Qiw4Q0FBaUI7QUFwRXJCLE1BQU0sZ0JBQWdCLEdBQWM7SUFDaEMsT0FBTyxFQUFFLGdCQUFnQjtJQUN6QixTQUFTLEVBQUUsY0FBYztJQUN6QixtQkFBbUIsRUFDZiw4RkFBOEY7SUFDbEcsSUFBSSxFQUFFLDBCQUEwQjtJQUNoQyxHQUFHLEVBQUUsMEJBQTBCO0lBQy9CLFlBQVksRUFBRTtRQUNWLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFLGFBQWE7UUFDcEIsT0FBTyxFQUFFLGtCQUFrQjtLQUM5QjtJQUVELEtBQUssRUFBRTtRQUNILFFBQVEsRUFBRSxHQUFHO0tBQ2hCO0lBQ0QsWUFBWSxFQUFFO1FBQ1YsbUJBQW1CLEVBQUUsTUFBTTtRQUMzQixrQkFBa0IsRUFBRSxNQUFNLEdBQUcsS0FBSztRQUNsQyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsU0FBUztRQUN2QyxrQkFBa0IsRUFBRSxNQUFNLEdBQUcsWUFBWTtRQUN6QyxvQkFBb0IsRUFBRSxNQUFNLEdBQUcsU0FBUztRQUN4QyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsWUFBWTtLQUM3QztJQUNELFVBQVUsRUFBRTtRQUNSO1lBQ0ksU0FBUyxFQUFFLEtBQUs7WUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixZQUFZLEVBQUUsQ0FBQztZQUNmLFdBQVcsRUFBRSxNQUFNO1lBQ25CLFlBQVksRUFDUiw0RkFBNEY7U0FDbkc7S0FDSjtJQUNELGFBQWEsRUFBRTtRQUNYO1lBQ0ksU0FBUyxFQUFFLEtBQUs7WUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixZQUFZLEVBQUUsQ0FBQztZQUNmLFdBQVcsRUFBRSxNQUFNO1lBQ25CLFlBQVksRUFDUiw0RkFBNEY7WUFDaEcsWUFBWSxFQUFFO2dCQUNWLEdBQUcsRUFBRSxJQUFJO2dCQUNULE9BQU8sRUFBRSxJQUFJO2dCQUNiLElBQUksRUFBRSxHQUFHO2FBQ1o7U0FDSjtLQUNKO0lBQ0QsYUFBYSxFQUFFO1FBQ1gsU0FBUyxFQUFFLEtBQUs7UUFDaEIsZ0JBQWdCLEVBQUUsTUFBTTtRQUN4QixZQUFZLEVBQUUsQ0FBQztRQUNmLFdBQVcsRUFBRSxNQUFNO1FBQ25CLFlBQVksRUFDUiw0RkFBNEY7UUFDaEcsWUFBWTtRQUNaLFlBQVksRUFBRSxFQUFFO1FBQ2hCLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQztLQUN6QjtDQUNKLENBQUM7QUFLRSw0Q0FBZ0IifQ== \ No newline at end of file diff --git a/src/chatClient.ts b/src/chatClient.ts index 5547ae9..1923186 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -80,6 +80,7 @@ class ChatClient { private mnemonic: string; private isEverRequestSession: boolean; private tokenPrice: TokenPrice | undefined; + private minerSessionId: string; constructor(options: ConfigOptions) { this.modelName = options?.modelName?.toLowerCase(); @@ -96,6 +97,7 @@ class ChatClient { this.isBrowser = typeof window !== "undefined"; this.isBrowser && (window.nesaSdkVersion = sdkVersion); this.chatId = options.chatId || Date.now().toString(); + this.minerSessionId = ""; // console.log("client options", options, this.chatId); this.initWallet(); @@ -283,6 +285,7 @@ class ChatClient { stream: true, ...question, model: question?.model?.toLowerCase(), + miner_session_id: this.minerSessionId }); if (question.messages && this.assistantRoleName) { @@ -382,6 +385,9 @@ class ChatClient { session_id: messageJson?.session_id || "", total_payment, }); + if (messageJson?.session_id) { + this.minerSessionId = messageJson?.session_id; + } this.totalUsedPayment = new BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); if ( new BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount) From 66766b8b03760c576c081b8e8aa98aad9275fc6e Mon Sep 17 00:00:00 2001 From: duanjie-cmd <18870420982@139.com> Date: Mon, 11 Nov 2024 14:55:21 +0800 Subject: [PATCH 11/16] add chat-id --- src/chatClient.ts | 2 +- src/helpers/getAgentUrls.ts | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/chatClient.ts b/src/chatClient.ts index 1923186..76ae906 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -484,7 +484,7 @@ class ChatClient { if (agentInfo && agentInfo?.inferenceAgent) { const selectAgent = agentInfo?.inferenceAgent; - const { agentWsUrl, agentHeartbeatUrl } = getAgentUrls(selectAgent); + const { agentWsUrl, agentHeartbeatUrl } = getAgentUrls(selectAgent,this.chatId); let firstInitHeartbeat = true; this.chatProgressReadable?.push({ diff --git a/src/helpers/getAgentUrls.ts b/src/helpers/getAgentUrls.ts index 79db7be..069640e 100644 --- a/src/helpers/getAgentUrls.ts +++ b/src/helpers/getAgentUrls.ts @@ -1,11 +1,11 @@ import type { InferenceAgent } from "../codec/agent/v1/agent"; -export const getAgentUrls = (selectAgent: InferenceAgent) => { +export const getAgentUrls = (selectAgent: InferenceAgent,chatId:string) => { const baseUrl = `${selectAgent.url}${ selectAgent.url?.endsWith("/") ? "" : "/" }`; return { - agentWsUrl: `${baseUrl}chat`, - agentHeartbeatUrl: `${baseUrl}heartbeat`, + agentWsUrl: `${baseUrl}chat?chat-id=${chatId}`, + agentHeartbeatUrl: `${baseUrl}heartbeat?chat-id=${chatId}`, }; }; From 861f0d7e23e742376f294028185502d1941b1950 Mon Sep 17 00:00:00 2001 From: zhangyelong Date: Wed, 13 Nov 2024 20:17:30 +0800 Subject: [PATCH 12/16] support bypass agent --- build/.tsbuildinfo | 2 +- dist/chatClient.d.ts | 10 +- dist/chatClient.js | 267 +++++++++++++++++----------- dist/helpers/getAgentUrls.d.ts | 4 +- dist/helpers/getAgentUrls.js | 8 +- dist/socket.d.ts | 16 +- dist/socket.js | 64 +++---- package-lock.json | 19 ++ package.json | 3 +- src/chatClient.ts | 315 ++++++++++++++++++++------------- src/helpers/getAgentUrls.ts | 6 +- src/socket.ts | 78 ++++---- 12 files changed, 474 insertions(+), 318 deletions(-) diff --git a/build/.tsbuildinfo b/build/.tsbuildinfo index eefc609..077999f 100644 --- a/build/.tsbuildinfo +++ b/build/.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"a9f6c748918c72e5bf9a0b131752613767a5ba6ae6bcc16e7fac82a061a6321e","signature":"9d15c9f74a05da1c82370bb4967ce3cfb9fe4cbcd67432a4326e4faf3d569e94"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"5cdd6f0d3cf68909f968efa357a521efdf604b654e9f3cd9ea87b0efd5f62f53","signature":"37992ec0c6d7b8b3b0ab87ec3e695cbccbc9abfa1530bbef699b4355b81c4c15"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"6a6e2697a1293c6807de6eafdd6de00f12170898f7fc915bc4eecee6c0629597","signature":"0a04fdc019b39c1f54cd0e15684ba471678051dfbb0bc58eded3444fba442fe8"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file +{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../node_modules/uuid/dist/cjs/types.d.ts","../node_modules/uuid/dist/cjs/max.d.ts","../node_modules/uuid/dist/cjs/nil.d.ts","../node_modules/uuid/dist/cjs/parse.d.ts","../node_modules/uuid/dist/cjs/stringify.d.ts","../node_modules/uuid/dist/cjs/v1.d.ts","../node_modules/uuid/dist/cjs/v1tov6.d.ts","../node_modules/uuid/dist/cjs/v35.d.ts","../node_modules/uuid/dist/cjs/v3.d.ts","../node_modules/uuid/dist/cjs/v4.d.ts","../node_modules/uuid/dist/cjs/v5.d.ts","../node_modules/uuid/dist/cjs/v6.d.ts","../node_modules/uuid/dist/cjs/v6tov1.d.ts","../node_modules/uuid/dist/cjs/v7.d.ts","../node_modules/uuid/dist/cjs/validate.d.ts","../node_modules/uuid/dist/cjs/version.d.ts","../node_modules/uuid/dist/cjs/index.d.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"f6229e9a3b61afc102fa4fbf751b0380a13f5829c17e713236618a8c4775dbe2","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"8f3a9f71cdb065b198fda58667bc0b8570435e51f5898fc542e87a56b5174013","signature":"4b0ac71744613c7afb26581ec3be7d3dd18f31cde724036583ed750d8f5125f2"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},"a65cf458c879172bef4012d3397612e7357bf72971b09db5bb5bf8fca0957612","6ada175c0c585e89569e8feb8ff6fc9fc443d7f9ca6340b456e0f94cbef559bf","e56e4d95fad615c97eb0ae39c329a4cda9c0af178273a9173676cc9b14b58520","73e8dfd5e7d2abc18bdb5c5873e64dbdd1082408dd1921cad6ff7130d8339334","fc820b2f0c21501f51f79b58a21d3fa7ae5659fc1812784dbfbb72af147659ee","d128037db3a40d1d8ae8ec36431e6a4678df56d236729f620e58f4a37f9f33d0","31501b8fc4279e78f6a05ca35e365e73c0b0c57d06dbe8faecb10c7254ce7714","9985141f349552055b7b6b5082384fdbc1758ba14ff51fada049347628b4e018","c3b65655e9b7b290340f3a1c73c7e02907dd290a288de5e62726350da39b96b1","c0398181fff2b85eef72a8abfad6a8b31bc5989a3a763fd3d0fd61154e55bcfc","89daadaa769a9bf8c1fa26a464e06459197a5914ed42702e1ce439bb5915b767","83af685afea5d13d6cd6a8db34aba9aec7962c289bb6c92e770e838e7d5faec9","d05bd4d28c12545827349b0ac3a79c50658d68147dad38d13e97e22353544496","b99abb32e0aa47c71bf14b6bd2ebc526a4afcee1553c157e49864e41868bdfa4","04ace6bedd6f59c30ea6df1f0f8d432c728c8bc5c5fd0c5c1c80242d3ab51977","57a8a7772769c35ba7b4b1ba125f0812deec5c7102a0d04d9e15b1d22880c9e8","badcc9d59770b91987e962f8e3ddfa1e06671b0e4c5e2738bbd002255cad3f38",{"version":"dc124e13de1bca0ce0628e6647da0e29d991dc9ec1d50d1978311720d6a186b6","signature":"9ba1d55e604b6becf74140639da3adf48cebc060f17e91690a39f8b679037644"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],274,275,[293,313]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[362,363,400,401],[363,400],[404],[405],[408,410,411,412,413,414,415,416,417,418,419,420],[408,409,411,412,413,414,415,416,417,418,419,420],[409,410,411,412,413,414,415,416,417,418,419,420],[408,409,410,412,413,414,415,416,417,418,419,420],[408,409,410,411,413,414,415,416,417,418,419,420],[408,409,410,411,412,414,415,416,417,418,419,420],[408,409,410,411,412,413,415,416,417,418,419,420],[408,409,410,411,412,413,414,416,417,418,419,420],[408,409,410,411,412,413,414,415,417,418,419,420],[408,409,410,411,412,413,414,415,416,418,419,420],[408,409,410,411,412,413,414,415,416,417,419,420],[408,409,410,411,412,413,414,415,416,417,418,420],[408,409,410,411,412,413,414,415,416,417,418,419],[314],[349],[350,355,384],[351,362,363,370,381,392],[351,352,362,370],[353,393],[354,355,363,371],[355,381,389],[356,358,362,370],[349,357],[358,359],[362],[360,362],[349,362],[362,363,364,381,392],[362,363,364,377,381,384],[347,350,397],[358,362,365,370,381,392],[362,363,365,366,370,381,389,392],[365,367,381,389,392],[314,315,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399],[362,368],[369,392,397],[358,362,370,381],[371],[372],[349,373],[374,391,397],[375],[376],[362,377,378],[377,379,393,395],[350,362,381,382,383,384],[350,381,383],[381,382],[384],[385],[349,381],[362,387,388],[387,388],[355,370,381,389],[390],[370,391],[350,365,376,392],[355,393],[381,394],[369,395],[396],[350,355,362,364,373,381,392,395,397],[381,398],[423],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[324,328,392],[324,381,392],[319],[321,324,389,392],[370,389],[400],[319,400],[321,324,370,392],[316,317,320,323,350,362,381,392],[316,322],[320,324,350,384,392,400],[350,400],[340,350,400],[318,319,400],[324],[318,319,320,321,322,323,324,325,326,328,329,330,331,332,333,334,335,336,337,338,339,341,342,343,344,345,346],[324,331,332],[322,324,332,333],[323],[316,319,324],[324,328,332,333],[328],[322,324,327,392],[316,321,322,324,328,331],[350,381],[319,324,340,350,397,400],[276,277,278,279,280,281,282,284,285,286,287,288,289,290,291],[276],[276,283],[68,95,227,249,262,268,269,270,271,272,273,274,275,292,313],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,301],[220,222,223,224,230,301],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,313],[227],[268],[269,293],[217,222,227,229,230,233,239],[270],[68,217,313],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,301],[220,221,222,223,224,230,301],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[402,87],[403,88],[405,89],[406,90],[409,91],[410,92],[408,93],[411,94],[412,95],[413,96],[414,97],[415,98],[416,99],[417,100],[418,101],[419,102],[420,103],[314,104],[315,104],[349,105],[350,106],[351,107],[352,108],[353,109],[354,110],[355,111],[356,112],[357,113],[358,114],[359,114],[361,115],[360,116],[362,117],[363,118],[364,119],[348,120],[365,121],[366,122],[367,123],[400,124],[368,125],[369,126],[370,127],[371,128],[372,129],[373,130],[374,131],[375,132],[376,133],[377,134],[378,134],[379,135],[381,136],[383,137],[382,138],[384,139],[385,140],[386,141],[387,142],[388,143],[389,144],[390,145],[391,146],[392,147],[393,148],[394,149],[395,150],[396,151],[397,152],[398,153],[424,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[331,193],[338,194],[330,193],[345,195],[322,196],[321,197],[344,198],[339,199],[342,200],[324,201],[323,202],[319,203],[318,204],[341,205],[320,206],[325,207],[329,207],[347,208],[346,207],[333,209],[334,210],[336,211],[332,212],[335,213],[340,198],[327,214],[328,215],[337,216],[317,217],[343,218],[292,219],[281,220],[284,221],[283,220],[285,220],[286,221],[287,220],[289,220],[293,222],[249,223],[296,224],[227,225],[297,226],[229,227],[228,228],[299,224],[300,229],[301,229],[302,230],[303,231],[304,230],[230,224],[224,224],[307,224],[231,232],[308,233],[238,234],[234,229],[236,224],[237,224],[233,234],[235,235],[239,236],[232,224],[248,237],[311,224],[312,224],[225,224],[226,224],[222,238],[271,239],[270,240],[274,241],[275,242],[294,243],[240,244],[272,245],[218,246],[269,247]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[402,87],[403,88],[405,89],[406,90],[409,91],[410,92],[408,93],[411,94],[412,95],[413,96],[414,97],[415,98],[416,99],[417,100],[418,101],[419,102],[420,103],[314,104],[315,104],[349,105],[350,106],[351,107],[352,108],[353,109],[354,110],[355,111],[356,112],[357,113],[358,114],[359,114],[361,115],[360,116],[362,117],[363,118],[364,119],[348,120],[365,121],[366,122],[367,123],[400,124],[368,125],[369,126],[370,127],[371,128],[372,129],[373,130],[374,131],[375,132],[376,133],[377,134],[378,134],[379,135],[381,136],[383,137],[382,138],[384,139],[385,140],[386,141],[387,142],[388,143],[389,144],[390,145],[391,146],[392,147],[393,148],[394,149],[395,150],[396,151],[397,152],[398,153],[424,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[331,193],[338,194],[330,193],[345,195],[322,196],[321,197],[344,198],[339,199],[342,200],[324,201],[323,202],[319,203],[318,204],[341,205],[320,206],[325,207],[329,207],[347,208],[346,207],[333,209],[334,210],[336,211],[332,212],[335,213],[340,198],[327,214],[328,215],[337,216],[317,217],[343,218],[292,219],[281,220],[284,221],[283,220],[285,220],[286,221],[287,220],[289,220],[293,248],[249,249],[296,250],[227,225],[297,251],[229,252],[228,253],[299,250],[300,254],[301,254],[302,255],[303,256],[304,230],[230,224],[224,250],[307,250],[231,257],[308,258],[238,234],[234,254],[236,250],[237,224],[233,234],[235,259],[239,260],[232,224],[248,261],[311,250],[312,224],[225,224],[226,224],[222,77],[271,239],[270,262],[274,241],[275,242],[294,243],[240,263],[218,264],[269,265]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,402,403,404,405,406,407,409,410,408,411,412,413,414,415,416,417,418,419,420,221,401,314,315,349,350,351,352,353,354,355,356,357,358,359,361,360,362,363,364,348,399,365,366,367,400,368,369,370,371,372,373,374,375,376,377,378,379,380,381,383,382,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,421,422,423,424,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,331,338,330,345,322,321,344,339,342,324,323,319,318,341,320,325,326,329,316,347,346,333,334,336,332,335,340,327,328,337,317,343,292,277,278,279,280,276,281,282,284,283,285,286,287,288,289,290,291,100,293,249,296,227,297,229,228,298,299,300,301,302,303,304,230,224,305,306,307,231,308,238,234,236,237,233,235,239,232,248,309,310,311,312,225,226,222,295,223,271,270,274,275,294,219,240,272,313,218,269]},"version":"5.4.5"} \ No newline at end of file diff --git a/dist/chatClient.d.ts b/dist/chatClient.d.ts index 5796cc3..e3abaac 100644 --- a/dist/chatClient.d.ts +++ b/dist/chatClient.d.ts @@ -1,6 +1,6 @@ import { ChainInfo } from "@keplr-wallet/types"; import { NesaClient } from "./client"; -import { TokenPrice } from "./codec/agent/v1/agent"; +import { TokenPrice, InferenceAgent } from "./codec/agent/v1/agent"; interface TokenNumber { inputTokens: number; outputTokens: number; @@ -15,6 +15,9 @@ interface ConfigOptions { privateKey?: string; mnemonic?: string; chatId?: string; + isByPass?: boolean; + agentUrl?: string; + authToken?: string; } interface QuestionParams { messages: any; @@ -42,6 +45,7 @@ declare class ChatClient { private isChatting; private isRegisteringSession; private agentUrl; + private agentChatUrl; private assistantRoleName; private lastNesaClientPromise; private lastUserMinimumLockPromise; @@ -57,6 +61,9 @@ declare class ChatClient { private isEverRequestSession; private tokenPrice; private minerSessionId; + private agentSessionId; + private isByPass; + private authToken; constructor(options: ConfigOptions); initWallet(): any; getNesaClient(): Promise; @@ -72,5 +79,6 @@ declare class ChatClient { requestChatStatus(): any; requestSession(): Promise; requestChat(question: QuestionParams): Promise; + connectAgent(selectAgent: InferenceAgent, readableStream?: any): Promise; } export default ChatClient; diff --git a/dist/chatClient.js b/dist/chatClient.js index 5cc8bc1..27c6839 100644 --- a/dist/chatClient.js +++ b/dist/chatClient.js @@ -14,6 +14,7 @@ const proto_signing_1 = require("@cosmjs/proto-signing"); const crypto_1 = require("@cosmjs/crypto"); const getAgentUrls_1 = require("./helpers/getAgentUrls"); const getIsChainInfoValid_1 = require("./helpers/getIsChainInfoValid"); +const uuid_1 = require("uuid"); class ChatClient { constructor(options) { this.chatQueue = []; @@ -23,7 +24,9 @@ class ChatClient { this.isChatting = false; this.isRegisteringSession = false; this.agentUrl = ""; + this.agentChatUrl = ""; this.assistantRoleName = ""; + this.agentSessionId = ""; this.modelName = options?.modelName?.toLowerCase(); this.chainInfo = options.chainInfo || default_config_1.defaultChainInfo; this.lockAmount = options.lockAmount || default_config_1.defaultLockAmount; @@ -39,8 +42,21 @@ class ChatClient { this.isBrowser && (window.nesaSdkVersion = default_config_1.sdkVersion); this.chatId = options.chatId || Date.now().toString(); this.minerSessionId = ""; + this.isByPass = options.isByPass || false; + this.agentUrl = options.isByPass ? (options.agentUrl || "") : ""; + this.authToken = options.authToken || ""; // console.log("client options", options, this.chatId); - this.initWallet(); + if (!this.isByPass) { + this.initWallet(); + } + else { + if (!this.agentUrl || this.agentUrl === "") { + throw new Error("Agent url is required in byPass mode"); + } + if (!this.authToken || this.authToken === "") { + throw new Error("Auth token is required in byPass mode"); + } + } } initWallet() { if (this.lastInitOfflineSignerPromise) { @@ -174,12 +190,13 @@ class ChatClient { let messageTimes = 0; try { let ws; + const protocols = [this.authToken || ""]; if (this.isBrowser) { - ws = new WebSocket(this.agentUrl); + ws = new WebSocket(this.agentChatUrl, protocols); } else { const WebSocket = require("ws"); - ws = new WebSocket(this.agentUrl); + ws = new WebSocket(this.agentChatUrl, protocols); } ws.addEventListener("open", () => { if (ws.readyState === 1) { @@ -197,22 +214,30 @@ class ChatClient { return item; }); } - const signedMessage = encryptUtils_1.default.signMessage(this.chatId, questionStr, this.chatSeq, true); - if (signedMessage) { + if (!this.isByPass) { + const signedMessage = encryptUtils_1.default.signMessage(this.chatId, questionStr, this.chatSeq, true); + if (signedMessage) { + ws.send(JSON.stringify({ + chat_seq: this.chatSeq, + query: questionStr, + signature_query: signedMessage, + })); + } + else { + readableStream.push({ + code: 201, + message: "No signature found or the signature has expired, please sign again", + }); + this.isChatting = false; + readableStream.push(null); + } + } + else { ws.send(JSON.stringify({ chat_seq: this.chatSeq, query: questionStr, - signature_query: signedMessage, })); } - else { - readableStream.push({ - code: 201, - message: "No signature found or the signature has expired, please sign again", - }); - this.isChatting = false; - readableStream.push(null); - } } }); ws.onmessage = (event) => { @@ -265,40 +290,42 @@ class ChatClient { }); messageTimes += 1; } - const totalSignedPayment = this.computePaymentAmount({ - inputTokens: messageJson?.input_tokens, - outputTokens: messageJson?.output_tokens, - }, this.tokenPrice); - const signedMessage = this.checkSinglePaymentAmount(totalSignedPayment); - const total_payment = { - amount: this.totalSignedPayment, - denom: this.chainInfo.feeCurrencies[0].coinMinimalDenom, - }; - readableStream.push({ - code: 200, - message: messageJson?.content, - session_id: messageJson?.session_id || "", - total_payment, - }); - if (messageJson?.session_id) { - this.minerSessionId = messageJson?.session_id; - } - this.totalUsedPayment = new bignumber_js_1.BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); - if (new bignumber_js_1.BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount)) { + if (!this.isByPass) { + const totalSignedPayment = this.computePaymentAmount({ + inputTokens: messageJson?.input_tokens, + outputTokens: messageJson?.output_tokens, + }, this.tokenPrice); + const signedMessage = this.checkSinglePaymentAmount(totalSignedPayment); + const total_payment = { + amount: this.totalSignedPayment, + denom: this.chainInfo.feeCurrencies[0].coinMinimalDenom, + }; readableStream.push({ - code: 205, - message: '{"code":1015,"msg":"balance insufficient"}', - }); - // TODO If the amount used is greater than lockAmount, the connection is closed, but no signature information is sent. - ws.close(); - } - else if (signedMessage) { - const data = JSON.stringify({ - chat_seq: this.chatSeq, + code: 200, + message: messageJson?.content, + session_id: messageJson?.session_id || "", total_payment, - signature_payment: signedMessage, }); - ws.send(data); + if (messageJson?.session_id) { + this.minerSessionId = messageJson?.session_id; + } + this.totalUsedPayment = new bignumber_js_1.BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); + if (new bignumber_js_1.BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount)) { + readableStream.push({ + code: 205, + message: '{"code":1015,"msg":"balance insufficient"}', + }); + // TODO If the amount used is greater than lockAmount, the connection is closed, but no signature information is sent. + ws.close(); + } + else if (signedMessage) { + const data = JSON.stringify({ + chat_seq: this.chatSeq, + total_payment, + signature_payment: signedMessage, + }); + ws.send(data); + } } } }; @@ -369,37 +396,12 @@ class ChatClient { .then((agentInfo) => { if (agentInfo && agentInfo?.inferenceAgent) { const selectAgent = agentInfo?.inferenceAgent; - const { agentWsUrl, agentHeartbeatUrl } = (0, getAgentUrls_1.getAgentUrls)(selectAgent); - let firstInitHeartbeat = true; - this.chatProgressReadable?.push({ - code: 303, - message: "Connecting to the validator", - }); - socket_1.socket.init({ - recordId: this.chatId, - modelName: this.modelName, - ws_url: agentHeartbeatUrl, - onopen: () => { - if (firstInitHeartbeat) { - this.agentUrl = agentWsUrl; - this.isRegisteringSession = false; - this.chatProgressReadable?.push({ - code: 304, - message: "Waiting for query", - }); - readableStream?.push(null); - firstInitHeartbeat = false; - resolve(result); - } - }, - onerror: (e) => { - readableStream?.push({ - code: 319, - message: "Agent connection error: " + selectAgent.url, - }); - readableStream?.push(null); - reject(new Error("Agent heartbeat packet connection failed, " + e?.message)); - }, + this.connectAgent(selectAgent, readableStream) + .then(() => { + resolve(result); + }) + .catch((err) => { + reject(err); }); } else { @@ -464,22 +466,38 @@ class ChatClient { return readableStream; } async requestSession() { - if (!(0, getIsChainInfoValid_1.getIsChainInfoValid)(this.chainInfo)) { - throw new Error("Invalid chainInfo, you must provide rpc, rest, feeCurrencies, feeCurrencies"); - } if (!this.modelName) { throw new Error("ModelName is null"); } - if (this.isRegisteringSession) { - throw new Error("Registering session, please wait"); - } - if (!this.lockAmount || - new bignumber_js_1.BigNumber(this.lockAmount).isNaN()) { - throw new Error("LockAmount invalid value"); + if (!this.isByPass) { + if (!(0, getIsChainInfoValid_1.getIsChainInfoValid)(this.chainInfo)) { + throw new Error("Invalid chainInfo, you must provide rpc, rest, feeCurrencies, feeCurrencies"); + } + if (this.isRegisteringSession) { + throw new Error("Registering session, please wait"); + } + if (!this.lockAmount || + new bignumber_js_1.BigNumber(this.lockAmount).isNaN()) { + throw new Error("LockAmount invalid value"); + } } this.isEverRequestSession = true; const readableStream = new stream_browserify_1.Readable({ objectMode: true }); readableStream._read = () => { }; + if (this.isByPass) { + this.agentSessionId = (0, uuid_1.v4)(); + readableStream.push({ + code: 200, + message: this.agentSessionId, + }); + const selectAgent = { + url: this.agentUrl, + }; + this.connectAgent(selectAgent).catch((err) => { + throw new Error("Agent connection error: " + err); + }); + return readableStream; + } try { await this.initWallet(); try { @@ -562,27 +580,28 @@ class ChatClient { if (!question?.model) { throw new Error("Model is required"); } - if (this.isRegisteringSession) { - throw new Error("Registering session, please wait"); - } - if (!this.isEverRequestSession) { - throw new Error("Please call requestSession first to complete Session registration"); - } - if (!this.tokenPrice) { - throw new Error("Please wait for the session registration to complete before requesting chat"); - } - if (!this.agentUrl) { - const result = await this.checkSignBroadcastResult(); - console.log("checkSignBroadcastResult-result: ", result); - const readableStream = new stream_browserify_1.Readable({ objectMode: true }); - readableStream._read = () => { }; - if (this.isChatting) { - this.chatQueue.push({ readableStream, question }); + if (!this.isByPass) { + if (this.isRegisteringSession) { + throw new Error("Registering session, please wait"); } - else { - this.requestChatQueue(readableStream, question); + if (!this.isEverRequestSession) { + throw new Error("Please call requestSession first to complete Session registration"); + } + if (!this.tokenPrice) { + throw new Error("Please wait for the session registration to complete before requesting chat"); + } + if (!this.agentChatUrl) { + const result = await this.checkSignBroadcastResult(); + console.log("checkSignBroadcastResult-result: ", result); } - return readableStream; + } + else if (!this.agentChatUrl) { + const selectAgent = { + url: this.agentUrl, + }; + this.connectAgent(selectAgent).catch((err) => { + throw new Error("Agent connection error: " + err); + }); } const readableStream = new stream_browserify_1.Readable({ objectMode: true }); readableStream._read = () => { }; @@ -594,6 +613,44 @@ class ChatClient { } return readableStream; } + async connectAgent(selectAgent, readableStream) { + return new Promise((resolve, reject) => { + let firstInitHeartbeat = true; + const { agentChatUrl, agentHeartbeatUrl } = (0, getAgentUrls_1.getAgentUrls)(selectAgent, this.chatId, this.agentSessionId); + this.chatProgressReadable?.push({ + code: 303, + message: "Connecting to the validator", + }); + socket_1.socket.init({ + recordId: this.chatId, + modelName: this.modelName, + wsUrl: agentHeartbeatUrl, + isBypass: this.isByPass, + authToken: this.authToken, + onopen: () => { + if (firstInitHeartbeat) { + this.agentChatUrl = agentChatUrl; + this.isRegisteringSession = false; + this.chatProgressReadable?.push({ + code: 304, + message: "Waiting for query", + }); + readableStream?.push(null); + firstInitHeartbeat = false; + resolve(null); + } + }, + onerror: (e) => { + readableStream?.push({ + code: 319, + message: "Agent connection error: " + selectAgent.url, + }); + readableStream?.push(null); + reject(new Error("Agent heartbeat packet connection failed, " + e?.message)); + }, + }); + }); + } } exports.default = ChatClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQStCcEUsTUFBTSxVQUFVO0lBZ0NkLFlBQVksT0FBc0I7UUF2QjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWlCN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksaUNBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLGtDQUFpQixDQUFDO1FBQzFELElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcs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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQUVwRSwrQkFBb0M7QUFnQ3BDLE1BQU0sVUFBVTtJQW9DZCxZQUFZLE9BQXNCO1FBM0IxQixjQUFTLEdBQVEsRUFBRSxDQUFDO1FBQ3BCLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFDWixxQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFDckIsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQixzQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFldkIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFLMUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksaUNBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLGtDQUFpQixD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 \ No newline at end of file diff --git a/dist/helpers/getAgentUrls.d.ts b/dist/helpers/getAgentUrls.d.ts index 33453e0..3ace586 100644 --- a/dist/helpers/getAgentUrls.d.ts +++ b/dist/helpers/getAgentUrls.d.ts @@ -1,5 +1,5 @@ import type { InferenceAgent } from "../codec/agent/v1/agent"; -export declare const getAgentUrls: (selectAgent: InferenceAgent) => { - agentWsUrl: string; +export declare const getAgentUrls: (selectAgent: InferenceAgent, chatId: string, agentSessionId: string) => { + agentChatUrl: string; agentHeartbeatUrl: string; }; diff --git a/dist/helpers/getAgentUrls.js b/dist/helpers/getAgentUrls.js index 1c5e2e8..cf3093e 100644 --- a/dist/helpers/getAgentUrls.js +++ b/dist/helpers/getAgentUrls.js @@ -1,12 +1,12 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getAgentUrls = void 0; -const getAgentUrls = (selectAgent) => { +const getAgentUrls = (selectAgent, chatId, agentSessionId) => { const baseUrl = `${selectAgent.url}${selectAgent.url?.endsWith("/") ? "" : "/"}`; return { - agentWsUrl: `${baseUrl}chat`, - agentHeartbeatUrl: `${baseUrl}heartbeat`, + agentChatUrl: `${baseUrl}chat?chat-id=${chatId}&session-id=${agentSessionId}`, + agentHeartbeatUrl: `${baseUrl}heartbeat?chat-id=${chatId}&session-id=${agentSessionId}`, }; }; exports.getAgentUrls = getAgentUrls; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0QWdlbnRVcmxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvZ2V0QWdlbnRVcmxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVPLE1BQU0sWUFBWSxHQUFHLENBQUMsV0FBMkIsRUFBRSxFQUFFO0lBQzFELE1BQU0sT0FBTyxHQUFHLEdBQUcsV0FBVyxDQUFDLEdBQUcsR0FDaEMsV0FBVyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FDeEMsRUFBRSxDQUFDO0lBQ0gsT0FBTztRQUNMLFVBQVUsRUFBRSxHQUFHLE9BQU8sTUFBTTtRQUM1QixpQkFBaUIsRUFBRSxHQUFHLE9BQU8sV0FBVztLQUN6QyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBUlcsUUFBQSxZQUFZLGdCQVF2QiJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0QWdlbnRVcmxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvZ2V0QWdlbnRVcmxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVPLE1BQU0sWUFBWSxHQUFHLENBQUMsV0FBMkIsRUFBRSxNQUFjLEVBQUUsY0FBc0IsRUFBRSxFQUFFO0lBQ2xHLE1BQU0sT0FBTyxHQUFHLEdBQUcsV0FBVyxDQUFDLEdBQUcsR0FDaEMsV0FBVyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FDeEMsRUFBRSxDQUFDO0lBQ0gsT0FBTztRQUNMLFlBQVksRUFBRSxHQUFHLE9BQU8sZ0JBQWdCLE1BQU0sZUFBZSxjQUFjLEVBQUU7UUFDN0UsaUJBQWlCLEVBQUUsR0FBRyxPQUFPLHFCQUFxQixNQUFNLGVBQWUsY0FBYyxFQUFFO0tBQ3hGLENBQUM7QUFDSixDQUFDLENBQUM7QUFSVyxRQUFBLFlBQVksZ0JBUXZCIn0= \ No newline at end of file diff --git a/dist/socket.d.ts b/dist/socket.d.ts index cdfd85e..c182bb1 100644 --- a/dist/socket.d.ts +++ b/dist/socket.d.ts @@ -1,15 +1,17 @@ /// interface ISocket { - web_socket: WebSocket | null; - ws_url: string; - ever_succeeded: boolean; - socket_open: boolean; - heartbeat_timer: NodeJS.Timeout | string | number | undefined; - heartbeat_interval: number; + webSocket: WebSocket | null; + wsUrl: string; + everSucceeded: boolean; + socketOpen: boolean; + heartbeatTimer: NodeJS.Timeout | string | number | undefined; + heartbeatInterval: number; init: (handle: { modelName?: string; recordId: string; - ws_url: string; + wsUrl: string; + isBypass?: boolean; + authToken?: string; onopen: () => void; onclose?: (e: Event) => void; onerror?: (e: Event | Error) => void; diff --git a/dist/socket.js b/dist/socket.js index 742dbb6..b794f61 100644 --- a/dist/socket.js +++ b/dist/socket.js @@ -6,30 +6,32 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.socket = void 0; const encryptUtils_1 = __importDefault(require("./encryptUtils")); exports.socket = { - web_socket: null, - ever_succeeded: false, - ws_url: "", - socket_open: false, - heartbeat_timer: undefined, - heartbeat_interval: 5000, + webSocket: null, + everSucceeded: false, + wsUrl: "", + socketOpen: false, + heartbeatTimer: undefined, + heartbeatInterval: 5000, signatureData: "", forceClose: false, init(handle) { - exports.socket.ws_url = handle.ws_url; - let web_socket; + exports.socket.wsUrl = handle.wsUrl; + let webSocket; if (typeof window === "undefined") { const WebSocket = require("ws"); - web_socket = new WebSocket(exports.socket.ws_url); + const protocols = [handle.authToken || ""]; + webSocket = new WebSocket(exports.socket.wsUrl, protocols); } else { - web_socket = new WebSocket(exports.socket.ws_url); + const protocols = [handle.authToken || ""]; + webSocket = new WebSocket(exports.socket.wsUrl, protocols); } - exports.socket.web_socket = web_socket; - exports.socket.web_socket.onopen = () => { - exports.socket.socket_open = true; - exports.socket.ever_succeeded = true; + exports.socket.webSocket = webSocket; + exports.socket.webSocket.onopen = () => { + exports.socket.socketOpen = true; + exports.socket.everSucceeded = true; this.signatureData = encryptUtils_1.default.signHeartbeat(handle.recordId, "hello"); - if (this.signatureData === "") { + if (!handle.isBypass && this.signatureData === "") { handle?.onerror?.(new Error("SignatureData is null")); } else { @@ -43,43 +45,43 @@ exports.socket = { }); } }; - exports.socket.web_socket.onclose = (e) => { - if (exports.socket.ever_succeeded && !exports.socket.forceClose) { + exports.socket.webSocket.onclose = (e) => { + if (exports.socket.everSucceeded && !exports.socket.forceClose) { console.log("websocket closed, reconnecting"); - clearInterval(exports.socket.heartbeat_timer); + clearInterval(exports.socket.heartbeatTimer); setTimeout(() => { exports.socket.init(handle); - }, exports.socket.heartbeat_interval); - exports.socket.socket_open = false; + }, exports.socket.heartbeatInterval); + exports.socket.socketOpen = false; handle?.onclose?.(e); } }; - exports.socket.web_socket.onerror = (e) => { + exports.socket.webSocket.onerror = (e) => { handle?.onerror?.(e); }; return undefined; }, heartbeat() { - if (exports.socket.heartbeat_timer) { - clearInterval(exports.socket.heartbeat_timer); + if (exports.socket.heartbeatTimer) { + clearInterval(exports.socket.heartbeatTimer); } - exports.socket.heartbeat_timer = setInterval(() => { + exports.socket.heartbeatTimer = setInterval(() => { exports.socket.send({ message: "hello", signature_message: this.signatureData, }); - }, exports.socket.heartbeat_interval); + }, exports.socket.heartbeatInterval); }, send(data, callback) { - if (exports.socket.web_socket && - !!exports.socket.web_socket?.readyState === exports.socket.socket_open) { - exports.socket.web_socket.send(JSON.stringify(data)); + if (exports.socket.webSocket && + !!exports.socket.webSocket?.readyState === exports.socket.socketOpen) { + exports.socket.webSocket.send(JSON.stringify(data)); callback && callback(); } }, close() { - clearInterval(exports.socket.heartbeat_timer); - exports.socket.web_socket?.close(); + clearInterval(exports.socket.heartbeatTimer); + exports.socket.webSocket?.close(); }, }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrRUFBMEM7QUF3QjdCLFFBQUEsTUFBTSxHQUFZO0lBQzdCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLGNBQWMsRUFBRSxLQUFLO0lBQ3JCLE1BQU0sRUFBRSxFQUFFO0lBQ1YsV0FBVyxFQUFFLEtBQUs7SUFDbEIsZUFBZSxFQUFFLFNBQVM7SUFDMUIsa0JBQWtCLEVBQUUsSUFBSTtJQUN4QixhQUFhLEVBQUUsRUFBRTtJQUNqQixVQUFVLEVBQUUsS0FBSztJQUVqQixJQUFJLENBQUMsTUFBTTtRQUNULGNBQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM5QixJQUFJLFVBQVUsQ0FBQztRQUNmLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDbEMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLFVBQVUsR0FBRyxJQUFJLFNBQVMsQ0FBQyxjQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDTixVQUFVLEdBQUcsSUFBSSxTQUFTLENBQUMsY0FBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFDRCxjQUFNLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUMvQixjQUFNLENBQUMsVUFBVyxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7WUFDL0IsY0FBTSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDMUIsY0FBTSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxzQkFBWSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzFFLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxFQUFFLEVB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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrRUFBMEM7QUEwQjdCLFFBQUEsTUFBTSxHQUFZO0lBQzdCLFNBQVMsRUFBRSxJQUFJO0lBQ2YsYUFBYSxFQUFFLEtBQUs7SUFDcEIsS0FBSyxFQUFFLEVBQUU7SUFDVCxVQUFVLEVBQUUsS0FBSztJQUNqQixjQUFjLEVBQUUsU0FBUztJQUN6QixpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLGFBQWEsRUFBRSxFQUFFO0lBQ2pCLFVBQVUsRUFBRSxLQUFLO0lBRWpCLElBQUksQ0FBQyxNQUFNO1FBQ1QsY0FBTSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzVCLElBQUksU0FBUyxDQUFDO1FBQ2QsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNsQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxjQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3JELENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxjQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxjQUFNLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUM3QixjQUFNLENBQUMsU0FBVSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7WUFDOUIsY0FBTSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7WUFDekIsY0FBTSxDQUFD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 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 7dcf446..bcd844c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,6 +24,7 @@ "crypto-js": "^4.2.0", "elliptic": "^6.5.5", "stream-browserify": "^3.0.0", + "uuid": "^11.0.3", "ws": "^7.5.9" }, "devDependencies": { @@ -6480,6 +6481,19 @@ "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true }, + "node_modules/uuid": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", + "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/esm/bin/uuid" + } + }, "node_modules/v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", @@ -11738,6 +11752,11 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, + "uuid": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", + "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==" + }, "v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", diff --git a/package.json b/package.json index 722c03a..5bff8dc 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,8 @@ "crypto-js": "^4.2.0", "elliptic": "^6.5.5", "stream-browserify": "^3.0.0", - "ws": "^7.5.9" + "ws": "^7.5.9", + "uuid": "^11.0.3" }, "devDependencies": { "@types/crypto-js": "^4.2.2", diff --git a/src/chatClient.ts b/src/chatClient.ts index 76ae906..1ba35a0 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -20,8 +20,8 @@ import { stringToPath } from "@cosmjs/crypto"; import { NesaClient } from "./client"; import { getAgentUrls } from "./helpers/getAgentUrls"; import { getIsChainInfoValid } from "./helpers/getIsChainInfoValid"; -import { TokenPrice } from "./codec/agent/v1/agent"; - +import { TokenPrice, InferenceAgent } from "./codec/agent/v1/agent"; +import { v4 as uuidv4 } from 'uuid'; interface TokenNumber { inputTokens: number; outputTokens: number; @@ -37,6 +37,9 @@ interface ConfigOptions { privateKey?: string; mnemonic?: string; chatId?: string; + isByPass?: boolean; + agentUrl?: string; + authToken?: string; } interface QuestionParams { @@ -66,6 +69,7 @@ class ChatClient { private isChatting = false; private isRegisteringSession = false; private agentUrl = ""; + private agentChatUrl = ""; private assistantRoleName = ""; private lastNesaClientPromise: Promise | undefined; private lastUserMinimumLockPromise: any; @@ -81,6 +85,9 @@ class ChatClient { private isEverRequestSession: boolean; private tokenPrice: TokenPrice | undefined; private minerSessionId: string; + private agentSessionId = ""; + private isByPass: boolean; + private authToken: string; constructor(options: ConfigOptions) { this.modelName = options?.modelName?.toLowerCase(); @@ -98,9 +105,20 @@ class ChatClient { this.isBrowser && (window.nesaSdkVersion = sdkVersion); this.chatId = options.chatId || Date.now().toString(); this.minerSessionId = ""; - + this.isByPass = options.isByPass || false; + this.agentUrl = options.isByPass ? (options.agentUrl || "") : ""; + this.authToken = options.authToken || ""; // console.log("client options", options, this.chatId); - this.initWallet(); + if (!this.isByPass) { + this.initWallet(); + } else { + if (!this.agentUrl || this.agentUrl === "") { + throw new Error("Agent url is required in byPass mode"); + } + if (!this.authToken || this.authToken === "") { + throw new Error("Auth token is required in byPass mode"); + } + } } initWallet() { @@ -272,12 +290,12 @@ class ChatClient { try { let ws: WebSocket; - + const protocols = [this.authToken || ""]; if (this.isBrowser) { - ws = new WebSocket(this.agentUrl); + ws = new WebSocket(this.agentChatUrl, protocols); } else { const WebSocket = require("ws"); - ws = new WebSocket(this.agentUrl); + ws = new WebSocket(this.agentChatUrl, protocols); } ws.addEventListener("open", () => { if (ws.readyState === 1) { @@ -297,29 +315,38 @@ class ChatClient { }); } - const signedMessage = EncryptUtils.signMessage( - this.chatId, - questionStr, - this.chatSeq, - true - ); - - if (signedMessage) { + if (!this.isByPass) { + const signedMessage = EncryptUtils.signMessage( + this.chatId, + questionStr, + this.chatSeq, + true + ); + + if (signedMessage) { + ws.send( + JSON.stringify({ + chat_seq: this.chatSeq, + query: questionStr, + signature_query: signedMessage, + }) + ); + } else { + readableStream.push({ + code: 201, + message: + "No signature found or the signature has expired, please sign again", + }); + this.isChatting = false; + readableStream.push(null); + } + } else { ws.send( JSON.stringify({ chat_seq: this.chatSeq, query: questionStr, - signature_query: signedMessage, }) ); - } else { - readableStream.push({ - code: 201, - message: - "No signature found or the signature has expired, please sign again", - }); - this.isChatting = false; - readableStream.push(null); } } }); @@ -370,41 +397,44 @@ class ChatClient { }); messageTimes += 1; } - const totalSignedPayment = this.computePaymentAmount({ - inputTokens: messageJson?.input_tokens, - outputTokens: messageJson?.output_tokens, - },this.tokenPrice!); - const signedMessage = this.checkSinglePaymentAmount(totalSignedPayment); - const total_payment = { - amount: this.totalSignedPayment, - denom: this.chainInfo.feeCurrencies[0].coinMinimalDenom, - }; - readableStream.push({ - code: 200, - message: messageJson?.content, - session_id: messageJson?.session_id || "", - total_payment, - }); - if (messageJson?.session_id) { - this.minerSessionId = messageJson?.session_id; - } - this.totalUsedPayment = new BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); - if ( - new BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount) - ) { + + if (!this.isByPass) { + const totalSignedPayment = this.computePaymentAmount({ + inputTokens: messageJson?.input_tokens, + outputTokens: messageJson?.output_tokens, + },this.tokenPrice!); + const signedMessage = this.checkSinglePaymentAmount(totalSignedPayment); + const total_payment = { + amount: this.totalSignedPayment, + denom: this.chainInfo.feeCurrencies[0].coinMinimalDenom, + }; readableStream.push({ - code: 205, - message: '{"code":1015,"msg":"balance insufficient"}', - }); - // TODO If the amount used is greater than lockAmount, the connection is closed, but no signature information is sent. - ws.close(); - } else if (signedMessage) { - const data = JSON.stringify({ - chat_seq: this.chatSeq, + code: 200, + message: messageJson?.content, + session_id: messageJson?.session_id || "", total_payment, - signature_payment: signedMessage, }); - ws.send(data); + if (messageJson?.session_id) { + this.minerSessionId = messageJson?.session_id; + } + this.totalUsedPayment = new BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); + if ( + new BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount) + ) { + readableStream.push({ + code: 205, + message: '{"code":1015,"msg":"balance insufficient"}', + }); + // TODO If the amount used is greater than lockAmount, the connection is closed, but no signature information is sent. + ws.close(); + } else if (signedMessage) { + const data = JSON.stringify({ + chat_seq: this.chatSeq, + total_payment, + signature_payment: signedMessage, + }); + ws.send(data); + } } } }; @@ -483,40 +513,12 @@ class ChatClient { .then((agentInfo) => { if (agentInfo && agentInfo?.inferenceAgent) { const selectAgent = agentInfo?.inferenceAgent; - - const { agentWsUrl, agentHeartbeatUrl } = getAgentUrls(selectAgent,this.chatId); - let firstInitHeartbeat = true; - - this.chatProgressReadable?.push({ - code: 303, - message: "Connecting to the validator", - }); - socket.init({ - recordId: this.chatId, - modelName: this.modelName, - ws_url: agentHeartbeatUrl, - onopen: () => { - if (firstInitHeartbeat) { - this.agentUrl = agentWsUrl; - this.isRegisteringSession = false; - - this.chatProgressReadable?.push({ - code: 304, - message: "Waiting for query", - }); - readableStream?.push(null); - firstInitHeartbeat = false; - resolve(result); - } - }, - onerror: (e: Event | Error) => { - readableStream?.push({ - code: 319, - message: "Agent connection error: " + selectAgent.url, - }); - readableStream?.push(null); - reject(new Error("Agent heartbeat packet connection failed, " + (e as Error)?.message)); - }, + this.connectAgent(selectAgent, readableStream) + .then(() => { + resolve(result); + }) + .catch((err: any) => { + reject(err); }); } else { this.isRegisteringSession = false; @@ -590,32 +592,52 @@ class ChatClient { } async requestSession() { - if (!getIsChainInfoValid(this.chainInfo)) { - throw new Error( - "Invalid chainInfo, you must provide rpc, rest, feeCurrencies, feeCurrencies" - ); - } if (!this.modelName) { throw new Error("ModelName is null"); } - if (this.isRegisteringSession) { - throw new Error("Registering session, please wait"); - } + if (!this.isByPass) { + if (!getIsChainInfoValid(this.chainInfo)) { + throw new Error( + "Invalid chainInfo, you must provide rpc, rest, feeCurrencies, feeCurrencies" + ); + } - if ( - !this.lockAmount || - new BigNumber(this.lockAmount).isNaN() - ) { - throw new Error( + if (this.isRegisteringSession) { + throw new Error("Registering session, please wait"); + } + + if ( + !this.lockAmount || + new BigNumber(this.lockAmount).isNaN() + ) { + throw new Error( "LockAmount invalid value" ); + } } - + this.isEverRequestSession = true; const readableStream = new Readable({ objectMode: true }); readableStream._read = () => {}; + if (this.isByPass) { + this.agentSessionId = uuidv4(); + readableStream.push({ + code: 200, + message: this.agentSessionId, + }); + + const selectAgent = { + url: this.agentUrl, + } as InferenceAgent; + + this.connectAgent(selectAgent).catch((err: any) => { + throw new Error("Agent connection error: " + err); + }); + + return readableStream; + } try { await this.initWallet(); @@ -722,33 +744,34 @@ class ChatClient { throw new Error("Model is required"); } - if (this.isRegisteringSession) { - throw new Error("Registering session, please wait"); - } - - if (!this.isEverRequestSession) { - throw new Error( - "Please call requestSession first to complete Session registration" - ); - } + if (!this.isByPass) { + if (this.isRegisteringSession) { + throw new Error("Registering session, please wait"); + } - if(!this.tokenPrice) { - throw new Error("Please wait for the session registration to complete before requesting chat"); - } + if (!this.isEverRequestSession) { + throw new Error( + "Please call requestSession first to complete Session registration" + ); + } - if (!this.agentUrl) { - const result = await this.checkSignBroadcastResult(); - console.log("checkSignBroadcastResult-result: ", result); - const readableStream = new Readable({ objectMode: true }); - readableStream._read = () => {}; + if(!this.tokenPrice) { + throw new Error("Please wait for the session registration to complete before requesting chat"); + } - if (this.isChatting) { - this.chatQueue.push({ readableStream, question }); - } else { - this.requestChatQueue(readableStream, question); + if (!this.agentChatUrl) { + const result = await this.checkSignBroadcastResult(); + console.log("checkSignBroadcastResult-result: ", result); } + } - return readableStream; + else if (!this.agentChatUrl) { + const selectAgent = { + url: this.agentUrl, + } as InferenceAgent; + this.connectAgent(selectAgent).catch((err: any) => { + throw new Error("Agent connection error: " + err); + }); } const readableStream = new Readable({ objectMode: true }); @@ -762,6 +785,46 @@ class ChatClient { return readableStream; } + + async connectAgent(selectAgent: InferenceAgent, readableStream?: any) { + return new Promise((resolve, reject) => { + let firstInitHeartbeat = true; + const { agentChatUrl, agentHeartbeatUrl } = getAgentUrls(selectAgent, this.chatId, this.agentSessionId); + this.chatProgressReadable?.push({ + code: 303, + message: "Connecting to the validator", + }); + socket.init({ + recordId: this.chatId, + modelName: this.modelName, + wsUrl: agentHeartbeatUrl, + isBypass: this.isByPass, + authToken: this.authToken, + onopen: () => { + if (firstInitHeartbeat) { + this.agentChatUrl = agentChatUrl; + this.isRegisteringSession = false; + + this.chatProgressReadable?.push({ + code: 304, + message: "Waiting for query", + }); + readableStream?.push(null); + firstInitHeartbeat = false; + resolve(null); + } + }, + onerror: (e: Event | Error) => { + readableStream?.push({ + code: 319, + message: "Agent connection error: " + selectAgent.url, + }); + readableStream?.push(null); + reject(new Error("Agent heartbeat packet connection failed, " + (e as Error)?.message)); + }, + }); + }); + } } export default ChatClient; diff --git a/src/helpers/getAgentUrls.ts b/src/helpers/getAgentUrls.ts index 069640e..6e38d18 100644 --- a/src/helpers/getAgentUrls.ts +++ b/src/helpers/getAgentUrls.ts @@ -1,11 +1,11 @@ import type { InferenceAgent } from "../codec/agent/v1/agent"; -export const getAgentUrls = (selectAgent: InferenceAgent,chatId:string) => { +export const getAgentUrls = (selectAgent: InferenceAgent, chatId: string, agentSessionId: string) => { const baseUrl = `${selectAgent.url}${ selectAgent.url?.endsWith("/") ? "" : "/" }`; return { - agentWsUrl: `${baseUrl}chat?chat-id=${chatId}`, - agentHeartbeatUrl: `${baseUrl}heartbeat?chat-id=${chatId}`, + agentChatUrl: `${baseUrl}chat?chat-id=${chatId}&session-id=${agentSessionId}`, + agentHeartbeatUrl: `${baseUrl}heartbeat?chat-id=${chatId}&session-id=${agentSessionId}`, }; }; diff --git a/src/socket.ts b/src/socket.ts index 3195f50..acf1c14 100644 --- a/src/socket.ts +++ b/src/socket.ts @@ -1,16 +1,18 @@ import EncryptUtils from "./encryptUtils"; interface ISocket { - web_socket: WebSocket | null; - ws_url: string; - ever_succeeded: boolean; - socket_open: boolean; - heartbeat_timer: NodeJS.Timeout | string | number | undefined; - heartbeat_interval: number; + webSocket: WebSocket | null; + wsUrl: string; + everSucceeded: boolean; + socketOpen: boolean; + heartbeatTimer: NodeJS.Timeout | string | number | undefined; + heartbeatInterval: number; init: (handle: { modelName?: string; recordId: string; - ws_url: string; + wsUrl: string; + isBypass?: boolean; + authToken?: string; onopen: () => void; onclose?: (e: Event) => void; onerror?: (e: Event | Error) => void; @@ -23,30 +25,32 @@ interface ISocket { } export const socket: ISocket = { - web_socket: null, - ever_succeeded: false, - ws_url: "", - socket_open: false, - heartbeat_timer: undefined, - heartbeat_interval: 5000, + webSocket: null, + everSucceeded: false, + wsUrl: "", + socketOpen: false, + heartbeatTimer: undefined, + heartbeatInterval: 5000, signatureData: "", forceClose: false, init(handle) { - socket.ws_url = handle.ws_url; - let web_socket; + socket.wsUrl = handle.wsUrl; + let webSocket; if (typeof window === "undefined") { const WebSocket = require("ws"); - web_socket = new WebSocket(socket.ws_url); + const protocols = [handle.authToken || ""]; + webSocket = new WebSocket(socket.wsUrl, protocols); } else { - web_socket = new WebSocket(socket.ws_url); + const protocols = [handle.authToken || ""]; + webSocket = new WebSocket(socket.wsUrl, protocols); } - socket.web_socket = web_socket; - socket.web_socket!.onopen = () => { - socket.socket_open = true; - socket.ever_succeeded = true; + socket.webSocket = webSocket; + socket.webSocket!.onopen = () => { + socket.socketOpen = true; + socket.everSucceeded = true; this.signatureData = EncryptUtils.signHeartbeat(handle.recordId, "hello"); - if (this.signatureData === "") { + if (!handle.isBypass && this.signatureData === "") { handle?.onerror?.(new Error("SignatureData is null")); } else { socket.send({ @@ -59,47 +63,47 @@ export const socket: ISocket = { }); } }; - socket.web_socket!.onclose = (e) => { - if (socket.ever_succeeded && !socket.forceClose) { + socket.webSocket!.onclose = (e) => { + if (socket.everSucceeded && !socket.forceClose) { console.log("websocket closed, reconnecting"); - clearInterval(socket.heartbeat_timer); + clearInterval(socket.heartbeatTimer); setTimeout(() => { socket.init(handle); - }, socket.heartbeat_interval); - socket.socket_open = false; + }, socket.heartbeatInterval); + socket.socketOpen = false; handle?.onclose?.(e); } }; - socket.web_socket!.onerror = (e) => { + socket.webSocket!.onerror = (e) => { handle?.onerror?.(e); }; return undefined; }, heartbeat() { - if (socket.heartbeat_timer) { - clearInterval(socket.heartbeat_timer); + if (socket.heartbeatTimer) { + clearInterval(socket.heartbeatTimer); } - socket.heartbeat_timer = setInterval(() => { + socket.heartbeatTimer = setInterval(() => { socket.send({ message: "hello", signature_message: this.signatureData, }); - }, socket.heartbeat_interval); + }, socket.heartbeatInterval); }, send(data: any, callback?: Function) { if ( - socket.web_socket && - !!socket.web_socket?.readyState === socket.socket_open + socket.webSocket && + !!socket.webSocket?.readyState === socket.socketOpen ) { - socket.web_socket.send(JSON.stringify(data)); + socket.webSocket.send(JSON.stringify(data)); callback && callback(); } }, close() { - clearInterval(socket.heartbeat_timer); - socket.web_socket?.close(); + clearInterval(socket.heartbeatTimer); + socket.webSocket?.close(); }, }; From bd3870803a03854a85d8542b16eed56ba4ebb3a9 Mon Sep 17 00:00:00 2001 From: zhangyelong Date: Thu, 14 Nov 2024 11:53:22 +0800 Subject: [PATCH 13/16] fix response stream push --- build/.tsbuildinfo | 2 +- dist/chatClient.js | 15 +++++++++++---- src/chatClient.ts | 13 ++++++++++--- 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/build/.tsbuildinfo b/build/.tsbuildinfo index 077999f..af89b43 100644 --- a/build/.tsbuildinfo +++ b/build/.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../node_modules/uuid/dist/cjs/types.d.ts","../node_modules/uuid/dist/cjs/max.d.ts","../node_modules/uuid/dist/cjs/nil.d.ts","../node_modules/uuid/dist/cjs/parse.d.ts","../node_modules/uuid/dist/cjs/stringify.d.ts","../node_modules/uuid/dist/cjs/v1.d.ts","../node_modules/uuid/dist/cjs/v1tov6.d.ts","../node_modules/uuid/dist/cjs/v35.d.ts","../node_modules/uuid/dist/cjs/v3.d.ts","../node_modules/uuid/dist/cjs/v4.d.ts","../node_modules/uuid/dist/cjs/v5.d.ts","../node_modules/uuid/dist/cjs/v6.d.ts","../node_modules/uuid/dist/cjs/v6tov1.d.ts","../node_modules/uuid/dist/cjs/v7.d.ts","../node_modules/uuid/dist/cjs/validate.d.ts","../node_modules/uuid/dist/cjs/version.d.ts","../node_modules/uuid/dist/cjs/index.d.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"f6229e9a3b61afc102fa4fbf751b0380a13f5829c17e713236618a8c4775dbe2","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"8f3a9f71cdb065b198fda58667bc0b8570435e51f5898fc542e87a56b5174013","signature":"4b0ac71744613c7afb26581ec3be7d3dd18f31cde724036583ed750d8f5125f2"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},"a65cf458c879172bef4012d3397612e7357bf72971b09db5bb5bf8fca0957612","6ada175c0c585e89569e8feb8ff6fc9fc443d7f9ca6340b456e0f94cbef559bf","e56e4d95fad615c97eb0ae39c329a4cda9c0af178273a9173676cc9b14b58520","73e8dfd5e7d2abc18bdb5c5873e64dbdd1082408dd1921cad6ff7130d8339334","fc820b2f0c21501f51f79b58a21d3fa7ae5659fc1812784dbfbb72af147659ee","d128037db3a40d1d8ae8ec36431e6a4678df56d236729f620e58f4a37f9f33d0","31501b8fc4279e78f6a05ca35e365e73c0b0c57d06dbe8faecb10c7254ce7714","9985141f349552055b7b6b5082384fdbc1758ba14ff51fada049347628b4e018","c3b65655e9b7b290340f3a1c73c7e02907dd290a288de5e62726350da39b96b1","c0398181fff2b85eef72a8abfad6a8b31bc5989a3a763fd3d0fd61154e55bcfc","89daadaa769a9bf8c1fa26a464e06459197a5914ed42702e1ce439bb5915b767","83af685afea5d13d6cd6a8db34aba9aec7962c289bb6c92e770e838e7d5faec9","d05bd4d28c12545827349b0ac3a79c50658d68147dad38d13e97e22353544496","b99abb32e0aa47c71bf14b6bd2ebc526a4afcee1553c157e49864e41868bdfa4","04ace6bedd6f59c30ea6df1f0f8d432c728c8bc5c5fd0c5c1c80242d3ab51977","57a8a7772769c35ba7b4b1ba125f0812deec5c7102a0d04d9e15b1d22880c9e8","badcc9d59770b91987e962f8e3ddfa1e06671b0e4c5e2738bbd002255cad3f38",{"version":"dc124e13de1bca0ce0628e6647da0e29d991dc9ec1d50d1978311720d6a186b6","signature":"9ba1d55e604b6becf74140639da3adf48cebc060f17e91690a39f8b679037644"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],274,275,[293,313]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[362,363,400,401],[363,400],[404],[405],[408,410,411,412,413,414,415,416,417,418,419,420],[408,409,411,412,413,414,415,416,417,418,419,420],[409,410,411,412,413,414,415,416,417,418,419,420],[408,409,410,412,413,414,415,416,417,418,419,420],[408,409,410,411,413,414,415,416,417,418,419,420],[408,409,410,411,412,414,415,416,417,418,419,420],[408,409,410,411,412,413,415,416,417,418,419,420],[408,409,410,411,412,413,414,416,417,418,419,420],[408,409,410,411,412,413,414,415,417,418,419,420],[408,409,410,411,412,413,414,415,416,418,419,420],[408,409,410,411,412,413,414,415,416,417,419,420],[408,409,410,411,412,413,414,415,416,417,418,420],[408,409,410,411,412,413,414,415,416,417,418,419],[314],[349],[350,355,384],[351,362,363,370,381,392],[351,352,362,370],[353,393],[354,355,363,371],[355,381,389],[356,358,362,370],[349,357],[358,359],[362],[360,362],[349,362],[362,363,364,381,392],[362,363,364,377,381,384],[347,350,397],[358,362,365,370,381,392],[362,363,365,366,370,381,389,392],[365,367,381,389,392],[314,315,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399],[362,368],[369,392,397],[358,362,370,381],[371],[372],[349,373],[374,391,397],[375],[376],[362,377,378],[377,379,393,395],[350,362,381,382,383,384],[350,381,383],[381,382],[384],[385],[349,381],[362,387,388],[387,388],[355,370,381,389],[390],[370,391],[350,365,376,392],[355,393],[381,394],[369,395],[396],[350,355,362,364,373,381,392,395,397],[381,398],[423],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[324,328,392],[324,381,392],[319],[321,324,389,392],[370,389],[400],[319,400],[321,324,370,392],[316,317,320,323,350,362,381,392],[316,322],[320,324,350,384,392,400],[350,400],[340,350,400],[318,319,400],[324],[318,319,320,321,322,323,324,325,326,328,329,330,331,332,333,334,335,336,337,338,339,341,342,343,344,345,346],[324,331,332],[322,324,332,333],[323],[316,319,324],[324,328,332,333],[328],[322,324,327,392],[316,321,322,324,328,331],[350,381],[319,324,340,350,397,400],[276,277,278,279,280,281,282,284,285,286,287,288,289,290,291],[276],[276,283],[68,95,227,249,262,268,269,270,271,272,273,274,275,292,313],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,301],[220,222,223,224,230,301],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,313],[227],[268],[269,293],[217,222,227,229,230,233,239],[270],[68,217,313],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,301],[220,221,222,223,224,230,301],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[402,87],[403,88],[405,89],[406,90],[409,91],[410,92],[408,93],[411,94],[412,95],[413,96],[414,97],[415,98],[416,99],[417,100],[418,101],[419,102],[420,103],[314,104],[315,104],[349,105],[350,106],[351,107],[352,108],[353,109],[354,110],[355,111],[356,112],[357,113],[358,114],[359,114],[361,115],[360,116],[362,117],[363,118],[364,119],[348,120],[365,121],[366,122],[367,123],[400,124],[368,125],[369,126],[370,127],[371,128],[372,129],[373,130],[374,131],[375,132],[376,133],[377,134],[378,134],[379,135],[381,136],[383,137],[382,138],[384,139],[385,140],[386,141],[387,142],[388,143],[389,144],[390,145],[391,146],[392,147],[393,148],[394,149],[395,150],[396,151],[397,152],[398,153],[424,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[331,193],[338,194],[330,193],[345,195],[322,196],[321,197],[344,198],[339,199],[342,200],[324,201],[323,202],[319,203],[318,204],[341,205],[320,206],[325,207],[329,207],[347,208],[346,207],[333,209],[334,210],[336,211],[332,212],[335,213],[340,198],[327,214],[328,215],[337,216],[317,217],[343,218],[292,219],[281,220],[284,221],[283,220],[285,220],[286,221],[287,220],[289,220],[293,222],[249,223],[296,224],[227,225],[297,226],[229,227],[228,228],[299,224],[300,229],[301,229],[302,230],[303,231],[304,230],[230,224],[224,224],[307,224],[231,232],[308,233],[238,234],[234,229],[236,224],[237,224],[233,234],[235,235],[239,236],[232,224],[248,237],[311,224],[312,224],[225,224],[226,224],[222,238],[271,239],[270,240],[274,241],[275,242],[294,243],[240,244],[272,245],[218,246],[269,247]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[402,87],[403,88],[405,89],[406,90],[409,91],[410,92],[408,93],[411,94],[412,95],[413,96],[414,97],[415,98],[416,99],[417,100],[418,101],[419,102],[420,103],[314,104],[315,104],[349,105],[350,106],[351,107],[352,108],[353,109],[354,110],[355,111],[356,112],[357,113],[358,114],[359,114],[361,115],[360,116],[362,117],[363,118],[364,119],[348,120],[365,121],[366,122],[367,123],[400,124],[368,125],[369,126],[370,127],[371,128],[372,129],[373,130],[374,131],[375,132],[376,133],[377,134],[378,134],[379,135],[381,136],[383,137],[382,138],[384,139],[385,140],[386,141],[387,142],[388,143],[389,144],[390,145],[391,146],[392,147],[393,148],[394,149],[395,150],[396,151],[397,152],[398,153],[424,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[331,193],[338,194],[330,193],[345,195],[322,196],[321,197],[344,198],[339,199],[342,200],[324,201],[323,202],[319,203],[318,204],[341,205],[320,206],[325,207],[329,207],[347,208],[346,207],[333,209],[334,210],[336,211],[332,212],[335,213],[340,198],[327,214],[328,215],[337,216],[317,217],[343,218],[292,219],[281,220],[284,221],[283,220],[285,220],[286,221],[287,220],[289,220],[293,248],[249,249],[296,250],[227,225],[297,251],[229,252],[228,253],[299,250],[300,254],[301,254],[302,255],[303,256],[304,230],[230,224],[224,250],[307,250],[231,257],[308,258],[238,234],[234,254],[236,250],[237,224],[233,234],[235,259],[239,260],[232,224],[248,261],[311,250],[312,224],[225,224],[226,224],[222,77],[271,239],[270,262],[274,241],[275,242],[294,243],[240,263],[218,264],[269,265]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,402,403,404,405,406,407,409,410,408,411,412,413,414,415,416,417,418,419,420,221,401,314,315,349,350,351,352,353,354,355,356,357,358,359,361,360,362,363,364,348,399,365,366,367,400,368,369,370,371,372,373,374,375,376,377,378,379,380,381,383,382,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,421,422,423,424,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,331,338,330,345,322,321,344,339,342,324,323,319,318,341,320,325,326,329,316,347,346,333,334,336,332,335,340,327,328,337,317,343,292,277,278,279,280,276,281,282,284,283,285,286,287,288,289,290,291,100,293,249,296,227,297,229,228,298,299,300,301,302,303,304,230,224,305,306,307,231,308,238,234,236,237,233,235,239,232,248,309,310,311,312,225,226,222,295,223,271,270,274,275,294,219,240,272,313,218,269]},"version":"5.4.5"} \ No newline at end of file +{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../node_modules/uuid/dist/cjs/types.d.ts","../node_modules/uuid/dist/cjs/max.d.ts","../node_modules/uuid/dist/cjs/nil.d.ts","../node_modules/uuid/dist/cjs/parse.d.ts","../node_modules/uuid/dist/cjs/stringify.d.ts","../node_modules/uuid/dist/cjs/v1.d.ts","../node_modules/uuid/dist/cjs/v1tov6.d.ts","../node_modules/uuid/dist/cjs/v35.d.ts","../node_modules/uuid/dist/cjs/v3.d.ts","../node_modules/uuid/dist/cjs/v4.d.ts","../node_modules/uuid/dist/cjs/v5.d.ts","../node_modules/uuid/dist/cjs/v6.d.ts","../node_modules/uuid/dist/cjs/v6tov1.d.ts","../node_modules/uuid/dist/cjs/v7.d.ts","../node_modules/uuid/dist/cjs/validate.d.ts","../node_modules/uuid/dist/cjs/version.d.ts","../node_modules/uuid/dist/cjs/index.d.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"f6229e9a3b61afc102fa4fbf751b0380a13f5829c17e713236618a8c4775dbe2","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"8f3a9f71cdb065b198fda58667bc0b8570435e51f5898fc542e87a56b5174013","signature":"4b0ac71744613c7afb26581ec3be7d3dd18f31cde724036583ed750d8f5125f2"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},"a65cf458c879172bef4012d3397612e7357bf72971b09db5bb5bf8fca0957612","6ada175c0c585e89569e8feb8ff6fc9fc443d7f9ca6340b456e0f94cbef559bf","e56e4d95fad615c97eb0ae39c329a4cda9c0af178273a9173676cc9b14b58520","73e8dfd5e7d2abc18bdb5c5873e64dbdd1082408dd1921cad6ff7130d8339334","fc820b2f0c21501f51f79b58a21d3fa7ae5659fc1812784dbfbb72af147659ee","d128037db3a40d1d8ae8ec36431e6a4678df56d236729f620e58f4a37f9f33d0","31501b8fc4279e78f6a05ca35e365e73c0b0c57d06dbe8faecb10c7254ce7714","9985141f349552055b7b6b5082384fdbc1758ba14ff51fada049347628b4e018","c3b65655e9b7b290340f3a1c73c7e02907dd290a288de5e62726350da39b96b1","c0398181fff2b85eef72a8abfad6a8b31bc5989a3a763fd3d0fd61154e55bcfc","89daadaa769a9bf8c1fa26a464e06459197a5914ed42702e1ce439bb5915b767","83af685afea5d13d6cd6a8db34aba9aec7962c289bb6c92e770e838e7d5faec9","d05bd4d28c12545827349b0ac3a79c50658d68147dad38d13e97e22353544496","b99abb32e0aa47c71bf14b6bd2ebc526a4afcee1553c157e49864e41868bdfa4","04ace6bedd6f59c30ea6df1f0f8d432c728c8bc5c5fd0c5c1c80242d3ab51977","57a8a7772769c35ba7b4b1ba125f0812deec5c7102a0d04d9e15b1d22880c9e8","badcc9d59770b91987e962f8e3ddfa1e06671b0e4c5e2738bbd002255cad3f38",{"version":"6443acf7666e34e5851ffa8c24bfd4755a9a399fa01200e0561d2bf57e1c1c3b","signature":"9ba1d55e604b6becf74140639da3adf48cebc060f17e91690a39f8b679037644"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],274,275,[293,313]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[362,363,400,401],[363,400],[404],[405],[408,410,411,412,413,414,415,416,417,418,419,420],[408,409,411,412,413,414,415,416,417,418,419,420],[409,410,411,412,413,414,415,416,417,418,419,420],[408,409,410,412,413,414,415,416,417,418,419,420],[408,409,410,411,413,414,415,416,417,418,419,420],[408,409,410,411,412,414,415,416,417,418,419,420],[408,409,410,411,412,413,415,416,417,418,419,420],[408,409,410,411,412,413,414,416,417,418,419,420],[408,409,410,411,412,413,414,415,417,418,419,420],[408,409,410,411,412,413,414,415,416,418,419,420],[408,409,410,411,412,413,414,415,416,417,419,420],[408,409,410,411,412,413,414,415,416,417,418,420],[408,409,410,411,412,413,414,415,416,417,418,419],[314],[349],[350,355,384],[351,362,363,370,381,392],[351,352,362,370],[353,393],[354,355,363,371],[355,381,389],[356,358,362,370],[349,357],[358,359],[362],[360,362],[349,362],[362,363,364,381,392],[362,363,364,377,381,384],[347,350,397],[358,362,365,370,381,392],[362,363,365,366,370,381,389,392],[365,367,381,389,392],[314,315,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399],[362,368],[369,392,397],[358,362,370,381],[371],[372],[349,373],[374,391,397],[375],[376],[362,377,378],[377,379,393,395],[350,362,381,382,383,384],[350,381,383],[381,382],[384],[385],[349,381],[362,387,388],[387,388],[355,370,381,389],[390],[370,391],[350,365,376,392],[355,393],[381,394],[369,395],[396],[350,355,362,364,373,381,392,395,397],[381,398],[423],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[324,328,392],[324,381,392],[319],[321,324,389,392],[370,389],[400],[319,400],[321,324,370,392],[316,317,320,323,350,362,381,392],[316,322],[320,324,350,384,392,400],[350,400],[340,350,400],[318,319,400],[324],[318,319,320,321,322,323,324,325,326,328,329,330,331,332,333,334,335,336,337,338,339,341,342,343,344,345,346],[324,331,332],[322,324,332,333],[323],[316,319,324],[324,328,332,333],[328],[322,324,327,392],[316,321,322,324,328,331],[350,381],[319,324,340,350,397,400],[276,277,278,279,280,281,282,284,285,286,287,288,289,290,291],[276],[276,283],[68,95,227,249,262,268,269,270,271,272,273,274,275,292,313],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,301],[220,222,223,224,230,301],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,313],[227],[268],[269,293],[217,222,227,229,230,233,239],[270],[68,217,313],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,301],[220,221,222,223,224,230,301],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[402,87],[403,88],[405,89],[406,90],[409,91],[410,92],[408,93],[411,94],[412,95],[413,96],[414,97],[415,98],[416,99],[417,100],[418,101],[419,102],[420,103],[314,104],[315,104],[349,105],[350,106],[351,107],[352,108],[353,109],[354,110],[355,111],[356,112],[357,113],[358,114],[359,114],[361,115],[360,116],[362,117],[363,118],[364,119],[348,120],[365,121],[366,122],[367,123],[400,124],[368,125],[369,126],[370,127],[371,128],[372,129],[373,130],[374,131],[375,132],[376,133],[377,134],[378,134],[379,135],[381,136],[383,137],[382,138],[384,139],[385,140],[386,141],[387,142],[388,143],[389,144],[390,145],[391,146],[392,147],[393,148],[394,149],[395,150],[396,151],[397,152],[398,153],[424,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[331,193],[338,194],[330,193],[345,195],[322,196],[321,197],[344,198],[339,199],[342,200],[324,201],[323,202],[319,203],[318,204],[341,205],[320,206],[325,207],[329,207],[347,208],[346,207],[333,209],[334,210],[336,211],[332,212],[335,213],[340,198],[327,214],[328,215],[337,216],[317,217],[343,218],[292,219],[281,220],[284,221],[283,220],[285,220],[286,221],[287,220],[289,220],[293,222],[249,223],[296,224],[227,225],[297,226],[229,227],[228,228],[299,224],[300,229],[301,229],[302,230],[303,231],[304,230],[230,224],[224,224],[307,224],[231,232],[308,233],[238,234],[234,229],[236,224],[237,224],[233,234],[235,235],[239,236],[232,224],[248,237],[311,224],[312,224],[225,224],[226,224],[222,238],[271,239],[270,240],[274,241],[275,242],[294,243],[240,244],[272,245],[218,246],[269,247]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[402,87],[403,88],[405,89],[406,90],[409,91],[410,92],[408,93],[411,94],[412,95],[413,96],[414,97],[415,98],[416,99],[417,100],[418,101],[419,102],[420,103],[314,104],[315,104],[349,105],[350,106],[351,107],[352,108],[353,109],[354,110],[355,111],[356,112],[357,113],[358,114],[359,114],[361,115],[360,116],[362,117],[363,118],[364,119],[348,120],[365,121],[366,122],[367,123],[400,124],[368,125],[369,126],[370,127],[371,128],[372,129],[373,130],[374,131],[375,132],[376,133],[377,134],[378,134],[379,135],[381,136],[383,137],[382,138],[384,139],[385,140],[386,141],[387,142],[388,143],[389,144],[390,145],[391,146],[392,147],[393,148],[394,149],[395,150],[396,151],[397,152],[398,153],[424,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[331,193],[338,194],[330,193],[345,195],[322,196],[321,197],[344,198],[339,199],[342,200],[324,201],[323,202],[319,203],[318,204],[341,205],[320,206],[325,207],[329,207],[347,208],[346,207],[333,209],[334,210],[336,211],[332,212],[335,213],[340,198],[327,214],[328,215],[337,216],[317,217],[343,218],[292,219],[281,220],[284,221],[283,220],[285,220],[286,221],[287,220],[289,220],[293,248],[249,249],[296,250],[227,225],[297,251],[229,252],[228,253],[299,250],[300,254],[301,254],[302,255],[303,256],[304,230],[230,224],[224,250],[307,250],[231,257],[308,258],[238,234],[234,254],[236,250],[237,224],[233,234],[235,259],[239,260],[232,224],[248,261],[311,250],[312,224],[225,224],[226,224],[222,77],[271,239],[270,262],[274,241],[275,242],[294,243],[240,263],[218,264],[269,265]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,402,403,404,405,406,407,409,410,408,411,412,413,414,415,416,417,418,419,420,221,401,314,315,349,350,351,352,353,354,355,356,357,358,359,361,360,362,363,364,348,399,365,366,367,400,368,369,370,371,372,373,374,375,376,377,378,379,380,381,383,382,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,421,422,423,424,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,331,338,330,345,322,321,344,339,342,324,323,319,318,341,320,325,326,329,316,347,346,333,334,336,332,335,340,327,328,337,317,343,292,277,278,279,280,276,281,282,284,283,285,286,287,288,289,290,291,100,293,249,296,227,297,229,228,298,299,300,301,302,303,304,230,224,305,306,307,231,308,238,234,236,237,233,235,239,232,248,309,310,311,312,225,226,222,295,223,271,270,274,275,294,219,240,272,313,218,269]},"version":"5.4.5"} \ No newline at end of file diff --git a/dist/chatClient.js b/dist/chatClient.js index 27c6839..b3f9ec3 100644 --- a/dist/chatClient.js +++ b/dist/chatClient.js @@ -306,9 +306,6 @@ class ChatClient { session_id: messageJson?.session_id || "", total_payment, }); - if (messageJson?.session_id) { - this.minerSessionId = messageJson?.session_id; - } this.totalUsedPayment = new bignumber_js_1.BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); if (new bignumber_js_1.BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount)) { readableStream.push({ @@ -327,6 +324,16 @@ class ChatClient { ws.send(data); } } + else { + readableStream.push({ + code: 200, + message: messageJson?.content, + session_id: messageJson?.session_id || "", + }); + } + if (messageJson?.session_id) { + this.minerSessionId = messageJson?.session_id; + } } }; ws.onclose = (error) => { @@ -653,4 +660,4 @@ class ChatClient { } } exports.default = ChatClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQUVwRSwrQkFBb0M7QUFnQ3BDLE1BQU0sVUFBVTtJQW9DZCxZQUFZLE9BQXNCO1FBM0IxQixjQUFTLEdBQVEsRUFBRSxDQUFDO1FBQ3BCLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFDWixxQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFDckIsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQixzQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFldkIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFLMUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksaUNBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLGtDQUFpQixD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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQUVwRSwrQkFBb0M7QUFnQ3BDLE1BQU0sVUFBVTtJQW9DZCxZQUFZLE9BQXNCO1FBM0IxQixjQUFTLEdBQVEsRUFBRSxDQUFDO1FBQ3BCLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFDWixxQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFDckIsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQixzQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFldkIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFLMUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksaUNBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLGtDQUFpQixD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 \ No newline at end of file diff --git a/src/chatClient.ts b/src/chatClient.ts index 1ba35a0..9ef96f1 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -414,9 +414,6 @@ class ChatClient { session_id: messageJson?.session_id || "", total_payment, }); - if (messageJson?.session_id) { - this.minerSessionId = messageJson?.session_id; - } this.totalUsedPayment = new BigNumber(this.totalUsedPayment).plus(totalSignedPayment).toNumber(); if ( new BigNumber(this.totalUsedPayment).isGreaterThan(this.lockAmount) @@ -435,6 +432,16 @@ class ChatClient { }); ws.send(data); } + } else { + readableStream.push({ + code: 200, + message: messageJson?.content, + session_id: messageJson?.session_id || "", + }); + } + + if (messageJson?.session_id) { + this.minerSessionId = messageJson?.session_id; } } }; From 7e07016107d5c8da3a63a18741af059dff800abb Mon Sep 17 00:00:00 2001 From: zhangyelong Date: Thu, 14 Nov 2024 16:35:22 +0800 Subject: [PATCH 14/16] update session id generation --- build/.tsbuildinfo | 2 +- dist/chatClient.js | 5 ++--- package-lock.json | 19 ------------------- package.json | 3 +-- src/chatClient.ts | 6 +++--- 5 files changed, 7 insertions(+), 28 deletions(-) diff --git a/build/.tsbuildinfo b/build/.tsbuildinfo index af89b43..2382d58 100644 --- a/build/.tsbuildinfo +++ b/build/.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../node_modules/uuid/dist/cjs/types.d.ts","../node_modules/uuid/dist/cjs/max.d.ts","../node_modules/uuid/dist/cjs/nil.d.ts","../node_modules/uuid/dist/cjs/parse.d.ts","../node_modules/uuid/dist/cjs/stringify.d.ts","../node_modules/uuid/dist/cjs/v1.d.ts","../node_modules/uuid/dist/cjs/v1tov6.d.ts","../node_modules/uuid/dist/cjs/v35.d.ts","../node_modules/uuid/dist/cjs/v3.d.ts","../node_modules/uuid/dist/cjs/v4.d.ts","../node_modules/uuid/dist/cjs/v5.d.ts","../node_modules/uuid/dist/cjs/v6.d.ts","../node_modules/uuid/dist/cjs/v6tov1.d.ts","../node_modules/uuid/dist/cjs/v7.d.ts","../node_modules/uuid/dist/cjs/validate.d.ts","../node_modules/uuid/dist/cjs/version.d.ts","../node_modules/uuid/dist/cjs/index.d.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"f6229e9a3b61afc102fa4fbf751b0380a13f5829c17e713236618a8c4775dbe2","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"8f3a9f71cdb065b198fda58667bc0b8570435e51f5898fc542e87a56b5174013","signature":"4b0ac71744613c7afb26581ec3be7d3dd18f31cde724036583ed750d8f5125f2"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},"a65cf458c879172bef4012d3397612e7357bf72971b09db5bb5bf8fca0957612","6ada175c0c585e89569e8feb8ff6fc9fc443d7f9ca6340b456e0f94cbef559bf","e56e4d95fad615c97eb0ae39c329a4cda9c0af178273a9173676cc9b14b58520","73e8dfd5e7d2abc18bdb5c5873e64dbdd1082408dd1921cad6ff7130d8339334","fc820b2f0c21501f51f79b58a21d3fa7ae5659fc1812784dbfbb72af147659ee","d128037db3a40d1d8ae8ec36431e6a4678df56d236729f620e58f4a37f9f33d0","31501b8fc4279e78f6a05ca35e365e73c0b0c57d06dbe8faecb10c7254ce7714","9985141f349552055b7b6b5082384fdbc1758ba14ff51fada049347628b4e018","c3b65655e9b7b290340f3a1c73c7e02907dd290a288de5e62726350da39b96b1","c0398181fff2b85eef72a8abfad6a8b31bc5989a3a763fd3d0fd61154e55bcfc","89daadaa769a9bf8c1fa26a464e06459197a5914ed42702e1ce439bb5915b767","83af685afea5d13d6cd6a8db34aba9aec7962c289bb6c92e770e838e7d5faec9","d05bd4d28c12545827349b0ac3a79c50658d68147dad38d13e97e22353544496","b99abb32e0aa47c71bf14b6bd2ebc526a4afcee1553c157e49864e41868bdfa4","04ace6bedd6f59c30ea6df1f0f8d432c728c8bc5c5fd0c5c1c80242d3ab51977","57a8a7772769c35ba7b4b1ba125f0812deec5c7102a0d04d9e15b1d22880c9e8","badcc9d59770b91987e962f8e3ddfa1e06671b0e4c5e2738bbd002255cad3f38",{"version":"6443acf7666e34e5851ffa8c24bfd4755a9a399fa01200e0561d2bf57e1c1c3b","signature":"9ba1d55e604b6becf74140639da3adf48cebc060f17e91690a39f8b679037644"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],274,275,[293,313]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[362,363,400,401],[363,400],[404],[405],[408,410,411,412,413,414,415,416,417,418,419,420],[408,409,411,412,413,414,415,416,417,418,419,420],[409,410,411,412,413,414,415,416,417,418,419,420],[408,409,410,412,413,414,415,416,417,418,419,420],[408,409,410,411,413,414,415,416,417,418,419,420],[408,409,410,411,412,414,415,416,417,418,419,420],[408,409,410,411,412,413,415,416,417,418,419,420],[408,409,410,411,412,413,414,416,417,418,419,420],[408,409,410,411,412,413,414,415,417,418,419,420],[408,409,410,411,412,413,414,415,416,418,419,420],[408,409,410,411,412,413,414,415,416,417,419,420],[408,409,410,411,412,413,414,415,416,417,418,420],[408,409,410,411,412,413,414,415,416,417,418,419],[314],[349],[350,355,384],[351,362,363,370,381,392],[351,352,362,370],[353,393],[354,355,363,371],[355,381,389],[356,358,362,370],[349,357],[358,359],[362],[360,362],[349,362],[362,363,364,381,392],[362,363,364,377,381,384],[347,350,397],[358,362,365,370,381,392],[362,363,365,366,370,381,389,392],[365,367,381,389,392],[314,315,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399],[362,368],[369,392,397],[358,362,370,381],[371],[372],[349,373],[374,391,397],[375],[376],[362,377,378],[377,379,393,395],[350,362,381,382,383,384],[350,381,383],[381,382],[384],[385],[349,381],[362,387,388],[387,388],[355,370,381,389],[390],[370,391],[350,365,376,392],[355,393],[381,394],[369,395],[396],[350,355,362,364,373,381,392,395,397],[381,398],[423],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[324,328,392],[324,381,392],[319],[321,324,389,392],[370,389],[400],[319,400],[321,324,370,392],[316,317,320,323,350,362,381,392],[316,322],[320,324,350,384,392,400],[350,400],[340,350,400],[318,319,400],[324],[318,319,320,321,322,323,324,325,326,328,329,330,331,332,333,334,335,336,337,338,339,341,342,343,344,345,346],[324,331,332],[322,324,332,333],[323],[316,319,324],[324,328,332,333],[328],[322,324,327,392],[316,321,322,324,328,331],[350,381],[319,324,340,350,397,400],[276,277,278,279,280,281,282,284,285,286,287,288,289,290,291],[276],[276,283],[68,95,227,249,262,268,269,270,271,272,273,274,275,292,313],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,301],[220,222,223,224,230,301],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,313],[227],[268],[269,293],[217,222,227,229,230,233,239],[270],[68,217,313],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,301],[220,221,222,223,224,230,301],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[402,87],[403,88],[405,89],[406,90],[409,91],[410,92],[408,93],[411,94],[412,95],[413,96],[414,97],[415,98],[416,99],[417,100],[418,101],[419,102],[420,103],[314,104],[315,104],[349,105],[350,106],[351,107],[352,108],[353,109],[354,110],[355,111],[356,112],[357,113],[358,114],[359,114],[361,115],[360,116],[362,117],[363,118],[364,119],[348,120],[365,121],[366,122],[367,123],[400,124],[368,125],[369,126],[370,127],[371,128],[372,129],[373,130],[374,131],[375,132],[376,133],[377,134],[378,134],[379,135],[381,136],[383,137],[382,138],[384,139],[385,140],[386,141],[387,142],[388,143],[389,144],[390,145],[391,146],[392,147],[393,148],[394,149],[395,150],[396,151],[397,152],[398,153],[424,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[331,193],[338,194],[330,193],[345,195],[322,196],[321,197],[344,198],[339,199],[342,200],[324,201],[323,202],[319,203],[318,204],[341,205],[320,206],[325,207],[329,207],[347,208],[346,207],[333,209],[334,210],[336,211],[332,212],[335,213],[340,198],[327,214],[328,215],[337,216],[317,217],[343,218],[292,219],[281,220],[284,221],[283,220],[285,220],[286,221],[287,220],[289,220],[293,222],[249,223],[296,224],[227,225],[297,226],[229,227],[228,228],[299,224],[300,229],[301,229],[302,230],[303,231],[304,230],[230,224],[224,224],[307,224],[231,232],[308,233],[238,234],[234,229],[236,224],[237,224],[233,234],[235,235],[239,236],[232,224],[248,237],[311,224],[312,224],[225,224],[226,224],[222,238],[271,239],[270,240],[274,241],[275,242],[294,243],[240,244],[272,245],[218,246],[269,247]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[402,87],[403,88],[405,89],[406,90],[409,91],[410,92],[408,93],[411,94],[412,95],[413,96],[414,97],[415,98],[416,99],[417,100],[418,101],[419,102],[420,103],[314,104],[315,104],[349,105],[350,106],[351,107],[352,108],[353,109],[354,110],[355,111],[356,112],[357,113],[358,114],[359,114],[361,115],[360,116],[362,117],[363,118],[364,119],[348,120],[365,121],[366,122],[367,123],[400,124],[368,125],[369,126],[370,127],[371,128],[372,129],[373,130],[374,131],[375,132],[376,133],[377,134],[378,134],[379,135],[381,136],[383,137],[382,138],[384,139],[385,140],[386,141],[387,142],[388,143],[389,144],[390,145],[391,146],[392,147],[393,148],[394,149],[395,150],[396,151],[397,152],[398,153],[424,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[331,193],[338,194],[330,193],[345,195],[322,196],[321,197],[344,198],[339,199],[342,200],[324,201],[323,202],[319,203],[318,204],[341,205],[320,206],[325,207],[329,207],[347,208],[346,207],[333,209],[334,210],[336,211],[332,212],[335,213],[340,198],[327,214],[328,215],[337,216],[317,217],[343,218],[292,219],[281,220],[284,221],[283,220],[285,220],[286,221],[287,220],[289,220],[293,248],[249,249],[296,250],[227,225],[297,251],[229,252],[228,253],[299,250],[300,254],[301,254],[302,255],[303,256],[304,230],[230,224],[224,250],[307,250],[231,257],[308,258],[238,234],[234,254],[236,250],[237,224],[233,234],[235,259],[239,260],[232,224],[248,261],[311,250],[312,224],[225,224],[226,224],[222,77],[271,239],[270,262],[274,241],[275,242],[294,243],[240,263],[218,264],[269,265]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,402,403,404,405,406,407,409,410,408,411,412,413,414,415,416,417,418,419,420,221,401,314,315,349,350,351,352,353,354,355,356,357,358,359,361,360,362,363,364,348,399,365,366,367,400,368,369,370,371,372,373,374,375,376,377,378,379,380,381,383,382,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,421,422,423,424,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,331,338,330,345,322,321,344,339,342,324,323,319,318,341,320,325,326,329,316,347,346,333,334,336,332,335,340,327,328,337,317,343,292,277,278,279,280,276,281,282,284,283,285,286,287,288,289,290,291,100,293,249,296,227,297,229,228,298,299,300,301,302,303,304,230,224,305,306,307,231,308,238,234,236,237,233,235,239,232,248,309,310,311,312,225,226,222,295,223,271,270,274,275,294,219,240,272,313,218,269]},"version":"5.4.5"} \ No newline at end of file +{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"f6229e9a3b61afc102fa4fbf751b0380a13f5829c17e713236618a8c4775dbe2","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"8f3a9f71cdb065b198fda58667bc0b8570435e51f5898fc542e87a56b5174013","signature":"4b0ac71744613c7afb26581ec3be7d3dd18f31cde724036583ed750d8f5125f2"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"ffe43b0913f0ab227643678a4902d031a780c1b5c46cb8c554f99819eaa7d52a","signature":"9ba1d55e604b6becf74140639da3adf48cebc060f17e91690a39f8b679037644"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file diff --git a/dist/chatClient.js b/dist/chatClient.js index b3f9ec3..4fb5674 100644 --- a/dist/chatClient.js +++ b/dist/chatClient.js @@ -14,7 +14,6 @@ const proto_signing_1 = require("@cosmjs/proto-signing"); const crypto_1 = require("@cosmjs/crypto"); const getAgentUrls_1 = require("./helpers/getAgentUrls"); const getIsChainInfoValid_1 = require("./helpers/getIsChainInfoValid"); -const uuid_1 = require("uuid"); class ChatClient { constructor(options) { this.chatQueue = []; @@ -492,7 +491,7 @@ class ChatClient { const readableStream = new stream_browserify_1.Readable({ objectMode: true }); readableStream._read = () => { }; if (this.isByPass) { - this.agentSessionId = (0, uuid_1.v4)(); + this.agentSessionId = Buffer.from(crypto_1.Random.getBytes(16)).toString("hex"); readableStream.push({ code: 200, message: this.agentSessionId, @@ -660,4 +659,4 @@ class ChatClient { } } exports.default = ChatClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBOEM7QUFFOUMseURBQXNEO0FBQ3RELHVFQUFvRTtBQUVwRSwrQkFBb0M7QUFnQ3BDLE1BQU0sVUFBVTtJQW9DZCxZQUFZLE9BQXNCO1FBM0IxQixjQUFTLEdBQVEsRUFBRSxDQUFDO1FBQ3BCLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFDWixxQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFDckIsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQixzQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFldkIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFLMUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksaUNBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLGtDQUFpQixD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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBc0Q7QUFFdEQseURBQXNEO0FBQ3RELHVFQUFvRTtBQWtDcEUsTUFBTSxVQUFVO0lBb0NkLFlBQVksT0FBc0I7UUEzQjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWV2QixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUsxQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxJQUFJLGlDQUFnQixDQUFDO1FBQ3ZELElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsSUFBSSxrQ0FBaUIsQ0FBQztRQUMxRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFB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 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index bcd844c..7dcf446 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,6 @@ "crypto-js": "^4.2.0", "elliptic": "^6.5.5", "stream-browserify": "^3.0.0", - "uuid": "^11.0.3", "ws": "^7.5.9" }, "devDependencies": { @@ -6481,19 +6480,6 @@ "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true }, - "node_modules/uuid": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", - "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "license": "MIT", - "bin": { - "uuid": "dist/esm/bin/uuid" - } - }, "node_modules/v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", @@ -11752,11 +11738,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "uuid": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", - "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==" - }, "v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", diff --git a/package.json b/package.json index 5bff8dc..722c03a 100644 --- a/package.json +++ b/package.json @@ -26,8 +26,7 @@ "crypto-js": "^4.2.0", "elliptic": "^6.5.5", "stream-browserify": "^3.0.0", - "ws": "^7.5.9", - "uuid": "^11.0.3" + "ws": "^7.5.9" }, "devDependencies": { "@types/crypto-js": "^4.2.2", diff --git a/src/chatClient.ts b/src/chatClient.ts index 9ef96f1..fe67bbf 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -16,12 +16,12 @@ import { DirectSecp256k1HdWallet, DirectSecp256k1Wallet, } from "@cosmjs/proto-signing"; -import { stringToPath } from "@cosmjs/crypto"; +import { stringToPath, Random } from "@cosmjs/crypto"; import { NesaClient } from "./client"; import { getAgentUrls } from "./helpers/getAgentUrls"; import { getIsChainInfoValid } from "./helpers/getIsChainInfoValid"; import { TokenPrice, InferenceAgent } from "./codec/agent/v1/agent"; -import { v4 as uuidv4 } from 'uuid'; + interface TokenNumber { inputTokens: number; outputTokens: number; @@ -629,7 +629,7 @@ class ChatClient { const readableStream = new Readable({ objectMode: true }); readableStream._read = () => {}; if (this.isByPass) { - this.agentSessionId = uuidv4(); + this.agentSessionId = Buffer.from(Random.getBytes(16)).toString("hex"); readableStream.push({ code: 200, message: this.agentSessionId, From 46308c85a79866aa917b9572cfaf7429d09d8291 Mon Sep 17 00:00:00 2001 From: zhangyelong Date: Fri, 15 Nov 2024 21:39:42 +0800 Subject: [PATCH 15/16] optmize subprotocol params --- build/.tsbuildinfo | 2 +- dist/chatClient.js | 6 +++--- dist/helpers/getAgentUrls.d.ts | 2 +- dist/helpers/getAgentUrls.js | 8 +++++--- dist/socket.js | 5 ++--- src/chatClient.ts | 6 +++--- src/helpers/getAgentUrls.ts | 9 ++++++--- src/socket.ts | 3 +-- 8 files changed, 22 insertions(+), 19 deletions(-) diff --git a/build/.tsbuildinfo b/build/.tsbuildinfo index 2382d58..b655f3b 100644 --- a/build/.tsbuildinfo +++ b/build/.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"f6229e9a3b61afc102fa4fbf751b0380a13f5829c17e713236618a8c4775dbe2","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"8f3a9f71cdb065b198fda58667bc0b8570435e51f5898fc542e87a56b5174013","signature":"4b0ac71744613c7afb26581ec3be7d3dd18f31cde724036583ed750d8f5125f2"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"ffe43b0913f0ab227643678a4902d031a780c1b5c46cb8c554f99819eaa7d52a","signature":"9ba1d55e604b6becf74140639da3adf48cebc060f17e91690a39f8b679037644"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file +{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"59bda0c2d8416fb9d3311127d0d5918d92bd89b38f323c2f09163391cfa59998","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"e630c678591902c5cf75b12d52ed9a1a54c1824bafcb4baede3e4267ab056850","signature":"5c4f56f33b2fa89debc9d40065a4a9f883e92e571168c22c9b8b788e893dfbbc"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"264871baaedc80273e58773b70d616b7bbb0e8f62a91f589164c07c58285aa15","signature":"9ba1d55e604b6becf74140639da3adf48cebc060f17e91690a39f8b679037644"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file diff --git a/dist/chatClient.js b/dist/chatClient.js index 4fb5674..e78cf05 100644 --- a/dist/chatClient.js +++ b/dist/chatClient.js @@ -43,7 +43,7 @@ class ChatClient { this.minerSessionId = ""; this.isByPass = options.isByPass || false; this.agentUrl = options.isByPass ? (options.agentUrl || "") : ""; - this.authToken = options.authToken || ""; + this.authToken = options.authToken; // console.log("client options", options, this.chatId); if (!this.isByPass) { this.initWallet(); @@ -189,7 +189,7 @@ class ChatClient { let messageTimes = 0; try { let ws; - const protocols = [this.authToken || ""]; + const protocols = this.isByPass ? this.authToken : undefined; if (this.isBrowser) { ws = new WebSocket(this.agentChatUrl, protocols); } @@ -659,4 +659,4 @@ class ChatClient { } } exports.default = ChatClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBc0Q7QUFFdEQseURBQXNEO0FBQ3RELHVFQUFvRTtBQWtDcEUsTUFBTSxVQUFVO0lBb0NkLFlBQVksT0FBc0I7UUEzQjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWV2QixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUsxQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxJQUFJLGlDQUFnQixDQUFDO1FBQ3ZELElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsSUFBSSxrQ0FBaUIsQ0FBQztRQUMxRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFB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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBc0Q7QUFFdEQseURBQXNEO0FBQ3RELHVFQUFvRTtBQWtDcEUsTUFBTSxVQUFVO0lBb0NkLFlBQVksT0FBc0I7UUEzQjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWV2QixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUsxQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxJQUFJLGlDQUFnQixDQUFDO1FBQ3ZELElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsSUFBSSxrQ0FBaUIsQ0FBQztRQUMxRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFB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 \ No newline at end of file diff --git a/dist/helpers/getAgentUrls.d.ts b/dist/helpers/getAgentUrls.d.ts index 3ace586..ef1c512 100644 --- a/dist/helpers/getAgentUrls.d.ts +++ b/dist/helpers/getAgentUrls.d.ts @@ -1,5 +1,5 @@ import type { InferenceAgent } from "../codec/agent/v1/agent"; -export declare const getAgentUrls: (selectAgent: InferenceAgent, chatId: string, agentSessionId: string) => { +export declare const getAgentUrls: (selectAgent: InferenceAgent, chatId?: string, agentSessionId?: string) => { agentChatUrl: string; agentHeartbeatUrl: string; }; diff --git a/dist/helpers/getAgentUrls.js b/dist/helpers/getAgentUrls.js index cf3093e..5e89b01 100644 --- a/dist/helpers/getAgentUrls.js +++ b/dist/helpers/getAgentUrls.js @@ -3,10 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getAgentUrls = void 0; const getAgentUrls = (selectAgent, chatId, agentSessionId) => { const baseUrl = `${selectAgent.url}${selectAgent.url?.endsWith("/") ? "" : "/"}`; + const paramChatId = chatId && chatId !== '' ? `&chat-id=${chatId}` : ''; + const paramSessionId = agentSessionId && agentSessionId !== '' ? `&session-id=${agentSessionId}` : ''; return { - agentChatUrl: `${baseUrl}chat?chat-id=${chatId}&session-id=${agentSessionId}`, - agentHeartbeatUrl: `${baseUrl}heartbeat?chat-id=${chatId}&session-id=${agentSessionId}`, + agentChatUrl: `${baseUrl}chat?${paramChatId}${paramSessionId}`, + agentHeartbeatUrl: `${baseUrl}heartbeat?${paramChatId}${paramSessionId}`, }; }; exports.getAgentUrls = getAgentUrls; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0QWdlbnRVcmxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvZ2V0QWdlbnRVcmxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVPLE1BQU0sWUFBWSxHQUFHLENBQUMsV0FBMkIsRUFBRSxNQUFjLEVBQUUsY0FBc0IsRUFBRSxFQUFFO0lBQ2xHLE1BQU0sT0FBTyxHQUFHLEdBQUcsV0FBVyxDQUFDLEdBQUcsR0FDaEMsV0FBVyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FDeEMsRUFBRSxDQUFDO0lBQ0gsT0FBTztRQUNMLFlBQVksRUFBRSxHQUFHLE9BQU8sZ0JBQWdCLE1BQU0sZUFBZSxjQUFjLEVBQUU7UUFDN0UsaUJBQWlCLEVBQUUsR0FBRyxPQUFPLHFCQUFxQixNQUFNLGVBQWUsY0FBYyxFQUFFO0tBQ3hGLENBQUM7QUFDSixDQUFDLENBQUM7QUFSVyxRQUFBLFlBQVksZ0JBUXZCIn0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0QWdlbnRVcmxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvZ2V0QWdlbnRVcmxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVPLE1BQU0sWUFBWSxHQUFHLENBQUMsV0FBMkIsRUFBRSxNQUFlLEVBQUUsY0FBdUIsRUFBRSxFQUFFO0lBQ3BHLE1BQU0sT0FBTyxHQUFHLEdBQUcsV0FBVyxDQUFDLEdBQUcsR0FDaEMsV0FBVyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FDeEMsRUFBRSxDQUFDO0lBRUgsTUFBTSxXQUFXLEdBQUcsTUFBTSxJQUFJLE1BQU0sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtJQUN2RSxNQUFNLGNBQWMsR0FBRyxjQUFjLElBQUksY0FBYyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsZUFBZSxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO0lBQ3JHLE9BQU87UUFDTCxZQUFZLEVBQUUsR0FBRyxPQUFPLFFBQVEsV0FBVyxHQUFHLGNBQWMsRUFBRTtRQUM5RCxpQkFBaUIsRUFBRSxHQUFHLE9BQU8sYUFBYSxXQUFXLEdBQUcsY0FBYyxFQUFFO0tBQ3pFLENBQUM7QUFDSixDQUFDLENBQUM7QUFYVyxRQUFBLFlBQVksZ0JBV3ZCIn0= \ No newline at end of file diff --git a/dist/socket.js b/dist/socket.js index b794f61..021b270 100644 --- a/dist/socket.js +++ b/dist/socket.js @@ -17,13 +17,12 @@ exports.socket = { init(handle) { exports.socket.wsUrl = handle.wsUrl; let webSocket; + const protocols = handle.isBypass ? handle.authToken : undefined; if (typeof window === "undefined") { const WebSocket = require("ws"); - const protocols = [handle.authToken || ""]; webSocket = new WebSocket(exports.socket.wsUrl, protocols); } else { - const protocols = [handle.authToken || ""]; webSocket = new WebSocket(exports.socket.wsUrl, protocols); } exports.socket.webSocket = webSocket; @@ -84,4 +83,4 @@ exports.socket = { exports.socket.webSocket?.close(); }, }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrRUFBMEM7QUEwQjdCLFFBQUEsTUFBTSxHQUFZO0lBQzdCLFNBQVMsRUFBRSxJQUFJO0lBQ2YsYUFBYSxFQUFFLEtBQUs7SUFDcEIsS0FBSyxFQUFFLEVBQUU7SUFDVCxVQUFVLEVBQUUsS0FBSztJQUNqQixjQUFjLEVBQUUsU0FBUztJQUN6QixpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLGFBQWEsRUFBRSxFQUFFO0lBQ2pCLFVBQVUsRUFBRSxLQUFLO0lBRWpCLElBQUksQ0FBQyxNQUFNO1FBQ1QsY0FBTSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzVCLElBQUksU0FBUyxDQUFDO1FBQ2QsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNsQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxjQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3JELENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxjQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxjQUFNLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUM3QixjQUFNLENBQUMsU0FBVSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7WUFDOUIsY0FBTSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7WUFDekIsY0FBTSxDQUFD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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrRUFBMEM7QUEwQjdCLFFBQUEsTUFBTSxHQUFZO0lBQzdCLFNBQVMsRUFBRSxJQUFJO0lBQ2YsYUFBYSxFQUFFLEtBQUs7SUFDcEIsS0FBSyxFQUFFLEVBQUU7SUFDVCxVQUFVLEVBQUUsS0FBSztJQUNqQixjQUFjLEVBQUUsU0FBUztJQUN6QixpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLGFBQWEsRUFBRSxFQUFFO0lBQ2pCLFVBQVUsRUFBRSxLQUFLO0lBRWpCLElBQUksQ0FBQyxNQUFNO1FBQ1QsY0FBTSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzVCLElBQUksU0FBUyxDQUFDO1FBQ2QsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ2pFLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDbEMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxjQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3JELENBQUM7YUFBTSxDQUFDO1lBQ04sU0FBUyxHQUFHLElBQUksU0FBUyxDQUFDLGNBQU0sQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELGNBQU0sQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzdCLGNBQU0sQ0FBQyxTQUFVLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtZQUM5QixjQUFNLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUN6QixjQUFNLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUM1QixJQUFJ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 \ No newline at end of file diff --git a/src/chatClient.ts b/src/chatClient.ts index fe67bbf..c729f04 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -87,7 +87,7 @@ class ChatClient { private minerSessionId: string; private agentSessionId = ""; private isByPass: boolean; - private authToken: string; + private authToken: string | undefined; constructor(options: ConfigOptions) { this.modelName = options?.modelName?.toLowerCase(); @@ -107,7 +107,7 @@ class ChatClient { this.minerSessionId = ""; this.isByPass = options.isByPass || false; this.agentUrl = options.isByPass ? (options.agentUrl || "") : ""; - this.authToken = options.authToken || ""; + this.authToken = options.authToken; // console.log("client options", options, this.chatId); if (!this.isByPass) { this.initWallet(); @@ -290,7 +290,7 @@ class ChatClient { try { let ws: WebSocket; - const protocols = [this.authToken || ""]; + const protocols = this.isByPass ? this.authToken : undefined; if (this.isBrowser) { ws = new WebSocket(this.agentChatUrl, protocols); } else { diff --git a/src/helpers/getAgentUrls.ts b/src/helpers/getAgentUrls.ts index 6e38d18..4ea94b0 100644 --- a/src/helpers/getAgentUrls.ts +++ b/src/helpers/getAgentUrls.ts @@ -1,11 +1,14 @@ import type { InferenceAgent } from "../codec/agent/v1/agent"; -export const getAgentUrls = (selectAgent: InferenceAgent, chatId: string, agentSessionId: string) => { +export const getAgentUrls = (selectAgent: InferenceAgent, chatId?: string, agentSessionId?: string) => { const baseUrl = `${selectAgent.url}${ selectAgent.url?.endsWith("/") ? "" : "/" }`; + + const paramChatId = chatId && chatId !== '' ? `&chat-id=${chatId}` : '' + const paramSessionId = agentSessionId && agentSessionId !== '' ? `&session-id=${agentSessionId}` : '' return { - agentChatUrl: `${baseUrl}chat?chat-id=${chatId}&session-id=${agentSessionId}`, - agentHeartbeatUrl: `${baseUrl}heartbeat?chat-id=${chatId}&session-id=${agentSessionId}`, + agentChatUrl: `${baseUrl}chat?${paramChatId}${paramSessionId}`, + agentHeartbeatUrl: `${baseUrl}heartbeat?${paramChatId}${paramSessionId}`, }; }; diff --git a/src/socket.ts b/src/socket.ts index acf1c14..6f8df70 100644 --- a/src/socket.ts +++ b/src/socket.ts @@ -37,12 +37,11 @@ export const socket: ISocket = { init(handle) { socket.wsUrl = handle.wsUrl; let webSocket; + const protocols = handle.isBypass ? handle.authToken : undefined; if (typeof window === "undefined") { const WebSocket = require("ws"); - const protocols = [handle.authToken || ""]; webSocket = new WebSocket(socket.wsUrl, protocols); } else { - const protocols = [handle.authToken || ""]; webSocket = new WebSocket(socket.wsUrl, protocols); } socket.webSocket = webSocket; From ffa68a5df9a77fce5daf8d49e249d899f6451028 Mon Sep 17 00:00:00 2001 From: mitch Date: Tue, 31 Dec 2024 14:32:59 +0800 Subject: [PATCH 16/16] Support additional_params & model_params --- build/.tsbuildinfo | 2 +- dist/chatClient.d.ts | 4 +++- dist/chatClient.js | 6 ++++-- src/chatClient.ts | 10 ++++++++-- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/build/.tsbuildinfo b/build/.tsbuildinfo index b655f3b..55195bc 100644 --- a/build/.tsbuildinfo +++ b/build/.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"59bda0c2d8416fb9d3311127d0d5918d92bd89b38f323c2f09163391cfa59998","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"e630c678591902c5cf75b12d52ed9a1a54c1824bafcb4baede3e4267ab056850","signature":"5c4f56f33b2fa89debc9d40065a4a9f883e92e571168c22c9b8b788e893dfbbc"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"264871baaedc80273e58773b70d616b7bbb0e8f62a91f589164c07c58285aa15","signature":"9ba1d55e604b6becf74140639da3adf48cebc060f17e91690a39f8b679037644"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file +{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@types/crypto-js/index.d.ts","../node_modules/@cosmjs/amino/build/pubkeys.d.ts","../node_modules/@cosmjs/amino/build/addresses.d.ts","../node_modules/@cosmjs/amino/build/coins.d.ts","../node_modules/@cosmjs/amino/build/encoding.d.ts","../node_modules/@cosmjs/amino/build/multisig.d.ts","../node_modules/@cosmjs/amino/build/omitdefault.d.ts","../node_modules/@cosmjs/crypto/build/bip39.d.ts","../node_modules/@cosmjs/crypto/build/hash.d.ts","../node_modules/@cosmjs/crypto/build/hmac.d.ts","../node_modules/@cosmjs/crypto/build/keccak.d.ts","../node_modules/@cosmjs/crypto/build/libsodium.d.ts","../node_modules/@cosmjs/crypto/build/random.d.ts","../node_modules/@cosmjs/crypto/build/ripemd.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1signature.d.ts","../node_modules/@cosmjs/crypto/build/secp256k1.d.ts","../node_modules/@cosmjs/crypto/build/sha.d.ts","../node_modules/@cosmjs/math/build/integers.d.ts","../node_modules/@cosmjs/math/build/decimal.d.ts","../node_modules/@cosmjs/math/build/index.d.ts","../node_modules/@cosmjs/crypto/build/slip10.d.ts","../node_modules/@cosmjs/crypto/build/index.d.ts","../node_modules/@cosmjs/amino/build/paths.d.ts","../node_modules/@cosmjs/amino/build/signdoc.d.ts","../node_modules/@cosmjs/amino/build/signature.d.ts","../node_modules/@cosmjs/amino/build/signer.d.ts","../node_modules/@cosmjs/amino/build/wallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1hdwallet.d.ts","../node_modules/@cosmjs/amino/build/secp256k1wallet.d.ts","../node_modules/@cosmjs/amino/build/stdtx.d.ts","../node_modules/@cosmjs/amino/build/index.d.ts","../node_modules/cosmjs-types/binary.d.ts","../node_modules/cosmjs-types/google/protobuf/any.d.ts","../node_modules/@cosmjs/stargate/build/accounts.d.ts","../node_modules/cosmjs-types/cosmos/crypto/multisig/v1beta1/multisig.d.ts","../node_modules/cosmjs-types/cosmos/tx/signing/v1beta1/signing.d.ts","../node_modules/cosmjs-types/cosmos/base/v1beta1/coin.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/tx.d.ts","../node_modules/@cosmjs/proto-signing/build/decode.d.ts","../node_modules/@cosmjs/proto-signing/build/signer.d.ts","../node_modules/@cosmjs/proto-signing/build/wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1hdwallet.d.ts","../node_modules/@cosmjs/proto-signing/build/directsecp256k1wallet.d.ts","../node_modules/@cosmjs/proto-signing/build/paths.d.ts","../node_modules/@cosmjs/proto-signing/build/pubkey.d.ts","../node_modules/protobufjs/index.d.ts","../node_modules/@cosmjs/proto-signing/build/registry.d.ts","../node_modules/@cosmjs/proto-signing/build/signing.d.ts","../node_modules/@cosmjs/proto-signing/build/index.d.ts","../node_modules/@cosmjs/stargate/build/aminotypes.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/addresses.d.ts","../node_modules/readonly-date/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/dates.d.ts","../node_modules/xstream/index.d.ts","../node_modules/@cosmjs/json-rpc/build/id.d.ts","../node_modules/@cosmjs/json-rpc/build/compatibility.d.ts","../node_modules/@cosmjs/json-rpc/build/types.d.ts","../node_modules/@cosmjs/json-rpc/build/jsonrpcclient.d.ts","../node_modules/@cosmjs/json-rpc/build/parse.d.ts","../node_modules/@cosmjs/json-rpc/build/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/rpcclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/httpbatchclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/websocketclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/rpcclients/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/types.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/comet38client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/comet38/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/tendermint34client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint34/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/requests.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/responses.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/tendermint37client.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermint37/index.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/tendermintclient.d.ts","../node_modules/@cosmjs/tendermint-rpc/build/index.d.ts","../node_modules/@cosmjs/stargate/build/events.d.ts","../node_modules/@cosmjs/stargate/build/fee.d.ts","../node_modules/@cosmjs/stargate/build/logs.d.ts","../node_modules/cosmjs-types/tendermint/crypto/proof.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/queryclient.d.ts","../node_modules/cosmjs-types/cosmos/base/query/v1beta1/pagination.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/utils.d.ts","../node_modules/@cosmjs/stargate/build/queryclient/index.d.ts","../node_modules/@cosmjs/stargate/build/modules/auth/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/timestamp.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/authz.d.ts","../node_modules/cosmjs-types/helpers.d.ts","../node_modules/cosmjs-types/cosmos/authz/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/authz/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/bank.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/messages.d.ts","../node_modules/cosmjs-types/cosmos/bank/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/bank/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/crisis/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/distribution.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/messages.d.ts","../node_modules/cosmjs-types/cosmos/distribution/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/distribution/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/evidence/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/messages.d.ts","../node_modules/cosmjs-types/google/protobuf/duration.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/feegrant.d.ts","../node_modules/cosmjs-types/cosmos/feegrant/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/feegrant/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/gov.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/messages.d.ts","../node_modules/cosmjs-types/cosmos/gov/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/gov/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/group/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/upgrade/v1beta1/upgrade.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/client.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/messages.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/transfer.d.ts","../node_modules/cosmjs-types/ibc/applications/transfer/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/channel.d.ts","../node_modules/cosmjs-types/ibc/core/channel/v1/query.d.ts","../node_modules/cosmjs-types/ibc/core/client/v1/query.d.ts","../node_modules/cosmjs-types/cosmos/ics23/v1/proofs.d.ts","../node_modules/cosmjs-types/ibc/core/commitment/v1/commitment.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/connection.d.ts","../node_modules/cosmjs-types/ibc/core/connection/v1/query.d.ts","../node_modules/cosmjs-types/tendermint/version/types.d.ts","../node_modules/cosmjs-types/tendermint/crypto/keys.d.ts","../node_modules/cosmjs-types/tendermint/types/validator.d.ts","../node_modules/cosmjs-types/tendermint/types/types.d.ts","../node_modules/cosmjs-types/ibc/lightclients/tendermint/v1/tendermint.d.ts","../node_modules/@cosmjs/stargate/build/modules/ibc/queries.d.ts","../node_modules/cosmjs-types/cosmos/mint/v1beta1/mint.d.ts","../node_modules/@cosmjs/stargate/build/modules/mint/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/aminomessages.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/slashing.d.ts","../node_modules/cosmjs-types/cosmos/slashing/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/slashing/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/aminomessages.d.ts","../node_modules/cosmjs-types/tendermint/types/params.d.ts","../node_modules/cosmjs-types/tendermint/abci/types.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/staking.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/tx.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/messages.d.ts","../node_modules/cosmjs-types/cosmos/staking/v1beta1/query.d.ts","../node_modules/@cosmjs/stargate/build/modules/staking/queries.d.ts","../node_modules/cosmjs-types/cosmos/base/abci/v1beta1/abci.d.ts","../node_modules/cosmjs-types/tendermint/types/evidence.d.ts","../node_modules/cosmjs-types/tendermint/types/block.d.ts","../node_modules/cosmjs-types/cosmos/tx/v1beta1/service.d.ts","../node_modules/@cosmjs/stargate/build/modules/tx/queries.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/aminomessages.d.ts","../node_modules/@cosmjs/stargate/build/modules/vesting/messages.d.ts","../node_modules/@cosmjs/stargate/build/modules/index.d.ts","../node_modules/@cosmjs/stargate/build/multisignature.d.ts","../node_modules/@cosmjs/stargate/build/search.d.ts","../node_modules/@cosmjs/stargate/build/stargateclient.d.ts","../node_modules/@cosmjs/stargate/build/signingstargateclient.d.ts","../node_modules/@cosmjs/stargate/build/index.d.ts","../src/utils.ts","../src/logger.ts","../node_modules/protobufjs/minimal.d.ts","../node_modules/@types/long/index.d.ts","../src/codec/helpers.ts","../src/codec/json-safe.ts","../src/codec/cosmos/base/v1beta1/coin.ts","../src/codec/google/protobuf/duration.ts","../src/codec/google/protobuf/timestamp.ts","../src/codec/agent/v1/agent.ts","../src/codec/agent/v1/tx.ts","../src/codec/agent/v1/query.ts","../src/codec/cosmos/base/query/v1beta1/pagination.ts","../src/codec/dht/v1/deposit.ts","../src/codec/dht/v1/reputation.ts","../src/codec/dht/v1/orchestrator.ts","../src/codec/dht/v1/model.ts","../src/codec/dht/v1/params.ts","../src/codec/dht/v1/model_block.ts","../src/codec/dht/v1/node.ts","../src/codec/dht/v1/miner.ts","../src/codec/dht/v1/query.ts","../src/queries.ts","../node_modules/@cosmjs/encoding/build/ascii.d.ts","../node_modules/@cosmjs/encoding/build/base64.d.ts","../node_modules/@cosmjs/encoding/build/bech32.d.ts","../node_modules/@cosmjs/encoding/build/hex.d.ts","../node_modules/@cosmjs/encoding/build/rfc3339.d.ts","../node_modules/@cosmjs/encoding/build/utf8.d.ts","../node_modules/@cosmjs/encoding/build/index.d.ts","../src/codec/dht/v1/tx.ts","../src/client.ts","../node_modules/@keplr-wallet/types/build/currency.d.ts","../node_modules/@keplr-wallet/types/build/bech32.d.ts","../node_modules/@keplr-wallet/types/build/bip44.d.ts","../node_modules/@keplr-wallet/types/build/chain-info.d.ts","../node_modules/@keplr-wallet/types/build/ethereum.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs.d.ts","../node_modules/@keplr-wallet/types/build/secretjs.d.ts","../node_modules/@keplr-wallet/types/build/settled.d.ts","../node_modules/@keplr-wallet/types/build/cosmjs-alt.d.ts","../node_modules/@keplr-wallet/types/build/wallet/keplr.d.ts","../node_modules/@keplr-wallet/types/build/wallet/index.d.ts","../node_modules/@keplr-wallet/types/build/window.d.ts","../node_modules/@keplr-wallet/types/build/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/node_modules/long/umd/index.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/types.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/snap.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/cosmjs-offline-signer.d.ts","../node_modules/@leapwallet/cosmos-snap-provider/dist/index.d.ts","../src/walletoperation.ts","../src/encryptutils.ts","../src/default.config.ts","../src/socket.ts","../node_modules/bignumber.js/bignumber.d.ts","../src/helpers/getagenturls.ts","../src/helpers/getischaininfovalid.ts","../src/chatclient.ts","../src/index.ts","../src/codec/index.ts","../src/codec/agent/module/v1/module.ts","../src/codec/agent/v1/genesis.ts","../src/codec/amino/amino.ts","../src/codec/cosmos/app/v1alpha1/module.ts","../src/codec/cosmos/bank/v1beta1/authz.ts","../src/codec/cosmos/bank/v1beta1/bank.ts","../src/codec/cosmos/bank/v1beta1/genesis.ts","../src/codec/cosmos/bank/v1beta1/query.ts","../src/codec/cosmos/bank/v1beta1/tx.ts","../src/codec/cosmos/msg/v1/msg.ts","../src/codec/cosmos_proto/cosmos.ts","../src/codec/dht/module/v1/module.ts","../src/codec/dht/v1/genesis.ts","../src/codec/gogoproto/gogo.ts","../src/codec/google/api/annotations.ts","../src/codec/google/api/http.ts","../src/codec/google/protobuf/descriptor.ts","../src/types/global.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/minimatch/index.d.ts","../node_modules/@types/glob/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/parse-package-name/index.d.ts","../node_modules/@types/prettier/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"70e345d53cc00be14d6f3024838bbff3ef0613d56b71ae3f796d7b2a0d473b07","affectsGlobalScope":true},"1b07773ee3ca8a62873be6a6b8b3aa29455c7b53db2cd4399ec4c6e362cef92b","bb82c2f6ce46746ddff974720459546747854d8e83a5ab2bf1ea5e11dbc535fe","3ef6c822342f271295a588afa47c00dc9c221a07e535342cfeaff6ff76fd384f","66f6d5d5d383ef51a7205d10543944c0be74b98190c16ec077ad40640f369147","684b95e60a1346cb54c7a45cb424091d97c9d573cecdaf2b5954a4d63d4bb5a9","4d708c75dad09198ae2b98abe2bfb355d7eb517c29e3f1ddd101fe2ca4884159","2321e25e34075320eeedbc5cd56051c9ce0341cb6a51e4faafb8f827d8045ceb","1cc2355816ba43eb2d6eb2670ac83d29a3ef02a01c09a4e2d5c0cc21e35249f7","ce47207ec1bd458b7966f0bbb5d9d15be0b00116fec4efda52ec8fcae8321586","a1f914818a2cc3bf3a693b99902d9cb0c1a6613df3cdd2bd8134cc63e695565c","3bd1d708281a33e7736f9c75c74221c077827d21c941f72ed3a8533b55fa5c7c","838c4154f06e964281fbfa88cf8cf8d76f194cbdd4d3f13e0a9e9a52e5faac6b","e32f79a7f77271780ecfcff5205300791429c2526b0b72307bb300ded25420c4","6ea46b5278f87aaf63479e72bb2d44474e458b4e603fa7ef46b3730c8a320073","22176ca5c9549edad90a532d5623a9b6ec552505178a7aeec3591f0b8f485d87","ba01df9e06cc51729deef602895fe3ceafd9ce2f17f2119db81eb67ff6ef7998","1dbb63933fe1404f9947c55f7f53308eb6fafd3b8646c4afc5f8a0376b1886ac","2dee5f01ddfa5375af2104e3d58e98afb881b63294187bab0a3df873a7bb2ad1","3dbe631d8fddc408346806ef5cf4195ba34a8ba1eb3cfde3aeffb813a38bffd2","8a0a3cdb27704e89ff1dbf93e43bb40bb2a96199a4483edc22fcf640a590a99d","3d444fa6e8057de7ea8ff4a9b737adc9538b2fcf7767969bdedc58bfc892582c","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","070cec1d2c7f9ed3c8f02e2d471ed036f66d58e4fbea47b2bce35dddd9e921ef","3d135e55be21b9f506a4d7f441abf7fc159a54ad2b64556b0ba0f819695c3c47","85245e7f103feba8b3b9d2203ea9dd687545172564bdb275c5a70c0dea0abbfb","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","3babffecf1c0fb251b65b6167fa5909c87bd3e4c1a976d26a156a0cddb84f852","406a17e0a2cc399c644b5bc1fb807c9dc71f3247dac25a232864b13370d6f5e9","21f75cbb084ee0b35a8792e94e83d937532154a99c343a5bd3d86c26b5d7e0bb","d60853beea7347ada1f4774f9b727be6600a2dbbc510cbebfbd2276b8b47224a","9efc525cef2b9f35187095ce035d23ef8ab0090b672cd4a71cbffcef6884e80f","8dba17cdfdec5ae0a5db9b9038721f4655b6ddf2fdc589e5a90a16555a54d772","00f9fe96f593b39bd6b98fe4b4c8e4710887b1fbb01b39db453f1dbaf3dee090","c599f3670220bf7913f9f140ca85e66b50e0124050b3e4c629957ef0d9f59d23","0e4b7f73c3d89bb89e9732346b1d9c42bd9439fc1756ccbf6263e66dd492c066","ca91758a5f0e49810ebf641cfa9cadae8b42ee326d9b0e663c2eea9ca51749d7","1527eb02a15b0988c239df0a8d21e3960375fc431740add3402551b8913ff3c2","d99a8619851f168989eb222276717a22608fc98734da3fc2de57b74f695136d6","ad6c897c80570cd3544c378de9aec077651da02edb320966a1e92a24b34526f5","d72588d7853732dcbf1c5186389458d6a123dbe8f19cede386f424ba32afef8f","de0541b716cd138c87a796f259883a1c9794fc68ec3f5f7778ff9e0613859c05","47595460b73d788d6294b215d376fded84583696dcadd522d26fcffb5147b0bd","1906f0be92468440d7ab4b26dcced83ce978a939c64806cc75e4f484e9b649c0","d137f974150c32ccdad190f331cdd0b8acf68a18d8f473b86e90b092eac8ec06","1558c642e03689d42843e7b047b9c20e77ee09ab388ff854484db5dcfbed11da","2d3dc11421426b03636da8afc8ef715caa0a8e9b7b4623b314f4a1936c44f14f","7b9806ac7cd54f9ee5170b1da84dfedc752541a073ecca325fb99123d0182576","bc75f464330a330e214bd37afa050cff44f4a74565c9d2bf7c5afbb73ecc6ddc","3969985016b15890111bf0e3a468fd0c449c99d53f543789315cb51a675e3223","a173e9be041c233603b1aa145d8c18d09ac69e4291b4ba76256ec773d3934164","6ba292cc3df1eea225aacb3182f9b0b8eab9d8637a9c698af1e5b58aa5492e9e","f9f55a2f6f8e07d3ea10e1154a0fc129ec72c21e57ffe9b8720bbb80ce6407ac","07d39f8730ecb29d631e57e8a8a7491fc10d7ef8b0eb035781bdaf81b948e6b3","66ea2ca4caba80ab1ace4e661ed9eff6d7e2c2838f8b8e5801e73e30108f1aeb","cf802ef15265bde5e8c931459fc13d15fec46ebdfab3845b86d22897eb4cdf36","513dc812720ffd3f2ce2a709cf474177cfb4ec7e2386bf64a664e7b6946f1dae","376a324ad9678bc3d6cadf4bbef4ae7ea2624c8ebf4bc149064f4b4b4c00024c","43760728760f66940ad6012894dbf7808a9399628a7a21de89ce26389a94d98d","0fc31521f9064f13d54215d6ef35bafb61b68acd7e87f7bc53bb85d3404668f1","0cbfce53b86891a1581b878fb3361fb175cc866c98f7f446433e45f3e8befa26","e579636afe1fd2da1596a2ecd07134c973359c14ef96a357b4ec67e406d89113","c0a4f50a1c0623e1c0a311447b578314ad927feb4abbdcc71bacd573a7b9462b","34623a91c4f3f0f2203b06c51b37d229a3ef1007352bd5bcc41086370cca6e0b","8f405903772553f71e9cad2b830bb002c83cc1456a5da43439a9a5841ca42611","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","e05747a1c227cc4016ab8069fbffecec81ccd75c933112641243fa9b57a727a4","081c44b708018590fe9300d74889c78c72d444915c81adda1850c6bd7f393c2c","5ecbb68a59f7e45d450fa17399f254910a5b7b46940452fd6fd775b07b814de7","722745986f8325fecd8bf8a257e9483c3c71845c8e15aa88c36afab0cea84112","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","b096394821a4a2ecf4f5486d8e6417b36d53b75733fee9e7fc48072bdd0003bb","8b078be87832ebcd318d89d7d629349a452ecc8b02e4f49cfcfd7d883a162f17","88819391bc47dc1baece98bcf696c3be4356a1caed3ac5b8e2379e3ada6879b9","4147899a0f0822159cf1eb9944e62c69bb74c41dd2acce73b5f8444a8dcd26d3","4ffb8b357abd704bfe3f0301bb556287063d5feb89b5d7ca301b013dadb57536","046a278aeadb95bacbcd257942d6bc35845f1fddcb6eaebf84cef1afeeb3df8d","d04598f25506fa473de73dff5b819cce92452a9853289bb0ec45bc052b2f1821","83298a5e9877723b46368eb3d301e4e58ea976c016f7d86803530397fc2991e4","b43fe27469461a1b41ca8d0f829ca9b838e1a5c16e2eaadfb7cc474f89737045","0d13964e90364cf9c9366f54a477be462a0caa65da21dc8b01cfa7743dbcfa29","bcf02e8cb54f4b47b3d1002dff222d95d66384f3b7063783002923f90a975003","613f44b5f7d3b4e97c4765619c7475ec398b382a0e2837f78a23ea10aaebebcc","75bb977edf840141773284bfb115d07e6ade61e2b4fa5a0e7a950989dff6a8f9","c95c4c59dbc5a3544792fa323c99ca828102b740f59d42ddfe73e3036a3795e4","10bb5735932e068d97be66e2a9f4c9cad28909c2e2ec240c16382e360ab9f5a2","6ed31a206ff729a5b6d1f9bf0be610fd89391a32d12f4cf2c31c00becc410cb3","4e1bf1a9917549de0154b3be216ef90a6d48a82535203d581936f009837e7681","5bbe0df99c276b5519bd048205790825cfda7ced546cae8b84cac9841a047f6b","ec9a719ce1d43b91d9233852eedb8af5c3c86cb5d4d3adaea05cbe4ef799e8e8","7c3009f92b4440ddbd73963da9755493be2839b670a6a8211664228897fae84a","06ebd2ece60c4e9ae574b54e07207ef8068dc587118a0581b32a4ca119dbd22f","c4e7ee6ec6641e1843911956c5130e245d4edf2ce2c556118e899b2b55cbf120","961c21d2d069d2796479edbcc2444184af57340774718754bbd4289e3fcfe671","608db8a96ce862cc485bf5a09ab85601ff9bd5d1819370085c1d226628cbecd1","69a365562f7bf70fd4084fd00be9b24e36e1c50256b8fbd858ba446a087973f1","e79728ebbf14b6ec50c424fc06979f606ab62b9bb23175934b8ecd9425a0de99","c784461aa15ee0d2f45aabcfb3787fbab10496a58c3abd1ff97ce5b309869d9d","87dcc84f02d2cc7cdb46b98037c35e3a0d15f3c787d4baafb882dceb5cb75508","c35791af1d03a4641dbf057344d664f49638ecea433dd9390725ba74066fd4be","ba22b345edddfd6c61ff21084d73aedd52f7a10a34dc7ec836d40485ad35da16","4737ef9dc0b1eade93a3b232a1e95cc6184218e11093dfaca21a06dfddbf2b7a","2ef6dd37cc81266c00017d913a7df2afd08c1460d12b03d6dca16da9bfc223fb","246dc1f2b8eec8f1958ea5b732506de1c3c644a204169b22141752483ecd866a","1e9f2568a49bf670407a0655688ccd786877130aa1b01380ab5e08bf39ecec99","7f97f70e289881321ea2436de2861f77f057d808ec1dab11d4ac598ff909a207","7634c88ae7b38d03fd0ade5e2c8e19f14007bd1993be62c17327a8713dd58a0c","dd2b16e1ec1330c667d1792a0f0422aa2b1a998688dd8fe590f885cf2c893094","5d8367cabd5cbe281bbcda28a6de7e18528aba6176c57152443f691e3d98e9fc","d5f3f96b702fea4ef43d2d1e509cc828bb371a433941c3edf7b6848064156ba8","fdc22d7d9734b3399be0f23dd42b02e05cdb2c0d2a4e3379b6ee05055715ff89","56f50fa2dc498886c43ae862b2510826a52a6fe01617ff421a8c6a8bf1ebde5f","ae181dfec3f0e17c9f9cc2ef244363ccf906a156b5f34c94771bd9b76294194d","0cc405abdf38bbb35cfaeffeb0ede5573aa76b85d9d27d52cf0c1d22fe7a4fde","8f2708247dd098a0534adb4f09430ce4180476201d0de345ec80674277584b90","97ef98f0e4ba2587acfd2fb0a4a5e331479d23930aa13c36fd8a97f776916ca2","5d98daf0099acefd70419619fb5c619a2d84df23513ee8c4a152acb0951d4ecc","09e85b9699cbe7e7cc02d9f45695573b240fc179210a7c7b555759f7d7fb7a92","a5986efa22663959db1b66cc46773bb833931f32caea80a74ed3f7b5423c31ba","715aa3bef40dff0a2d755f94488cf542a301029f15a8c67e8d1fdf354bec4818","73ae6bc28c5ade3c3e0aead32b7e2067e6f7116790e1c494287aa781b6a4a0d1","63e798b17923bec72aa0df3e0fe47655fcf118478ee491cf3994af8f2cb915f2","52247be203cb4b7da26b630eaf03b5cca922cd3fece8d0ad0ad415fad0d12e36","1550807603077885db4fb0a8c9e5bb0afd4e9922e1c68bb67d2fe89349c8fafc","264e746fbb19aacd50401db65786283ef3e707ba5e2deb4c05a979e7a180d0ca","7ca179cbc6da077b07a867114768868618766714da67ff9323a61adee8dd8825","f108e470e1422dfa1d43ac99c04f7199394d110d866c0d2f065d29d431a7d360","8a6dc76e1fd2572f345faee5a259d278ff254f9bdd67bcf4aac94f12bd137eda","8e03b7c67e71d70bd18cffe926ce7cd4e178a1c7978bdce90d49a4fcd2c9e2dc","8dd86af556f4918cb722a9eccf6c33872b6ca40d6b8887e514b80176da3bfcb8","1f3d2ab1d3cfcedcd55bee513dd68639a12d097d5df1ff3f2985165f7e2ccf8f","eb697bb6c2fb335ba1e91a36c5855a0bfd723aa8eddff6d6c33abc4537f9d7cb","3c451dbab67c47cd6c4b94e255d9fce668e3b5fd3c79382544c9d4293bcf8866","85822e961b336227996ded5feab90423c4177c190a2b8a96b894146459b85e11","7606055f3069abadb01fe27a4fcd154d3252fedfa4761275028b49cdbf84d12e","fdf39260344513263b4625ba2bfbd3595b7d11eaefc663709421b971ae72a92c","b3e44872e61f58a9f81953dede603d7145fff0b8e8e615e169a5cb1acfcc6768","c75960710aa2335fb9b5fad81c7c71eaaf9b31aa93bea338bfc2e264cd493e77","c9cdc07c2f33fe9f447ed18ed5de55f1b3a2602c4297bc47a63692734b7c27eb","9f02e010baf9b563722a7de783f8d0622dfb75f27ddf0c3708acc18d293f8e67","e4cc8831d820d301f38c530b4b2c7a9f16116e693b61c7fd68d8a4e042635455","87ac962cde0bc685bf52047820b05dbc7660d35e9784fff14b2a06165e4ab9ba","8fad449d6f6f2a95becb8c23a78838990418a391fa11fae539e3e891e7168021","d01df54dc12686dddfc0970554efc1096d062919b75eb218bfd0e9997d179f74","b901fb7fca57fe6a15eb3386e8fe9e08d86c9c637332f8ba00cdcb247cc71ab9","2be41e8798aa2720dcdc9c2f3ac9a1a1bebc2cebb297d7a00b3a863317524ffd","868f8bf3619fff7852ba895408fdf979838a3ec163eaad1e25d94fcd831a31b0","5e9f1a2ba53d7d8366a2e319a943a51d1d8b543a32769bd0b4f529224a0d4dc9","ebb5fe63b951d7a2ea026a2c079771cbc70d751fa3281cd4d2a3714c864f5377","4e46da7a42ef0580d2a7f530ce40fdc39d4da01c93a19ec089878a5d2dd39098","f2df4cfbe9a255cf0b3c8df91f2eb79832dc87792ea877c347c702d031ab03e0","76c059f75e35ac764e2f60387087c9ccb5f2d58f4c25c3d7334929b96a02269a","d745aaf77b250490714670c3b6ce847d7431a446a02e2264117ca734c5002aea","2955b846f26fb95c9a7ee3d8b4b1b5a556d6286f3acc7b391894356eed3d3e6e","cb35bc0d460934da3a51a2215861a332318cfe062384a5d98855da1884340352","0fd2e71acdd7bdc5d48d4cdea05eb50a6f4f1915f29027ed351032aa5406ecfb","34abadd9771163890c50f4fcfa0d56bd413594e39c1cffdd3c5fe8a01c3f7b40","172bc50cacd1995c6e994a73a8640f88c645e24ff5f25ccd04db9dfc071fbe5c","e1c87a8a9b59b511c882fd9a2b23c8d62e0b64b645f93d99fda7493717ca87bd","32178a24c7a79395c6c5f7f189ec735fe60c2ab604d1e6fb964d7717622e7e22","893c8bd678f5632582757da791020171e8f3988f93ea7dfea4b88aaf5b91b06a","bbcfac72a7b2ad10aefd1f24f203131dcbcf6bc64b8e8d7764f279c3c74c3525","bdb73f52284d8f2a6f0b3301f34dade21d7556402f194c260bd6012f89af5fff","7188604c5f18ac9ccda109dcd8f44eb7be87c8aae340edafa04eca6178985e91","b2ed1380abd77596d9b3bfea56c00fc2cb56085d570a3646b810d85e6f62b133","7da2c3c72ec000a6aa624624b99c7f51ab1be93d8f162c38fd72f6fac54fe0f5","e5500cbfae5b31a8b054e26f8c53f8e01105b034d4102826d7e8e8173015d524","5426fb8e0f156a85cc55485eda8c2b893317ed98b76cd2f34a8c372303462d79","cf51c46bda456dc812291f33f7e07fafa536e0a69ccc2d89091a36c48f0884f3","18abdc75530e0f2ce61d824c61a3314dd46d691723a81bfdb84bbf15d50593b9","005c1c37514d45a6ffd6d831bed41492afde74d31b3d69622b8fc86b699b9f9c",{"version":"16d29b7f186cd84a3649574e9e749798ae850d1d3f386c482d26f43171194ff8","signature":"14005ebfab7cbd0203557987fe40be55eec6c2588be358ac7c1e7857bbc410f0"},{"version":"9fda786ebe7bddd93b436225372ba866250bf18e0ced6bb7641db7197c8bfc09","signature":"fb27311e168da06c56269471d6f4acc7c9892a4beca245684ab644d4bc912787"},"932cade1c5802123b5831f332ad8a6297f0f7d14d0ee04f5a774408f393e2200","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70",{"version":"854b35c264d7d04529f213f4c054465cfda19f4868ebaf307703ede1409e981d","signature":"c3ee8d27c55cd0242a76809a640f33fdadff545fe55cc660e8268995f0446193"},{"version":"500f5a4380f3e0c0fd158c30b617e57be3395a7795ad93e5062a6673ae8311bd","signature":"c1fee71b2f0647683310ef2daf46e952d33be08da0184036c31c63207c2a96a7"},{"version":"41547305c09cacfb9ffbd7f8743726c64f98dd33609909f0420a86def9e65373","signature":"812d6e8a20044c9538494ef8a37fef68bbe1bb1bac7883f58e94e5385c1b6932"},{"version":"7e566e8ac54946c7cc80244f122a457ccf665e35b49d3d551d8bec92ad6b1db8","signature":"e372638d1dbe7be7505e80591ad269f50988531e8ec2edf826ebe2bd69cad369"},{"version":"8d02b61ec903b7378691b79a0a45da3962f8cd60615d4d3bca10059349a520b2","signature":"982efe6a9ad06e201d3febbd526cae33276936cacf97e7055260723bd26208ca"},{"version":"33547e3caeaad1e03c0899bd4e82f28c422e327a875c7fea81acb6e0a47ba641","signature":"26b12f91f72b106b947b109bacd4b6d1c84e506bc5553f56d1e1b50ca783fd10"},{"version":"b883a5b41be1821a6308f2fb72d575632ee6a12baef6a31792f5111bb39ed227","signature":"66bad3a343f5a4b3ea161ed8c53b8e24e4fedff9eb52817315efab0d8dd405de"},{"version":"e64b83db4ebfcb554f143594b3745ac386e98984d5150f6b38cf329a0f2c2a31","signature":"0c3a60940eb62afdcd1ad04b24a6b31f8ca84937e5ac2de93d79e71519f73129"},{"version":"16760c279602058bba23f4514d9e4ff3d1879e721f7c6cfc0d93b40a0aabbb1c","signature":"2532fd2ee730b33d52e25399e7c73df41d7c482501e5fd36e3a1cc953f9b15b2"},{"version":"7f1d9555745cc0c57363265394bc89b8091850c151436cce60ffb8241cf79d6b","signature":"34cb2a1270630878eed6dff67cd3fda105bf75c275685f67c03263b3842ad704"},{"version":"001914ce4b0ebc1d269ef6215a306b5b0d1756e83f86951a92130eae326da049","signature":"cf5dfe688dc542d4d78a1cec5e93c6d792c6f43a1a0ba03695b84e0f29a75fd8"},{"version":"f51ea5ddaaaeaeae18c8adc5d3fdfc59b84d466094e53203ae8a10ef243427b9","signature":"4511f506ca442114c15b44c5f5315af162791fdffd228e3ba28f1e557022491d"},{"version":"acd81330d3f700b67c6b366b992addd16ab763e174c715dbdff3fa5545d2339c","signature":"707f1c10ba1bb000d2508c996dd5d31a2bc5cbea70010564eb69edbb22d2f43c"},{"version":"cd5b1ecad049118658a5e7966b43834d4d2fcfbe53bd05f9e11d98ddce985f40","signature":"007d13b8caabb0f8da9383c0ba89f0b0a5556e7f456a6d3c6504f43c3b7ba319"},{"version":"15e5f32c79b467480552dbb1935b7310875dc9c497cc8480de5cd55a0aab0bd2","signature":"d19b9741b3cfdcd0d91ed348ffb22a2cc2e65c93fd23fe9e625513caa07d30c7"},{"version":"1ee39602742cef06fe6435f372cebf821cdce5dcd7047c304a2c6ce6715d2c7f","signature":"0be89faea0b7d04759896f85cdefefa9d64a594ba021acff55226cea046531fd"},{"version":"9fe3bfe37d97c54d44698d7368880abc65f84b9a7c2539222df72ae856321b0d","signature":"76d9557d189fb33a92015f96d3686f9999c3c6c831b981fe994dcb1924c1742e"},{"version":"521d6bac3ec337b2f1d2ef65b24461d854350bf516ed775c7a4b5c7b022de953","signature":"4778e30efe0b84215de2d73af579fa0565123b3295aadcd8216e23f22dd22c5b"},{"version":"6eae35a8b6203020d51376e85656e838c8279ea5b1c60628ae13eba9228fda78","signature":"7889daa83f583f66187b2f242cd6d23f53ae1f0cc9cd2a2cd715b52d19cfa08b"},"c0b474f26cc3ff83a7bc92abc4f72ca78cbb22631a9cd5ce28f9ae68802f47b5","f68ad124636abfe69a69d6c87238656dbbf45d4fa0b483caa663cbe7211a67ca","7e4fc20c25807c9ef912f4c6d805ceae5399c5d962d445db2e3a4cff24a35793","7ddadda20f6682a87876634b7669d8e5c0e5c2341a1a1f94038f833c7b38ffcd","512ef5675be30738a2beeb4e151d03745c7b5207407a31806a81794a32732d53","831cea0366cc9085e7ded3a2d039a57d9fdda3670711f998a87d14d7b2fb45e1","39b470f069f0010b080280d2690679f04f962efd65ed3b452a1a67c834c51c0d",{"version":"9cc27ebd4aac9e44e95a2c970637eb8cf0a40432ef85f52bace047d1d1327155","signature":"50833414dab38661f5802479b886809641ddfe6dcc1b71842c73ba21c4dd5ebc"},{"version":"bbf6a0c16de1a69d3d7789c240397a1694b25f37dab367937043c6ac6b4129c7","signature":"189c9c3353ad26c8850137c3927d217d468e5f5b53e56dc52d3ef1806bca2d59"},"f482240ce8f5dc0cf549182852aeeb981d441e9e0dbbfce27f6ed994bf838cdc","0d0cf4ba65d991a80a1dedf125c1f49647886663dd9382821445b6a82a081271","f0efe4a3bb6f870b91c1e5617d6a7c7fe6088992e61ff0402c324b8983e8afa5","ed524546447c86e2a43cb70e65d740e841dab2968c1110a41c3982c1b40145bf","480c00c45a6c360d1ffb1fc049c8906a15d83a169424368ddf00ac548c424fc0","e3266512232a9e24996f8765983cd12d26fb4cc4394c41b09f5ed30ecdbe9cd7","dda691ae752be3a280934c6eb3467185f99ef4d832db3e9f695a8aeaf73b8248","3cc81e4d4a0b21a22e7a06c440613c65bd56c3c4b9108c38cf8594e62a2a7659","46ea81d6dcd21009556bb97fe0f54f6631de44fabb142ef857512f3f3c8ff714","88c339bbc94fb6a4b34e5c584120eaa0ca0f5491e3dcf249346f613467d92adb","22a5f25a05ac18d080b3b6745eb81e6979ae9997c5257db56830858ab1fd0fad","c4a6885e3f20bb3ee4edb810b98548feb43179df923c4d3b4069af5828b22f34","0ae38bb1d163e91f9b9228f4c2d3f1eaddb7014c0730d1a591fc58378af8ae35","54fee7d009c1e7b95a9cd151cff895742b036e25972e95a90ae503d613406e8c","c1eedeccaf93904fd835f40b8cbd0456c356151ab0455391453e0a60df53c9e2","e758fea4a022a74afa1b528f55d808b386ce94145e9892a647e719914db6505f","a664a7ae7dbb76fceec16b51f7e0c0ba9fff99fd23684a3f18eaa5fa63e20143","abdfc7c18170da5f29e68ed537649182ea272334a627957a285d5eb93ab89454","ddbe783c6450ee420215b6d437cb6abce125a4872350cd9498e2a999a2ed5745",{"version":"13550e79ed43f832e7d05c8a0e2c2c7424051bdd5117f9cad9c62424bf89a11c","signature":"4b4e739ebc464e8ef726963482828c4cde34c14d87c6a3fd541b9c901e12af9f"},{"version":"3ce031d552bc6477d577c7d3fe9f0c641d0a1433b84e3d1634b6295af88520e9","signature":"efca803555bea1f3d3cce62bf4ac54666d250917d4b2424baa4ef44327cf1187"},{"version":"0f33dd42eb86ff0507284cd707a2bbb67a9d5c23c047840cd431c302fd42b196","signature":"80513d5087ec37f15f81ff2a50822ec025251ab597f118c910a48301f110bed2"},{"version":"59bda0c2d8416fb9d3311127d0d5918d92bd89b38f323c2f09163391cfa59998","signature":"55816e292d8624a380824d6ac2666882bc87c0f6f04a6985307d63d6a7260dcd"},"e9b48596baefe465d46567a4beccd564035024a154d99f54c7fed02380707333",{"version":"e630c678591902c5cf75b12d52ed9a1a54c1824bafcb4baede3e4267ab056850","signature":"5c4f56f33b2fa89debc9d40065a4a9f883e92e571168c22c9b8b788e893dfbbc"},{"version":"5e3988746a90d3e01e864ddea80c1bc7ecc78af58be0f6f484c9b4bc6361404f","signature":"2a63d02b63500ea207664d8b7a91cf10e7674e9f140368b1e2536dae84796222"},{"version":"161a19fe6d58d95b8ebefd4c782d17a1d841722658783f8bbb3c1cfd6fe3037d","signature":"6b38bd1ccfa0065169b042a7bd43740e0529642f6b64f423fe2e9c01ce46b1ed"},{"version":"ba990b6ec98d32b5aecf423ad7650b88401af3e82b28977eb8d5222fc3d85b91","signature":"80994bea834aa30be64251af042ae1fc8e04994c4c446f0aea71ab219ec64d41"},{"version":"c3dfa656280e4f24124a22a88275107d47a7aeb7cc2fec74e47cf5f24ec63e5a","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"c69a1562e6dd373816f9da18951bac5116a464c2b764465f3c77b86ebf29b74d","signature":"7300d568efcdc9c33e72bd4787b5a64610a761fd60a6f2a8500db89687c34d38"},{"version":"46ddc59b65acfbd6032fb01edbca4e2bc0b40dd396abb2ca34ad7591ca4cacf2","signature":"18dd9d41206277bb558b6b9e83c37915e8598b92fc71fba58820f7a71c66e10e"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"444bfcc0afcbbbe706e6915363b1a980f9edbf2eaba2e3493be7aabb749751c8","signature":"ac84f8d773877e49ea96738dbbb7ff533304c89b89b2093de5b348eee90b34e5"},{"version":"b38bddefb30e0490361a83654963c8e4c545b9eb356294b5d842d2bab09204ff","signature":"fcf91f52780d27f42d7fc792634caad6327e76afd43d3b3dcf1f2ea9c613c0b1"},{"version":"efb195fc835816b2264ef2e268c21ef936b626e743ed345f2230901b7b56d07d","signature":"961f154ae39a74e68117b9963828bc399254a0237483bf2f68da1e9a7f16f403"},{"version":"c4f4f462961285a8143f407fbcba24fb4e29d52f31ff79f4d1ac23a55a52f6f6","signature":"ce929b6c71c535024bc2ca6068e81015895b6069ef36b10347d24dc8252f60c2"},{"version":"a124af57cc57207d3eda03f97f8789366ec5fcdae2480716916408aaf3a4a964","signature":"69dc1b0db7feaf9b7038d6d5ba0390cf22cb935c28d7737f0871ae54d08aed5b"},{"version":"d5b55e6c9bf200fb809f1128df5b0a07131f6ca39c975ab4220f31a5c7c84916","signature":"264f087d46883881bb1f1743f3df90e8c2b34c91c416a63668dea63406e1cea4"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"74ffa6a7a10aa6592027c277379c347da44e987d695eeb4289d5b6932eddfd38","signature":"2c7a9f9bb3d25868a4304014a06363059bd10e826324cfe8b58f04be90ebc429"},{"version":"d669d8791348fde05c6deae289ff38b45c4260385b590f348e1f4704ac11e75d","signature":"d2dfec04cf835e090d7cc1e8d9db42b308d51b3ae9bf3b37811cb4e0174ec498"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f4c5cf9bb78e85f15dc27180260637cf24b2a24bc39e0788783a3accc4dde614","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"615eecd205415420ffbb87dc3d51c5a2cd5ff783c0d62492e4ac0f58bbe1ad57","signature":"9c0f2ef8b34d2c37e145a1a4f2ace1e4de59a31805ac6793223d028c5993703c"},{"version":"3c247927b971a0902ccb7fe66bd802b93651e65242178094f2203ffda65a9cbd","signature":"036988ba1bc5c152a1146568b70242352f758573d68c8b55f1448deb56c75156"},{"version":"d914764afe0863257fbe7574cb8e3f239db4275c2de037f6233e7dbc01033f58","affectsGlobalScope":true},"acdc9fb9638a235a69bd270003d8db4d6153ada2b7ccbea741ade36b295e431e","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","bdf0ed7d9ebae6175a5d1b4ec4065d07f8099379370a804b1faff05004dc387d","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","539014e248d2c13a7e544ef6bab49062cc02ef3a24af88029c26893c0ed3eb83","d88a5e779faf033be3d52142a04fbe1cb96009868e3bbdd296b2bc6c59e06c0e","bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7"],"root":[218,219,[222,240],248,249,[269,272],[274,296]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"../dist","rootDir":"../src","strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[48],[48,49,50,51,52,53,69,70,71,72,73,74,75,76],[68],[68,70,72,73],[70,72],[50],[70,71],[55],[54,55,56,57,58,59,60,61,62,63,67],[61],[66],[241,242,243,244,245,246],[98],[101,103,104,105],[100,103],[103],[102],[64],[64,65],[84],[68,84,86,87],[84,86],[77,85,86,87,88,89,90,91,93,94],[77,79],[78,79,84,92],[77,84],[79,82,83,84],[77,95],[126],[66,77],[77,80,95,96,126,127,128,129,134,212,213,214,215,216],[127],[79,134],[96],[95],[134,141],[77,96],[95,145],[83,134,144,147],[77,217],[95,152],[134,154],[134,161],[95,165],[66,134,164,167],[95,174],[134,173,177,178,179,180,184,189],[135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,192,193,196,197,202,204,209,210,211],[66,134,191],[134,195],[95,201],[134,200,203],[77,79,134,208],[77,81,84],[131,133],[126,130],[66,131,132],[77,83,84,95,96,126,128,173,215],[80,83,126,127,134,205,212,214],[100,111,112,114],[112,114,115],[98,99,113],[97,99,111,113,116,120,124,125],[106,107,108],[106,107],[107,108,109,110],[100,106],[100,106,107],[117,118,119],[100,111,117,118],[121,122,123],[100,111,121,122],[111,116,120,124],[99],[250,251,252],[221,255],[221],[250,251,252,253,254,255,256,257,258,260,261],[259],[221,253,254,255,256,257,258],[255,256,260],[77,84,95,265],[265,266,267],[77,84,265],[77,264],[263],[345,346,383,384],[346,383],[387],[388],[391,393,394,395,396,397,398,399,400,401,402,403],[391,392,394,395,396,397,398,399,400,401,402,403],[392,393,394,395,396,397,398,399,400,401,402,403],[391,392,393,395,396,397,398,399,400,401,402,403],[391,392,393,394,396,397,398,399,400,401,402,403],[391,392,393,394,395,397,398,399,400,401,402,403],[391,392,393,394,395,396,398,399,400,401,402,403],[391,392,393,394,395,396,397,399,400,401,402,403],[391,392,393,394,395,396,397,398,400,401,402,403],[391,392,393,394,395,396,397,398,399,401,402,403],[391,392,393,394,395,396,397,398,399,400,402,403],[391,392,393,394,395,396,397,398,399,400,401,403],[391,392,393,394,395,396,397,398,399,400,401,402],[297],[332],[333,338,367],[334,345,346,353,364,375],[334,335,345,353],[336,376],[337,338,346,354],[338,364,372],[339,341,345,353],[332,340],[341,342],[345],[343,345],[332,345],[345,346,347,364,375],[345,346,347,360,364,367],[330,333,380],[341,345,348,353,364,375],[345,346,348,349,353,364,372,375],[348,350,364,372,375],[297,298,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382],[345,351],[352,375,380],[341,345,353,364],[354],[355],[332,356],[357,374,380],[358],[359],[345,360,361],[360,362,376,378],[333,345,364,365,366,367],[333,364,366],[364,365],[367],[368],[332,364],[345,370,371],[370,371],[338,353,364,372],[373],[353,374],[333,348,359,375],[338,376],[364,377],[352,378],[379],[333,338,345,347,356,364,375,378,380],[364,381],[406],[78,79,138],[78,79,132,138,139,140],[78,83],[78,83,132,140,144],[78,83,140,144],[78,79,199],[78],[78,83,132,140,151],[78,83,140,151],[78,79,83,138,159],[78,79,132,140,160],[78,79,83,132,138,140,159,164],[78,79,83,140,164],[78,132,138,140,159,194],[78,138,159],[78,79,83,132,138,140,159,185,188,200],[78,79,83,138,159,185,186,188,199],[78,79,83,138,140,159,200],[78,79,81],[78,79,81,82,83,84,132,138,140,185,186,187,188,199,205,206,207],[78,79,81,82,83],[78,132,140,176],[78,83,140,173],[78,173],[78,79,132,140,173,178],[78,79,138,172],[78,79,132,140,173],[78,181],[78,182],[78,79,132,140,173,183],[78,138,159,173,181,182,185,186,187,188],[78,130,138,140,159,185,186,188,198],[78,138,185,186,187,188,206],[78,138,185,186,187,188],[78,159],[78,130,138,185,186,187],[78,186],[92],[307,311,375],[307,364,375],[302],[304,307,372,375],[353,372],[383],[302,383],[304,307,353,375],[299,300,303,306,333,345,364,375],[299,305],[303,307,333,367,375,383],[333,383],[323,333,383],[301,302,383],[307],[301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[307,314,315],[305,307,315,316],[306],[299,302,307],[307,311,315,316],[311],[305,307,310,375],[299,304,305,307,311,314],[333,364],[302,307,323,333,380,383],[68,95,227,249,262,268,269,270,271,272,273,274,275,296],[68,77,84,95,126,217,218,219,224,227,228,230,233,240,247,248],[220,222,223],[220,222,223,224,225,226],[220,222,223,227],[220,222,223,226,227],[220,222,223,224,227],[220,222,223,224],[220,222,223,224,284],[220,222,223,224,230,284],[220,222,223,224,226],[220,222,223,231,233,234,235,236,237,238],[220,222,223,224,226,231,232],[220,222,223,224,225,234],[220,222,223,230,233,234,235,236,237,238],[220,222,223,224,232,233,234,235],[220,221],[262],[47,218,228,249,268,269,296],[227],[268],[269,276],[217,222,227,229,230,233,239],[270],[68,217,296],[95,217,221,239,249,262,268,270],[227,249,262],[77,95,126,217,219,224,227,228,229,230,233,239,240],[220,223],[220,221,223,224,225,226,227],[220,222,223,224,225,226,227],[220,222,223,224,225,227],[220,223,224],[220,223,224,284],[220,221,222,223,224,230,284],[220,221,223,224,226],[220,221,223,224,225,226,231,232,233,234,235,236,237,238],[220,221,223,224,225,234],[220,221,222,223,224,225,226,230,231,232,233,234,235,236,237,238],[220,222,223,224,225,232,233,234,235],[228,249,268],[217,227,229,230,233,239],[217],[227,229,239,249,262,268]],"referencedMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,219],[249,220],[279,221],[227,222],[280,223],[229,224],[228,225],[282,221],[283,226],[284,226],[285,227],[286,228],[287,227],[230,221],[224,221],[290,221],[231,229],[291,230],[238,231],[234,226],[236,221],[237,221],[233,231],[235,232],[239,233],[232,221],[248,234],[294,221],[295,221],[225,221],[226,221],[222,235],[271,236],[270,237],[274,238],[275,239],[277,240],[240,241],[272,242],[218,243],[269,244]],"exportedModulesMap":[[49,1],[51,1],[77,2],[52,1],[69,3],[74,4],[75,5],[71,1],[70,6],[72,7],[76,7],[56,8],[68,9],[57,8],[60,8],[62,10],[63,8],[67,11],[247,12],[245,13],[106,14],[104,15],[105,16],[103,17],[65,18],[66,19],[85,20],[88,21],[89,22],[95,23],[90,3],[91,24],[93,25],[86,26],[94,27],[80,24],[96,28],[127,29],[128,30],[217,31],[129,32],[135,33],[136,34],[137,35],[142,36],[143,37],[146,38],[148,39],[149,37],[150,40],[153,41],[155,42],[156,37],[157,34],[158,35],[162,43],[163,37],[166,44],[168,45],[169,34],[170,35],[171,37],[175,46],[190,47],[212,48],[192,49],[193,37],[196,50],[197,40],[202,51],[204,52],[209,53],[210,37],[211,35],[213,54],[134,55],[131,56],[133,57],[216,58],[215,59],[115,60],[116,61],[114,62],[99,13],[126,63],[109,64],[108,65],[111,66],[107,67],[110,68],[120,69],[118,62],[119,70],[124,71],[122,62],[123,72],[125,73],[113,74],[253,75],[258,76],[255,77],[262,78],[260,79],[259,80],[261,81],[267,82],[268,83],[266,84],[265,85],[264,86],[385,87],[386,88],[388,89],[389,90],[392,91],[393,92],[391,93],[394,94],[395,95],[396,96],[397,97],[398,98],[399,99],[400,100],[401,101],[402,102],[403,103],[297,104],[298,104],[332,105],[333,106],[334,107],[335,108],[336,109],[337,110],[338,111],[339,112],[340,113],[341,114],[342,114],[344,115],[343,116],[345,117],[346,118],[347,119],[331,120],[348,121],[349,122],[350,123],[383,124],[351,125],[352,126],[353,127],[354,128],[355,129],[356,130],[357,131],[358,132],[359,133],[360,134],[361,134],[362,135],[364,136],[366,137],[365,138],[367,139],[368,140],[369,141],[370,142],[371,143],[372,144],[373,145],[374,146],[375,147],[376,148],[377,149],[378,150],[379,151],[380,152],[381,153],[407,154],[139,155],[141,156],[144,157],[147,158],[145,159],[205,160],[132,161],[83,161],[81,161],[151,157],[154,162],[152,163],[160,164],[161,165],[164,164],[167,166],[165,167],[181,161],[191,161],[195,168],[194,169],[203,170],[200,171],[201,172],[82,173],[208,174],[84,175],[172,155],[79,161],[159,161],[138,161],[177,176],[176,161],[174,177],[178,178],[179,179],[173,180],[180,181],[182,182],[183,183],[184,184],[189,185],[199,186],[186,161],[130,161],[207,187],[206,188],[198,189],[188,190],[187,191],[185,161],[220,192],[314,193],[321,194],[313,193],[328,195],[305,196],[304,197],[327,198],[322,199],[325,200],[307,201],[306,202],[302,203],[301,204],[324,205],[303,206],[308,207],[312,207],[330,208],[329,207],[316,209],[317,210],[319,211],[315,212],[318,213],[323,198],[310,214],[311,215],[320,216],[300,217],[326,218],[276,245],[249,246],[279,247],[227,222],[280,248],[229,249],[228,250],[282,247],[283,251],[284,251],[285,252],[286,253],[287,227],[230,221],[224,247],[290,247],[231,254],[291,255],[238,231],[234,251],[236,247],[237,221],[233,231],[235,256],[239,257],[232,221],[248,258],[294,247],[295,221],[225,221],[226,221],[222,77],[271,236],[270,259],[274,238],[275,239],[277,240],[240,260],[218,261],[269,262]],"semanticDiagnosticsPerFile":[49,50,51,77,52,53,69,48,74,75,71,70,72,76,73,54,55,56,68,57,58,59,60,62,61,63,67,241,242,243,244,247,245,246,102,101,106,104,105,103,65,66,64,85,88,89,95,90,91,93,86,94,87,80,96,127,128,217,129,135,136,137,142,143,146,148,149,150,153,155,156,157,158,162,163,166,168,169,170,171,175,190,212,192,193,196,197,202,204,209,210,211,213,134,131,133,214,216,215,97,115,116,112,114,99,126,109,108,111,107,110,120,117,118,119,124,121,122,123,125,113,251,252,253,258,255,250,254,262,256,257,260,259,261,267,268,266,265,263,264,47,385,386,387,388,389,390,392,393,391,394,395,396,397,398,399,400,401,402,403,221,384,297,298,332,333,334,335,336,337,338,339,340,341,342,344,343,345,346,347,331,382,348,349,350,383,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,365,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,404,405,406,407,273,78,139,141,144,147,145,205,132,83,81,151,154,152,160,161,164,167,165,181,191,195,194,203,200,201,82,208,84,172,79,159,138,140,177,176,174,178,179,173,180,182,183,184,189,199,186,130,207,206,198,188,187,185,92,220,98,45,46,8,10,9,2,11,12,13,14,15,16,17,18,3,19,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,314,321,313,328,305,304,327,322,325,307,306,302,301,324,303,308,309,312,299,330,329,316,317,319,315,318,323,310,311,320,300,326,100,276,249,279,227,280,229,228,281,282,283,284,285,286,287,230,224,288,289,290,231,291,238,234,236,237,233,235,239,232,248,292,293,294,295,225,226,222,278,223,271,270,274,275,277,219,240,272,296,218,269]},"version":"5.4.5"} \ No newline at end of file diff --git a/dist/chatClient.d.ts b/dist/chatClient.d.ts index e3abaac..9d60b40 100644 --- a/dist/chatClient.d.ts +++ b/dist/chatClient.d.ts @@ -23,11 +23,13 @@ interface QuestionParams { messages: any; model: string; stream?: boolean; + session_id?: string; + model_params?: Map; + additional_params?: Map; frequency_penalty?: any; presence_penalty?: any; temperature?: any; top_p?: any; - session_id?: string; } declare class ChatClient { modelName: string; diff --git a/dist/chatClient.js b/dist/chatClient.js index e78cf05..9b24930 100644 --- a/dist/chatClient.js +++ b/dist/chatClient.js @@ -203,7 +203,9 @@ class ChatClient { stream: true, ...question, model: question?.model?.toLowerCase(), - miner_session_id: this.minerSessionId + miner_session_id: this.minerSessionId, + model_params: question.model_params, + additional_params: question.additional_params, }); if (question.messages && this.assistantRoleName) { question.messages = question.messages.map((item) => { @@ -659,4 +661,4 @@ class ChatClient { } } exports.default = ChatClient; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBc0Q7QUFFdEQseURBQXNEO0FBQ3RELHVFQUFvRTtBQWtDcEUsTUFBTSxVQUFVO0lBb0NkLFlBQVksT0FBc0I7UUEzQjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWV2QixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUsxQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxJQUFJLGlDQUFnQixDQUFDO1FBQ3ZELElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsSUFBSSxrQ0FBaUIsQ0FBQztRQUMxRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFB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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGF0Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLHdFQUFnRDtBQUNoRCx5REFBNkM7QUFFN0MscURBTTBCO0FBQzFCLHFDQUFrQztBQUNsQywrQ0FBeUM7QUFDekMsMkVBQXVFO0FBQ3ZFLHlEQUcrQjtBQUMvQiwyQ0FBc0Q7QUFFdEQseURBQXNEO0FBQ3RELHVFQUFvRTtBQXNDcEUsTUFBTSxVQUFVO0lBb0NkLFlBQVksT0FBc0I7UUEzQjFCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQix1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQix5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQWV2QixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUsxQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxJQUFJLGlDQUFnQixDQUFDO1FBQ3ZELElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsSUFBSSxrQ0FBaUIsQ0FBQztRQUMxRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQ0FBZ0IsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksa0NBQWlCLENBQUM7UUFDMUQsSUFB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 \ No newline at end of file diff --git a/src/chatClient.ts b/src/chatClient.ts index c729f04..9b986f3 100644 --- a/src/chatClient.ts +++ b/src/chatClient.ts @@ -46,11 +46,15 @@ interface QuestionParams { messages: any; model: string; stream?: boolean; + session_id?: string; + model_params?: Map; + additional_params?: Map; + + // TODO: deprecated frequency_penalty?: any; presence_penalty?: any; temperature?: any; top_p?: any; - session_id?: string; } class ChatClient { @@ -303,7 +307,9 @@ class ChatClient { stream: true, ...question, model: question?.model?.toLowerCase(), - miner_session_id: this.minerSessionId + miner_session_id: this.minerSessionId, + model_params: question.model_params, + additional_params: question.additional_params, }); if (question.messages && this.assistantRoleName) {