From 5921a1ffff3b90487a5b2e0ba16bcb6631b1f06c Mon Sep 17 00:00:00 2001 From: Turadg Aleahmad Date: Wed, 12 Feb 2025 10:09:56 -0800 Subject: [PATCH 1/5] chore: executable repoconfig.sh --- repoconfig.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 repoconfig.sh diff --git a/repoconfig.sh b/repoconfig.sh old mode 100644 new mode 100755 From e3304b91f9cee852a81bb7c3e8e18853d58278ca Mon Sep 17 00:00:00 2001 From: 0xPatrick Date: Thu, 6 Feb 2025 20:43:54 -0500 Subject: [PATCH 2/5] chore: `circle/cctp/v1` protos - sourced from https://github.com/circlefin/noble-cctp/tree/38595d10898712dd03c848662be42cd038e25d56/proto - includes `yarn codegen` - mainly for `/circle.cctp.v1.MsgDepositForBurn` --- .../proto/circle/cctp/v1/attester.proto | 29 + .../proto/circle/cctp/v1/burn_message.proto | 42 + .../cctp/v1/burning_and_minting_paused.proto | 29 + .../proto/circle/cctp/v1/events.proto | 261 + .../proto/circle/cctp/v1/genesis.proto | 54 + .../cctp/v1/max_message_body_size.proto | 29 + .../proto/circle/cctp/v1/message.proto | 48 + .../proto/circle/cctp/v1/nonce.proto | 33 + .../cctp/v1/per_message_burn_limit.proto | 38 + .../proto/circle/cctp/v1/query.proto | 334 ++ .../cctp/v1/remote_token_messenger.proto | 30 + ...ending_and_receiving_messages_paused.proto | 29 + .../circle/cctp/v1/signature_threshold.proto | 30 + .../proto/circle/cctp/v1/token_pair.proto | 36 + .../proto/circle/cctp/v1/tx.proto | 421 ++ .../cosmic-proto/src/codegen/circle/bundle.ts | 37 + .../src/codegen/circle/cctp/v1/attester.ts | 84 + .../codegen/circle/cctp/v1/burn_message.ts | 160 + .../cctp/v1/burning_and_minting_paused.ts | 93 + .../src/codegen/circle/cctp/v1/events.ts | 2319 +++++++++ .../src/codegen/circle/cctp/v1/genesis.ts | 403 ++ .../circle/cctp/v1/max_message_body_size.ts | 93 + .../src/codegen/circle/cctp/v1/message.ts | 227 + .../src/codegen/circle/cctp/v1/nonce.ts | 109 + .../circle/cctp/v1/per_message_burn_limit.ts | 105 + .../src/codegen/circle/cctp/v1/query.ts | 3723 ++++++++++++++ .../circle/cctp/v1/remote_token_messenger.ts | 105 + .../sending_and_receiving_messages_paused.ts | 95 + .../circle/cctp/v1/signature_threshold.ts | 89 + .../src/codegen/circle/cctp/v1/token_pair.ts | 128 + .../src/codegen/circle/cctp/v1/tx.ts | 4420 +++++++++++++++++ .../cosmic-proto/src/codegen/cosmos/bundle.ts | 252 +- .../src/codegen/cosmos_proto/bundle.ts | 4 +- .../src/codegen/gogoproto/bundle.ts | 4 +- .../cosmic-proto/src/codegen/google/bundle.ts | 20 +- .../cosmic-proto/src/codegen/ibc/bundle.ts | 128 +- .../cosmic-proto/src/codegen/icq/bundle.ts | 20 +- .../cosmic-proto/src/codegen/ics23/bundle.ts | 4 +- packages/cosmic-proto/src/codegen/index.ts | 1 + .../src/codegen/tendermint/bundle.ts | 44 +- 40 files changed, 13872 insertions(+), 238 deletions(-) create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/attester.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/burn_message.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/burning_and_minting_paused.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/events.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/genesis.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/max_message_body_size.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/message.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/nonce.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/per_message_burn_limit.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/query.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/remote_token_messenger.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/sending_and_receiving_messages_paused.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/signature_threshold.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/token_pair.proto create mode 100644 packages/cosmic-proto/proto/circle/cctp/v1/tx.proto create mode 100644 packages/cosmic-proto/src/codegen/circle/bundle.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/attester.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/burn_message.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/burning_and_minting_paused.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/events.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/genesis.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/max_message_body_size.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/message.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/nonce.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/per_message_burn_limit.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/query.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/remote_token_messenger.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/sending_and_receiving_messages_paused.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/signature_threshold.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/token_pair.ts create mode 100644 packages/cosmic-proto/src/codegen/circle/cctp/v1/tx.ts diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/attester.proto b/packages/cosmic-proto/proto/circle/cctp/v1/attester.proto new file mode 100644 index 00000000000..84e19de313a --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/attester.proto @@ -0,0 +1,29 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * A public key used to verify message signatures + * @param attester ECDSA uncompressed public key, hex encoded + */ +message Attester { + string attester = 1; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/burn_message.proto b/packages/cosmic-proto/proto/circle/cctp/v1/burn_message.proto new file mode 100644 index 00000000000..1dfba367802 --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/burn_message.proto @@ -0,0 +1,42 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +import "gogoproto/gogo.proto"; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * Message format for BurnMessages + * @param version the message body version + * @param burn_token the burn token address on source domain as bytes32 + * @param mint_recipient the mint recipient address as bytes32 + * @param amount the burn amount + * @param message_sender the message sender + */ +message BurnMessage { + uint32 version = 1; + bytes burn_token = 2; + bytes mint_recipient = 3; + string amount = 4 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; + bytes message_sender = 5; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/burning_and_minting_paused.proto b/packages/cosmic-proto/proto/circle/cctp/v1/burning_and_minting_paused.proto new file mode 100644 index 00000000000..750d9106d7c --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/burning_and_minting_paused.proto @@ -0,0 +1,29 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * Message format for BurningAndMintingPaused + * @param paused true if paused, false if not paused + */ +message BurningAndMintingPaused { + bool paused = 1; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/events.proto b/packages/cosmic-proto/proto/circle/cctp/v1/events.proto new file mode 100644 index 00000000000..415174671df --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/events.proto @@ -0,0 +1,261 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +import "gogoproto/gogo.proto"; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * Event signatures in the CCTP module + */ + +/** + * Emitted when an attester is enabled + * @param attester newly enabled attester + */ +message AttesterEnabled { + string attester = 1; +} + +/** + * Emitted when an attester is disabled + * @param attester newly disabled attester + */ +message AttesterDisabled { + string attester = 1; +} + +/** + * Emitted when threshold number of attestations (m in m/n multisig) is updated + * @param old_signature_threshold old signature threshold + * @param new_signature_threshold new signature threshold + */ +message SignatureThresholdUpdated { + uint64 old_signature_threshold = 1; + uint64 new_signature_threshold = 2; +} + +/** + * Emitted when owner address is updated + * @param previous_owner representing the address of the previous owner + * @param new_owner representing the address of the new owner + */ +message OwnerUpdated { + string previous_owner = 1; + string new_owner = 2; +} + +/** + * Emitted when starting the two stage transfer ownership process + * @param previousOwner representing the address of the previous owner + * @param newOwner representing the address of the new owner + */ +message OwnershipTransferStarted { + string previous_owner = 1; + string new_owner = 2; +} + +/** + * Emitted when pauser address is updated + * @param previous_pauser representing the address of the previous pauser + * @param new_pauser representing the address of the new pauser + */ +message PauserUpdated { + string previous_pauser = 1; + string new_pauser = 2; +} + +/** + * Emitted when attester manager address is updated + * @param previous_attester_manager representing the address of the previous + * attester manager + * @param new_attester_manager representing the address of the new attester + * manager + */ +message AttesterManagerUpdated { + string previous_attester_manager = 1; + string new_attester_manager = 2; +} + +/** + * Emitted when token controller address is updated + * @param previous_token_controller representing the address of the previous + * token controller + * @param new_token_controller representing the address of the new token + * controller + */ +message TokenControllerUpdated { + string previous_token_controller = 1; + string new_token_controller = 2; +} + +/** + * Emitted when burning and minting tokens is paused + */ +message BurningAndMintingPausedEvent {} + +/** + * Emitted when burning and minting tokens is unpaused + */ +message BurningAndMintingUnpausedEvent {} + +/** + * Emitted when sending and receiving messages is paused + */ +message SendingAndReceivingPausedEvent {} + +/** + * Emitted when sending and receiving messages is paused + */ +message SendingAndReceivingUnpausedEvent {} + +/** + * Emitted when a DepositForBurn message is sent + * @param nonce unique nonce reserved by message + * @param burn_token address of token burnt on source domain + * @param amount deposit amount + * @param depositor address where deposit is transferred from + * @param mint_recipient address receiving minted tokens on destination domain + * as bytes32 + * @param destination_domain destination domain + * @param destination_token_messenger address of TokenMessenger on destination + * domain as bytes32 + * @param destination_caller authorized caller as bytes32 of receiveMessage() on + * destination domain, if not equal to bytes32(0). If equal to bytes32(0), any + * address can call receiveMessage(). + */ +message DepositForBurn { + uint64 nonce = 1; + string burn_token = 2; + string amount = 3 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; + string depositor = 4; + bytes mint_recipient = 5; + uint32 destination_domain = 6; + bytes destination_token_messenger = 7; + bytes destination_caller = 8; +} + +/** + * Emitted when tokens are minted + * @param mint_recipient recipient address of minted tokens + * @param amount amount of minted tokens + * @param mint_token contract address of minted token + */ +message MintAndWithdraw { + bytes mint_recipient = 1; + string amount = 2 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; + string mint_token = 3; +} + +/** + * Emitted when a token pair is linked + * @param local_token local token to support + * @param remote_domain remote domain + * @param remote_token token on `remoteDomain` corresponding to `localToken` + */ +message TokenPairLinked { + string local_token = 1; + uint32 remote_domain = 2; + bytes remote_token = 3; +} + +/** + * Emitted when a token pair is unlinked + * @param local_token local token address + * @param remote_domain remote domain + * @param remote_token token on `remoteDomain` unlinked from `localToken` + */ +message TokenPairUnlinked { + string local_token = 1; + uint32 remote_domain = 2; + bytes remote_token = 3; +} + +/** + * Emitted when a new message is dispatched + * @param message Raw bytes of message + */ +message MessageSent { + bytes message = 1; +} + +/** + * Emitted when a new message is received + * @param caller caller (msg.sender) on destination domain + * @param source_domain the source domain this message originated from + * @param nonce the nonce unique to this message + * @param sender the sender of this message + * @param message_body message body bytes + */ +message MessageReceived { + string caller = 1; + uint32 source_domain = 2; + uint64 nonce = 3; + bytes sender = 4; + bytes message_body = 5; +} + +/** + * Emitted when max message body size is updated + * @param new_max_message_body_size new maximum message body size, in bytes + */ +message MaxMessageBodySizeUpdated { + uint64 new_max_message_body_size = 1; +} + +/** + * Emitted when a RemoteTokenMessenger is added + * @param domain remote domain + * @param remote_token_messenger RemoteTokenMessenger on domain + */ +message RemoteTokenMessengerAdded { + uint32 domain = 1; + bytes remote_token_messenger = 2; +} + +/** + * Emitted when a RemoteTokenMessenger is removed + * @param domain remote domain + * @param remote_token_messenger RemoteTokenMessenger on domain + */ +message RemoteTokenMessengerRemoved { + uint32 domain = 1; + bytes remote_token_messenger = 2; +} + +/** + * Emitted when max burn amount per message is updated + * @param local_token + * @param old_amount old max burn amount + * @param new_amount new max burn amount + */ +message SetBurnLimitPerMessage { + string token = 1; + string burn_limit_per_message = 2 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/genesis.proto b/packages/cosmic-proto/proto/circle/cctp/v1/genesis.proto new file mode 100644 index 00000000000..6b6fd615e65 --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/genesis.proto @@ -0,0 +1,54 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +import "circle/cctp/v1/attester.proto"; +import "circle/cctp/v1/burning_and_minting_paused.proto"; +import "circle/cctp/v1/max_message_body_size.proto"; +import "circle/cctp/v1/nonce.proto"; +import "circle/cctp/v1/per_message_burn_limit.proto"; +import "circle/cctp/v1/remote_token_messenger.proto"; +import "circle/cctp/v1/sending_and_receiving_messages_paused.proto"; +import "circle/cctp/v1/signature_threshold.proto"; +import "circle/cctp/v1/token_pair.proto"; +import "gogoproto/gogo.proto"; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +// GenesisState defines the cctp module's genesis state. +message GenesisState { + reserved 1; + reserved "params"; + + string owner = 2; + string attester_manager = 3; + string pauser = 4; + string token_controller = 5; + + repeated Attester attester_list = 6 [(gogoproto.nullable) = false]; + repeated PerMessageBurnLimit per_message_burn_limit_list = 7 [(gogoproto.nullable) = false]; + BurningAndMintingPaused burning_and_minting_paused = 8; + SendingAndReceivingMessagesPaused sending_and_receiving_messages_paused = 9; + MaxMessageBodySize max_message_body_size = 10; + Nonce next_available_nonce = 11; + SignatureThreshold signature_threshold = 12; + repeated TokenPair token_pair_list = 13 [(gogoproto.nullable) = false]; + repeated Nonce used_nonces_list = 14 [(gogoproto.nullable) = false]; + repeated RemoteTokenMessenger token_messenger_list = 15 [(gogoproto.nullable) = false]; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/max_message_body_size.proto b/packages/cosmic-proto/proto/circle/cctp/v1/max_message_body_size.proto new file mode 100644 index 00000000000..4142923fc0f --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/max_message_body_size.proto @@ -0,0 +1,29 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * Message format for BurningAndMintingPaused + * @param paused true if paused, false if not paused + */ +message MaxMessageBodySize { + uint64 amount = 1; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/message.proto b/packages/cosmic-proto/proto/circle/cctp/v1/message.proto new file mode 100644 index 00000000000..5e88f8f43cc --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/message.proto @@ -0,0 +1,48 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * Generic message header for all messages passing through CCTP + * The message body is dynamically-sized to support custom message body + * formats. Other fields must be fixed-size to avoid hash collisions. + * + * Padding: uintNN fields are left-padded, and bytesNN fields are right-padded. + * + * @param version the version of the message format + * @param source_domain domain of home chain + * @param destination_domain domain of destination chain + * @param nonce destination-specific nonce + * @param sender address of sender on source chain as bytes32 + * @param recipient address of recipient on destination chain as bytes32 + * @param destination_caller address of caller on destination chain as bytes32 + * @param message_body raw bytes of message body + */ +message Message { + uint32 version = 1; + uint32 source_domain = 2; + uint32 destination_domain = 3; + uint64 nonce = 4; + bytes sender = 5; + bytes recipient = 6; + bytes destination_caller = 7; + bytes message_body = 8; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/nonce.proto b/packages/cosmic-proto/proto/circle/cctp/v1/nonce.proto new file mode 100644 index 00000000000..621d9caf39e --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/nonce.proto @@ -0,0 +1,33 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * The Nonce type functions both to mark receipt of received messages and a + * counter for sending messages + * @param source_domain the domain id, used to mark used nonces for received + * messages + * @param nonce the nonce number + */ +message Nonce { + uint32 source_domain = 1; + uint64 nonce = 2; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/per_message_burn_limit.proto b/packages/cosmic-proto/proto/circle/cctp/v1/per_message_burn_limit.proto new file mode 100644 index 00000000000..31c309c925a --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/per_message_burn_limit.proto @@ -0,0 +1,38 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +import "gogoproto/gogo.proto"; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * PerMessageBurnLimit is the maximum amount of a certain denom that can be + * burned in an single burn + * @param denom the denom + * @param amount the amount that can be burned (in microunits). An amount of + * 1000000 uusdc is equivalent to 1USDC + */ +message PerMessageBurnLimit { + string denom = 1; + string amount = 2 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/query.proto b/packages/cosmic-proto/proto/circle/cctp/v1/query.proto new file mode 100644 index 00000000000..fc4c005dfc0 --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/query.proto @@ -0,0 +1,334 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +import "circle/cctp/v1/attester.proto"; +import "circle/cctp/v1/burning_and_minting_paused.proto"; +import "circle/cctp/v1/max_message_body_size.proto"; +import "circle/cctp/v1/nonce.proto"; +import "circle/cctp/v1/per_message_burn_limit.proto"; +import "circle/cctp/v1/remote_token_messenger.proto"; +import "circle/cctp/v1/sending_and_receiving_messages_paused.proto"; +import "circle/cctp/v1/signature_threshold.proto"; +import "circle/cctp/v1/token_pair.proto"; +import "cosmos/base/query/v1beta1/pagination.proto"; +import "gogoproto/gogo.proto"; +import "google/api/annotations.proto"; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +// Query defines the gRPC querier service. +service Query { + rpc Roles(QueryRolesRequest) returns (QueryRolesResponse) { + option (google.api.http).get = "/circle/cctp/v1/roles"; + } + + // Queries an Attester by index + rpc Attester(QueryGetAttesterRequest) returns (QueryGetAttesterResponse) { + option (google.api.http).get = "/circle/cctp/v1/attesters/{attester}"; + } + // Queries a list of Attesters + rpc Attesters(QueryAllAttestersRequest) returns (QueryAllAttestersResponse) { + option (google.api.http).get = "/circle/cctp/v1/attesters"; + } + // Queries a PerMessageBurnLimit by index + rpc PerMessageBurnLimit(QueryGetPerMessageBurnLimitRequest) returns (QueryGetPerMessageBurnLimitResponse) { + option (google.api.http).get = "/circle/cctp/v1/per_message_burn_limits/{denom}"; + } + // Queries a list of PerMessageBurnLimits + rpc PerMessageBurnLimits(QueryAllPerMessageBurnLimitsRequest) returns (QueryAllPerMessageBurnLimitsResponse) { + option (google.api.http).get = "/circle/cctp/v1/per_message_burn_limits"; + } + // Queries BurningAndMintingPaused + rpc BurningAndMintingPaused(QueryGetBurningAndMintingPausedRequest) returns (QueryGetBurningAndMintingPausedResponse) { + option (google.api.http).get = "/circle/cctp/v1/burning_and_minting_paused"; + } + // Queries SendingAndReceivingPaused + rpc SendingAndReceivingMessagesPaused(QueryGetSendingAndReceivingMessagesPausedRequest) returns (QueryGetSendingAndReceivingMessagesPausedResponse) { + option (google.api.http).get = "/circle/cctp/v1/sending_and_receiving_messages_paused"; + } + // Queries the MaxMessageBodySize + rpc MaxMessageBodySize(QueryGetMaxMessageBodySizeRequest) returns (QueryGetMaxMessageBodySizeResponse) { + option (google.api.http).get = "/circle/cctp/v1/max_message_body_size"; + } + // Queries the NextAvailableNonce + rpc NextAvailableNonce(QueryGetNextAvailableNonceRequest) returns (QueryGetNextAvailableNonceResponse) { + option (google.api.http).get = "/circle/cctp/v1/next_available_nonce"; + } + // Queries the SignatureThreshold + rpc SignatureThreshold(QueryGetSignatureThresholdRequest) returns (QueryGetSignatureThresholdResponse) { + option (google.api.http).get = "/circle/cctp/v1/signature_threshold"; + } + // Queries a TokenPair by index + rpc TokenPair(QueryGetTokenPairRequest) returns (QueryGetTokenPairResponse) { + option (google.api.http).get = "/circle/cctp/v1/token_pairs/{remote_domain}/{remote_token}"; + } + // Queries a list of TokenPair + rpc TokenPairs(QueryAllTokenPairsRequest) returns (QueryAllTokenPairsResponse) { + option (google.api.http).get = "/circle/cctp/v1/token_pairs"; + } + // Queries a UsedNonce by index + rpc UsedNonce(QueryGetUsedNonceRequest) returns (QueryGetUsedNonceResponse) { + option (google.api.http).get = "/circle/cctp/v1/used_nonces/{source_domain}/{nonce}"; + } + // Queries a list of UsedNonces + rpc UsedNonces(QueryAllUsedNoncesRequest) returns (QueryAllUsedNoncesResponse) { + option (google.api.http).get = "/circle/cctp/v1/used_nonces"; + } + // Query the RemoteTokenMessenger of a specific domain. + rpc RemoteTokenMessenger(QueryRemoteTokenMessengerRequest) returns (QueryRemoteTokenMessengerResponse) { + option (google.api.http).get = "/circle/cctp/v1/remote_token_messengers/{domain_id}"; + } + // Query all RemoteTokenMessenger's. + rpc RemoteTokenMessengers(QueryRemoteTokenMessengersRequest) returns (QueryRemoteTokenMessengersResponse) { + option (google.api.http).get = "/circle/cctp/v1/remote_token_messengers"; + } + + rpc BurnMessageVersion(QueryBurnMessageVersionRequest) returns (QueryBurnMessageVersionResponse) { + option (google.api.http).get = "/circle/cctp/v1/burn_message_version"; + } + + rpc LocalMessageVersion(QueryLocalMessageVersionRequest) returns (QueryLocalMessageVersionResponse) { + option (google.api.http).get = "/circle/cctp/v1/local_message_version"; + } + + rpc LocalDomain(QueryLocalDomainRequest) returns (QueryLocalDomainResponse) { + option (google.api.http).get = "/circle/cctp/v1/local_domain"; + } +} + +// QueryRolesRequest is the request type for the Query/Roles RPC method. +message QueryRolesRequest {} + +// QueryRolesResponse is the response type for the Query/Roles RPC method. +message QueryRolesResponse { + string owner = 1; + string attester_manager = 2; + string pauser = 3; + string token_controller = 4; +} + +// QueryAttestersRequest is the request type for the Query/Attester RPC method. +message QueryGetAttesterRequest { + string attester = 1; +} + +// QueryAttestersResponse is the response type for the Query/Attester RPC +// method. +message QueryGetAttesterResponse { + Attester attester = 1 [(gogoproto.nullable) = false]; +} + +// QueryAllAttestersRequest is the request type for the Query/Attesters RPC +// method. +message QueryAllAttestersRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +// QueryAllAttestersResponse is the response type for the Query/Attesters RPC +// method. +message QueryAllAttestersResponse { + repeated Attester attesters = 1 [(gogoproto.nullable) = false]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +// QueryPerMessageBurnLimitRequest is the request type for the +// Query/PerMessageBurnLimit RPC method. +message QueryGetPerMessageBurnLimitRequest { + string denom = 1; +} + +// QueryPerMessageBurnLimitResponse is the response type for the +// Query/PerMessageBurnLimit RPC method. +message QueryGetPerMessageBurnLimitResponse { + PerMessageBurnLimit burn_limit = 1 [(gogoproto.nullable) = false]; +} + +// QueryAllPerMessageBurnLimitsRequest is the response type for the +// Query/PerMessageBurnLimit RPC method. +message QueryAllPerMessageBurnLimitsRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +// QueryAllPerMessageBurnLimitsRequest is the response type for the +// Query/PerMessageBurnLimit RPC method. +message QueryAllPerMessageBurnLimitsResponse { + repeated PerMessageBurnLimit burn_limits = 1 [(gogoproto.nullable) = false]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +// QueryBurningAndMintingPausedRequest is the request type for the +// Query/BurningAndMintingPaused RPC method. +message QueryGetBurningAndMintingPausedRequest {} + +// QueryBurningAndMintingPausedResponse is the response type for the +// Query/BurningAndMintingPaused RPC method. +message QueryGetBurningAndMintingPausedResponse { + BurningAndMintingPaused paused = 1 [(gogoproto.nullable) = false]; +} + +// QuerySendingAndReceivingPausedRequest is the request type for the +// Query/SendingAndReceivingPaused RPC method. +message QueryGetSendingAndReceivingMessagesPausedRequest {} + +// QuerySendingAndReceivingPausedResponse is the response type for the +// Query/SendingAndReceivingPaused RPC method. +message QueryGetSendingAndReceivingMessagesPausedResponse { + SendingAndReceivingMessagesPaused paused = 1 [(gogoproto.nullable) = false]; +} + +// QueryMaxMessageBodySizeRequest is the request type for the +// Query/MaxMessageBodySize RPC method. +message QueryGetMaxMessageBodySizeRequest {} + +// QueryMaxMessageBodySizeResponse is the response type for the +// Query/MaxMessageBodySize RPC method. +message QueryGetMaxMessageBodySizeResponse { + MaxMessageBodySize amount = 1 [(gogoproto.nullable) = false]; +} + +// QueryGetNextAvailableNonceRequest is the request type for the +// Query/NextAvailableNonce RPC method. +message QueryGetNextAvailableNonceRequest {} + +// Query QueryGetNextAvailableNonceResponse is the response type for the +// Query/NextAvailableNonce RPC method. +message QueryGetNextAvailableNonceResponse { + Nonce nonce = 1 [(gogoproto.nullable) = false]; +} + +// QuerySignatureThresholdRequest is the request type for the +// Query/SignatureThreshold RPC method. +message QueryGetSignatureThresholdRequest {} + +// QuerySignatureThresholdResponse is the response type for the +// Query/SignatureThreshold RPC method. +message QueryGetSignatureThresholdResponse { + SignatureThreshold amount = 1 [(gogoproto.nullable) = false]; +} + +// QueryGetTokenPairRequest is the request type for the Query/TokenPair RPC +// method. +message QueryGetTokenPairRequest { + uint32 remote_domain = 1; + string remote_token = 2; +} + +// QueryGetTokenPairResponse is the response type for the Query/TokenPair RPC +// method. +message QueryGetTokenPairResponse { + TokenPair pair = 1 [(gogoproto.nullable) = false]; +} + +// QueryAllTokenPairsRequest is the request type for the Query/TokenPairs RPC +// method. +message QueryAllTokenPairsRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +// QueryAllTokenPairsResponse is the response type for the Query/TokenPairs RPC +// method. +message QueryAllTokenPairsResponse { + repeated TokenPair token_pairs = 1 [(gogoproto.nullable) = false]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +// QueryGetUsedNonceRequest is the request type for the Query/UsedNonce RPC +// method. +message QueryGetUsedNonceRequest { + uint32 source_domain = 1; + uint64 nonce = 2; +} + +// QueryGetUsedNonceResponse is the response type for the Query/UsedNonce RPC +// method. +message QueryGetUsedNonceResponse { + Nonce nonce = 1 [(gogoproto.nullable) = false]; +} + +// QueryAllUsedNonceRequest is the request type for the Query/UsedNonces RPC +// method. +message QueryAllUsedNoncesRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +// QueryAllUsedNonceResponse is the response type for the Query/UsedNonces RPC +// method. +message QueryAllUsedNoncesResponse { + repeated Nonce used_nonces = 1 [(gogoproto.nullable) = false]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +// QueryRemoteTokenMessengerRequest is the request type for the +// Query/RemoteTokenMessenger RPC method. +message QueryRemoteTokenMessengerRequest { + uint32 domain_id = 1; +} + +// QueryRemoteTokenMessengerResponse is the response type for the +// Query/RemoteTokenMessenger RPC method. +message QueryRemoteTokenMessengerResponse { + RemoteTokenMessenger remote_token_messenger = 1 [(gogoproto.nullable) = false]; +} + +// QueryRemoteTokenMessengersRequest is the request type for the +// Query/RemoteTokenMessengers RPC method. +message QueryRemoteTokenMessengersRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +// QueryRemoteTokenMessengersResponse is the response type for the +// Query/RemoteTokenMessengers RPC method. +message QueryRemoteTokenMessengersResponse { + repeated RemoteTokenMessenger remote_token_messengers = 1 [(gogoproto.nullable) = false]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +// QueryBurnMessageVersionRequest is the request type for the +// Query/BurnMessageVersion RPC method. +message QueryBurnMessageVersionRequest {} + +// QueryBurnMessageVersionResponse is the response type for the +// Query/BurnMessageVersion RPC method. +message QueryBurnMessageVersionResponse { + // version is the burn message version of the local domain. + uint32 version = 1; +} + +// QueryLocalMessageVersionRequest is the request type for the +// Query/LocalMessageVersion RPC method. +message QueryLocalMessageVersionRequest {} + +// QueryLocalMessageVersionResponse is the response type for the +// Query/LocalMessageVersion RPC method. +message QueryLocalMessageVersionResponse { + // version is the message version of the local domain. + uint32 version = 1; +} + +// QueryLocalDomainRequest is the request type for the Query/LocalDomain RPC +// method. +message QueryLocalDomainRequest {} + +// QueryLocalDomainResponse is the response type for the Query/LocalDomain RPC +// method. +message QueryLocalDomainResponse { + // domain_id is the id of the local domain. + uint32 domain_id = 1; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/remote_token_messenger.proto b/packages/cosmic-proto/proto/circle/cctp/v1/remote_token_messenger.proto new file mode 100644 index 00000000000..4b156d3ccf1 --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/remote_token_messenger.proto @@ -0,0 +1,30 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * @param domain_id + * @param address + */ +message RemoteTokenMessenger { + uint32 domain_id = 1; + bytes address = 2; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/sending_and_receiving_messages_paused.proto b/packages/cosmic-proto/proto/circle/cctp/v1/sending_and_receiving_messages_paused.proto new file mode 100644 index 00000000000..53894fd1926 --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/sending_and_receiving_messages_paused.proto @@ -0,0 +1,29 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * Message format for SendingAndReceivingMessagesPaused + * @param paused true if paused, false if not paused + */ +message SendingAndReceivingMessagesPaused { + bool paused = 1; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/signature_threshold.proto b/packages/cosmic-proto/proto/circle/cctp/v1/signature_threshold.proto new file mode 100644 index 00000000000..3c234c31148 --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/signature_threshold.proto @@ -0,0 +1,30 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * SignatureThreshold is the minimum amount of signatures required to attest to + * a message (the 'm' in a m/n multisig) + * @param amount the number of signatures required + */ +message SignatureThreshold { + uint32 amount = 1; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/token_pair.proto b/packages/cosmic-proto/proto/circle/cctp/v1/token_pair.proto new file mode 100644 index 00000000000..a6ca7ab4c8b --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/token_pair.proto @@ -0,0 +1,36 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +/** + * TokenPair is used to look up the Noble token (i.e. "uusdc") from a remote + * domain token address Multiple remote_domain + remote_token pairs can map to + * the same local_token + * + * @param remote_domain the remote domain_id corresponding to the token + * @param remote_token the remote token address + * @param local_token the corresponding Noble token denom in uunits + */ +message TokenPair { + uint32 remote_domain = 1; + bytes remote_token = 2; + string local_token = 3; +} diff --git a/packages/cosmic-proto/proto/circle/cctp/v1/tx.proto b/packages/cosmic-proto/proto/circle/cctp/v1/tx.proto new file mode 100644 index 00000000000..02e696c58fc --- /dev/null +++ b/packages/cosmic-proto/proto/circle/cctp/v1/tx.proto @@ -0,0 +1,421 @@ +// Copyright 2024 Circle Internet Group, Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 + +syntax = "proto3"; + +package circle.cctp.v1; + +import "amino/amino.proto"; +import "cosmos/msg/v1/msg.proto"; +import "cosmos_proto/cosmos.proto"; +import "gogoproto/gogo.proto"; + +option go_package = "github.com/circlefin/noble-cctp/x/cctp/types"; + +// Msg defines the Msg service. +service Msg { + option (cosmos.msg.v1.service) = true; + + rpc AcceptOwner(MsgAcceptOwner) returns (MsgAcceptOwnerResponse); + rpc AddRemoteTokenMessenger(MsgAddRemoteTokenMessenger) returns (MsgAddRemoteTokenMessengerResponse); + rpc DepositForBurn(MsgDepositForBurn) returns (MsgDepositForBurnResponse); + rpc DepositForBurnWithCaller(MsgDepositForBurnWithCaller) returns (MsgDepositForBurnWithCallerResponse); + rpc DisableAttester(MsgDisableAttester) returns (MsgDisableAttesterResponse); + rpc EnableAttester(MsgEnableAttester) returns (MsgEnableAttesterResponse); + rpc LinkTokenPair(MsgLinkTokenPair) returns (MsgLinkTokenPairResponse); + rpc PauseBurningAndMinting(MsgPauseBurningAndMinting) returns (MsgPauseBurningAndMintingResponse); + rpc PauseSendingAndReceivingMessages(MsgPauseSendingAndReceivingMessages) returns (MsgPauseSendingAndReceivingMessagesResponse); + rpc ReceiveMessage(MsgReceiveMessage) returns (MsgReceiveMessageResponse); + rpc RemoveRemoteTokenMessenger(MsgRemoveRemoteTokenMessenger) returns (MsgRemoveRemoteTokenMessengerResponse); + rpc ReplaceDepositForBurn(MsgReplaceDepositForBurn) returns (MsgReplaceDepositForBurnResponse); + rpc ReplaceMessage(MsgReplaceMessage) returns (MsgReplaceMessageResponse); + rpc SendMessage(MsgSendMessage) returns (MsgSendMessageResponse); + rpc SendMessageWithCaller(MsgSendMessageWithCaller) returns (MsgSendMessageWithCallerResponse); + rpc UnlinkTokenPair(MsgUnlinkTokenPair) returns (MsgUnlinkTokenPairResponse); + rpc UnpauseBurningAndMinting(MsgUnpauseBurningAndMinting) returns (MsgUnpauseBurningAndMintingResponse); + rpc UnpauseSendingAndReceivingMessages(MsgUnpauseSendingAndReceivingMessages) returns (MsgUnpauseSendingAndReceivingMessagesResponse); + rpc UpdateOwner(MsgUpdateOwner) returns (MsgUpdateOwnerResponse); + rpc UpdateAttesterManager(MsgUpdateAttesterManager) returns (MsgUpdateAttesterManagerResponse); + rpc UpdateTokenController(MsgUpdateTokenController) returns (MsgUpdateTokenControllerResponse); + rpc UpdatePauser(MsgUpdatePauser) returns (MsgUpdatePauserResponse); + rpc UpdateMaxMessageBodySize(MsgUpdateMaxMessageBodySize) returns (MsgUpdateMaxMessageBodySizeResponse); + rpc SetMaxBurnAmountPerMessage(MsgSetMaxBurnAmountPerMessage) returns (MsgSetMaxBurnAmountPerMessageResponse); + rpc UpdateSignatureThreshold(MsgUpdateSignatureThreshold) returns (MsgUpdateSignatureThresholdResponse); +} + +message MsgUpdateOwner { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UpdateOwner"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string new_owner = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgUpdateOwnerResponse {} + +message MsgUpdateAttesterManager { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UpdateAttesterManager"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string new_attester_manager = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgUpdateAttesterManagerResponse {} + +message MsgUpdateTokenController { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UpdateTokenController"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string new_token_controller = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgUpdateTokenControllerResponse {} + +message MsgUpdatePauser { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UpdatePauser"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string new_pauser = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgUpdatePauserResponse {} + +message MsgAcceptOwner { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/AcceptOwner"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgAcceptOwnerResponse {} + +message MsgEnableAttester { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/EnableAttester"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string attester = 2; +} + +message MsgEnableAttesterResponse {} + +message MsgDisableAttester { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/DisableAttester"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string attester = 2; +} + +message MsgDisableAttesterResponse {} + +message MsgPauseBurningAndMinting { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/PauseBurningAndMinting"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgPauseBurningAndMintingResponse {} + +message MsgUnpauseBurningAndMinting { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UnpauseBurningAndMinting"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgUnpauseBurningAndMintingResponse {} + +message MsgPauseSendingAndReceivingMessages { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/PauseSendingAndReceivingMessages"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgPauseSendingAndReceivingMessagesResponse {} + +message MsgUnpauseSendingAndReceivingMessages { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UnpauseSendingAndReceivingMessages"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; +} + +message MsgUnpauseSendingAndReceivingMessagesResponse {} + +message MsgUpdateMaxMessageBodySize { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UpdateMaxMessageBodySize"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + uint64 message_size = 2; +} + +message MsgUpdateMaxMessageBodySizeResponse {} + +message MsgSetMaxBurnAmountPerMessage { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/SetMaxBurnAmountPerMessage"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string local_token = 2; + string amount = 3 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; +} + +message MsgSetMaxBurnAmountPerMessageResponse {} + +message MsgDepositForBurn { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/DepositForBurn"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string amount = 2 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; + uint32 destination_domain = 3; + bytes mint_recipient = 4; + string burn_token = 5; +} + +message MsgDepositForBurnResponse { + uint64 nonce = 1; +} + +message MsgDepositForBurnWithCaller { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/DepositForBurnWithCaller"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string amount = 2 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; + uint32 destination_domain = 3; + bytes mint_recipient = 4; + string burn_token = 5; + bytes destination_caller = 6; +} + +message MsgDepositForBurnWithCallerResponse { + uint64 nonce = 1; +} + +message MsgReplaceDepositForBurn { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/ReplaceDepositForBurn"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + bytes original_message = 2; + bytes original_attestation = 3; + bytes new_destination_caller = 4; + bytes new_mint_recipient = 5; +} + +message MsgReplaceDepositForBurnResponse {} + +message MsgReceiveMessage { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/ReceiveMessage"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + bytes message = 2; + bytes attestation = 3; +} + +message MsgReceiveMessageResponse { + bool success = 1; +} + +message MsgSendMessage { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/SendMessage"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + uint32 destination_domain = 2; + bytes recipient = 3; + bytes message_body = 4; +} + +message MsgSendMessageResponse { + uint64 nonce = 1; +} + +message MsgSendMessageWithCaller { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/SendMessageWithCaller"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + uint32 destination_domain = 2; + bytes recipient = 3; + bytes message_body = 4; + bytes destination_caller = 5; +} + +message MsgSendMessageWithCallerResponse { + uint64 nonce = 1; +} + +message MsgReplaceMessage { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/ReplaceMessage"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + bytes original_message = 2; + bytes original_attestation = 3; + bytes new_message_body = 4; + bytes new_destination_caller = 5; +} + +message MsgReplaceMessageResponse {} + +message MsgUpdateSignatureThreshold { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UpdateSignatureThreshold"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + uint32 amount = 2; +} + +message MsgUpdateSignatureThresholdResponse {} + +message MsgLinkTokenPair { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/LinkTokenPair"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + uint32 remote_domain = 2; + bytes remote_token = 3; + string local_token = 4; +} + +message MsgLinkTokenPairResponse {} + +message MsgUnlinkTokenPair { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/UnlinkTokenPair"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + uint32 remote_domain = 2; + bytes remote_token = 3; + string local_token = 4; +} + +message MsgUnlinkTokenPairResponse {} + +message MsgAddRemoteTokenMessenger { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/AddRemoteTokenMessenger"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + uint32 domain_id = 2; + bytes address = 3; +} + +message MsgAddRemoteTokenMessengerResponse {} + +message MsgRemoveRemoteTokenMessenger { + option (cosmos.msg.v1.signer) = "from"; + option (amino.name) = "cctp/RemoveRemoteTokenMessenger"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string from = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + uint32 domain_id = 2; +} + +message MsgRemoveRemoteTokenMessengerResponse {} diff --git a/packages/cosmic-proto/src/codegen/circle/bundle.ts b/packages/cosmic-proto/src/codegen/circle/bundle.ts new file mode 100644 index 00000000000..d73e914c656 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/bundle.ts @@ -0,0 +1,37 @@ +//@ts-nocheck +import * as _17 from './cctp/v1/attester.js'; +import * as _18 from './cctp/v1/burn_message.js'; +import * as _19 from './cctp/v1/burning_and_minting_paused.js'; +import * as _20 from './cctp/v1/events.js'; +import * as _21 from './cctp/v1/genesis.js'; +import * as _22 from './cctp/v1/max_message_body_size.js'; +import * as _23 from './cctp/v1/message.js'; +import * as _24 from './cctp/v1/nonce.js'; +import * as _25 from './cctp/v1/per_message_burn_limit.js'; +import * as _26 from './cctp/v1/query.js'; +import * as _27 from './cctp/v1/remote_token_messenger.js'; +import * as _28 from './cctp/v1/sending_and_receiving_messages_paused.js'; +import * as _29 from './cctp/v1/signature_threshold.js'; +import * as _30 from './cctp/v1/token_pair.js'; +import * as _31 from './cctp/v1/tx.js'; +export namespace circle { + export namespace cctp { + export const v1 = { + ..._17, + ..._18, + ..._19, + ..._20, + ..._21, + ..._22, + ..._23, + ..._24, + ..._25, + ..._26, + ..._27, + ..._28, + ..._29, + ..._30, + ..._31, + }; + } +} diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/attester.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/attester.ts new file mode 100644 index 00000000000..24d3c1b1dde --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/attester.ts @@ -0,0 +1,84 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * A public key used to verify message signatures + * @param attester ECDSA uncompressed public key, hex encoded + */ +export interface Attester { + attester: string; +} +export interface AttesterProtoMsg { + typeUrl: '/circle.cctp.v1.Attester'; + value: Uint8Array; +} +/** + * A public key used to verify message signatures + * @param attester ECDSA uncompressed public key, hex encoded + */ +export interface AttesterSDKType { + attester: string; +} +function createBaseAttester(): Attester { + return { + attester: '', + }; +} +export const Attester = { + typeUrl: '/circle.cctp.v1.Attester', + encode( + message: Attester, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.attester !== '') { + writer.uint32(10).string(message.attester); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Attester { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseAttester(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attester = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): Attester { + return { + attester: isSet(object.attester) ? String(object.attester) : '', + }; + }, + toJSON(message: Attester): JsonSafe { + const obj: any = {}; + message.attester !== undefined && (obj.attester = message.attester); + return obj; + }, + fromPartial(object: Partial): Attester { + const message = createBaseAttester(); + message.attester = object.attester ?? ''; + return message; + }, + fromProtoMsg(message: AttesterProtoMsg): Attester { + return Attester.decode(message.value); + }, + toProto(message: Attester): Uint8Array { + return Attester.encode(message).finish(); + }, + toProtoMsg(message: Attester): AttesterProtoMsg { + return { + typeUrl: '/circle.cctp.v1.Attester', + value: Attester.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/burn_message.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/burn_message.ts new file mode 100644 index 00000000000..4658f28f9c3 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/burn_message.ts @@ -0,0 +1,160 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet, bytesFromBase64, base64FromBytes } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * Message format for BurnMessages + * @param version the message body version + * @param burn_token the burn token address on source domain as bytes32 + * @param mint_recipient the mint recipient address as bytes32 + * @param amount the burn amount + * @param message_sender the message sender + */ +export interface BurnMessage { + version: number; + burnToken: Uint8Array; + mintRecipient: Uint8Array; + amount: string; + messageSender: Uint8Array; +} +export interface BurnMessageProtoMsg { + typeUrl: '/circle.cctp.v1.BurnMessage'; + value: Uint8Array; +} +/** + * Message format for BurnMessages + * @param version the message body version + * @param burn_token the burn token address on source domain as bytes32 + * @param mint_recipient the mint recipient address as bytes32 + * @param amount the burn amount + * @param message_sender the message sender + */ +export interface BurnMessageSDKType { + version: number; + burn_token: Uint8Array; + mint_recipient: Uint8Array; + amount: string; + message_sender: Uint8Array; +} +function createBaseBurnMessage(): BurnMessage { + return { + version: 0, + burnToken: new Uint8Array(), + mintRecipient: new Uint8Array(), + amount: '', + messageSender: new Uint8Array(), + }; +} +export const BurnMessage = { + typeUrl: '/circle.cctp.v1.BurnMessage', + encode( + message: BurnMessage, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.version !== 0) { + writer.uint32(8).uint32(message.version); + } + if (message.burnToken.length !== 0) { + writer.uint32(18).bytes(message.burnToken); + } + if (message.mintRecipient.length !== 0) { + writer.uint32(26).bytes(message.mintRecipient); + } + if (message.amount !== '') { + writer.uint32(34).string(message.amount); + } + if (message.messageSender.length !== 0) { + writer.uint32(42).bytes(message.messageSender); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): BurnMessage { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBurnMessage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.uint32(); + break; + case 2: + message.burnToken = reader.bytes(); + break; + case 3: + message.mintRecipient = reader.bytes(); + break; + case 4: + message.amount = reader.string(); + break; + case 5: + message.messageSender = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): BurnMessage { + return { + version: isSet(object.version) ? Number(object.version) : 0, + burnToken: isSet(object.burnToken) + ? bytesFromBase64(object.burnToken) + : new Uint8Array(), + mintRecipient: isSet(object.mintRecipient) + ? bytesFromBase64(object.mintRecipient) + : new Uint8Array(), + amount: isSet(object.amount) ? String(object.amount) : '', + messageSender: isSet(object.messageSender) + ? bytesFromBase64(object.messageSender) + : new Uint8Array(), + }; + }, + toJSON(message: BurnMessage): JsonSafe { + const obj: any = {}; + message.version !== undefined && + (obj.version = Math.round(message.version)); + message.burnToken !== undefined && + (obj.burnToken = base64FromBytes( + message.burnToken !== undefined ? message.burnToken : new Uint8Array(), + )); + message.mintRecipient !== undefined && + (obj.mintRecipient = base64FromBytes( + message.mintRecipient !== undefined + ? message.mintRecipient + : new Uint8Array(), + )); + message.amount !== undefined && (obj.amount = message.amount); + message.messageSender !== undefined && + (obj.messageSender = base64FromBytes( + message.messageSender !== undefined + ? message.messageSender + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): BurnMessage { + const message = createBaseBurnMessage(); + message.version = object.version ?? 0; + message.burnToken = object.burnToken ?? new Uint8Array(); + message.mintRecipient = object.mintRecipient ?? new Uint8Array(); + message.amount = object.amount ?? ''; + message.messageSender = object.messageSender ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: BurnMessageProtoMsg): BurnMessage { + return BurnMessage.decode(message.value); + }, + toProto(message: BurnMessage): Uint8Array { + return BurnMessage.encode(message).finish(); + }, + toProtoMsg(message: BurnMessage): BurnMessageProtoMsg { + return { + typeUrl: '/circle.cctp.v1.BurnMessage', + value: BurnMessage.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/burning_and_minting_paused.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/burning_and_minting_paused.ts new file mode 100644 index 00000000000..ba4c23f4400 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/burning_and_minting_paused.ts @@ -0,0 +1,93 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * Message format for BurningAndMintingPaused + * @param paused true if paused, false if not paused + */ +export interface BurningAndMintingPaused { + paused: boolean; +} +export interface BurningAndMintingPausedProtoMsg { + typeUrl: '/circle.cctp.v1.BurningAndMintingPaused'; + value: Uint8Array; +} +/** + * Message format for BurningAndMintingPaused + * @param paused true if paused, false if not paused + */ +export interface BurningAndMintingPausedSDKType { + paused: boolean; +} +function createBaseBurningAndMintingPaused(): BurningAndMintingPaused { + return { + paused: false, + }; +} +export const BurningAndMintingPaused = { + typeUrl: '/circle.cctp.v1.BurningAndMintingPaused', + encode( + message: BurningAndMintingPaused, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.paused === true) { + writer.uint32(8).bool(message.paused); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): BurningAndMintingPaused { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBurningAndMintingPaused(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.paused = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): BurningAndMintingPaused { + return { + paused: isSet(object.paused) ? Boolean(object.paused) : false, + }; + }, + toJSON(message: BurningAndMintingPaused): JsonSafe { + const obj: any = {}; + message.paused !== undefined && (obj.paused = message.paused); + return obj; + }, + fromPartial( + object: Partial, + ): BurningAndMintingPaused { + const message = createBaseBurningAndMintingPaused(); + message.paused = object.paused ?? false; + return message; + }, + fromProtoMsg( + message: BurningAndMintingPausedProtoMsg, + ): BurningAndMintingPaused { + return BurningAndMintingPaused.decode(message.value); + }, + toProto(message: BurningAndMintingPaused): Uint8Array { + return BurningAndMintingPaused.encode(message).finish(); + }, + toProtoMsg( + message: BurningAndMintingPaused, + ): BurningAndMintingPausedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.BurningAndMintingPaused', + value: BurningAndMintingPaused.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/events.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/events.ts new file mode 100644 index 00000000000..26457d8c171 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/events.ts @@ -0,0 +1,2319 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet, bytesFromBase64, base64FromBytes } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * Emitted when an attester is enabled + * @param attester newly enabled attester + */ +export interface AttesterEnabled { + attester: string; +} +export interface AttesterEnabledProtoMsg { + typeUrl: '/circle.cctp.v1.AttesterEnabled'; + value: Uint8Array; +} +/** + * Emitted when an attester is enabled + * @param attester newly enabled attester + */ +export interface AttesterEnabledSDKType { + attester: string; +} +/** + * Emitted when an attester is disabled + * @param attester newly disabled attester + */ +export interface AttesterDisabled { + attester: string; +} +export interface AttesterDisabledProtoMsg { + typeUrl: '/circle.cctp.v1.AttesterDisabled'; + value: Uint8Array; +} +/** + * Emitted when an attester is disabled + * @param attester newly disabled attester + */ +export interface AttesterDisabledSDKType { + attester: string; +} +/** + * Emitted when threshold number of attestations (m in m/n multisig) is updated + * @param old_signature_threshold old signature threshold + * @param new_signature_threshold new signature threshold + */ +export interface SignatureThresholdUpdated { + oldSignatureThreshold: bigint; + newSignatureThreshold: bigint; +} +export interface SignatureThresholdUpdatedProtoMsg { + typeUrl: '/circle.cctp.v1.SignatureThresholdUpdated'; + value: Uint8Array; +} +/** + * Emitted when threshold number of attestations (m in m/n multisig) is updated + * @param old_signature_threshold old signature threshold + * @param new_signature_threshold new signature threshold + */ +export interface SignatureThresholdUpdatedSDKType { + old_signature_threshold: bigint; + new_signature_threshold: bigint; +} +/** + * Emitted when owner address is updated + * @param previous_owner representing the address of the previous owner + * @param new_owner representing the address of the new owner + */ +export interface OwnerUpdated { + previousOwner: string; + newOwner: string; +} +export interface OwnerUpdatedProtoMsg { + typeUrl: '/circle.cctp.v1.OwnerUpdated'; + value: Uint8Array; +} +/** + * Emitted when owner address is updated + * @param previous_owner representing the address of the previous owner + * @param new_owner representing the address of the new owner + */ +export interface OwnerUpdatedSDKType { + previous_owner: string; + new_owner: string; +} +/** + * Emitted when starting the two stage transfer ownership process + * @param previousOwner representing the address of the previous owner + * @param newOwner representing the address of the new owner + */ +export interface OwnershipTransferStarted { + previousOwner: string; + newOwner: string; +} +export interface OwnershipTransferStartedProtoMsg { + typeUrl: '/circle.cctp.v1.OwnershipTransferStarted'; + value: Uint8Array; +} +/** + * Emitted when starting the two stage transfer ownership process + * @param previousOwner representing the address of the previous owner + * @param newOwner representing the address of the new owner + */ +export interface OwnershipTransferStartedSDKType { + previous_owner: string; + new_owner: string; +} +/** + * Emitted when pauser address is updated + * @param previous_pauser representing the address of the previous pauser + * @param new_pauser representing the address of the new pauser + */ +export interface PauserUpdated { + previousPauser: string; + newPauser: string; +} +export interface PauserUpdatedProtoMsg { + typeUrl: '/circle.cctp.v1.PauserUpdated'; + value: Uint8Array; +} +/** + * Emitted when pauser address is updated + * @param previous_pauser representing the address of the previous pauser + * @param new_pauser representing the address of the new pauser + */ +export interface PauserUpdatedSDKType { + previous_pauser: string; + new_pauser: string; +} +/** + * Emitted when attester manager address is updated + * @param previous_attester_manager representing the address of the previous + * attester manager + * @param new_attester_manager representing the address of the new attester + * manager + */ +export interface AttesterManagerUpdated { + previousAttesterManager: string; + newAttesterManager: string; +} +export interface AttesterManagerUpdatedProtoMsg { + typeUrl: '/circle.cctp.v1.AttesterManagerUpdated'; + value: Uint8Array; +} +/** + * Emitted when attester manager address is updated + * @param previous_attester_manager representing the address of the previous + * attester manager + * @param new_attester_manager representing the address of the new attester + * manager + */ +export interface AttesterManagerUpdatedSDKType { + previous_attester_manager: string; + new_attester_manager: string; +} +/** + * Emitted when token controller address is updated + * @param previous_token_controller representing the address of the previous + * token controller + * @param new_token_controller representing the address of the new token + * controller + */ +export interface TokenControllerUpdated { + previousTokenController: string; + newTokenController: string; +} +export interface TokenControllerUpdatedProtoMsg { + typeUrl: '/circle.cctp.v1.TokenControllerUpdated'; + value: Uint8Array; +} +/** + * Emitted when token controller address is updated + * @param previous_token_controller representing the address of the previous + * token controller + * @param new_token_controller representing the address of the new token + * controller + */ +export interface TokenControllerUpdatedSDKType { + previous_token_controller: string; + new_token_controller: string; +} +/** Emitted when burning and minting tokens is paused */ +export interface BurningAndMintingPausedEvent {} +export interface BurningAndMintingPausedEventProtoMsg { + typeUrl: '/circle.cctp.v1.BurningAndMintingPausedEvent'; + value: Uint8Array; +} +/** Emitted when burning and minting tokens is paused */ +export interface BurningAndMintingPausedEventSDKType {} +/** Emitted when burning and minting tokens is unpaused */ +export interface BurningAndMintingUnpausedEvent {} +export interface BurningAndMintingUnpausedEventProtoMsg { + typeUrl: '/circle.cctp.v1.BurningAndMintingUnpausedEvent'; + value: Uint8Array; +} +/** Emitted when burning and minting tokens is unpaused */ +export interface BurningAndMintingUnpausedEventSDKType {} +/** Emitted when sending and receiving messages is paused */ +export interface SendingAndReceivingPausedEvent {} +export interface SendingAndReceivingPausedEventProtoMsg { + typeUrl: '/circle.cctp.v1.SendingAndReceivingPausedEvent'; + value: Uint8Array; +} +/** Emitted when sending and receiving messages is paused */ +export interface SendingAndReceivingPausedEventSDKType {} +/** Emitted when sending and receiving messages is paused */ +export interface SendingAndReceivingUnpausedEvent {} +export interface SendingAndReceivingUnpausedEventProtoMsg { + typeUrl: '/circle.cctp.v1.SendingAndReceivingUnpausedEvent'; + value: Uint8Array; +} +/** Emitted when sending and receiving messages is paused */ +export interface SendingAndReceivingUnpausedEventSDKType {} +/** + * Emitted when a DepositForBurn message is sent + * @param nonce unique nonce reserved by message + * @param burn_token address of token burnt on source domain + * @param amount deposit amount + * @param depositor address where deposit is transferred from + * @param mint_recipient address receiving minted tokens on destination domain + * as bytes32 + * @param destination_domain destination domain + * @param destination_token_messenger address of TokenMessenger on destination + * domain as bytes32 + * @param destination_caller authorized caller as bytes32 of receiveMessage() on + * destination domain, if not equal to bytes32(0). If equal to bytes32(0), any + * address can call receiveMessage(). + */ +export interface DepositForBurn { + nonce: bigint; + burnToken: string; + amount: string; + depositor: string; + mintRecipient: Uint8Array; + destinationDomain: number; + destinationTokenMessenger: Uint8Array; + destinationCaller: Uint8Array; +} +export interface DepositForBurnProtoMsg { + typeUrl: '/circle.cctp.v1.DepositForBurn'; + value: Uint8Array; +} +/** + * Emitted when a DepositForBurn message is sent + * @param nonce unique nonce reserved by message + * @param burn_token address of token burnt on source domain + * @param amount deposit amount + * @param depositor address where deposit is transferred from + * @param mint_recipient address receiving minted tokens on destination domain + * as bytes32 + * @param destination_domain destination domain + * @param destination_token_messenger address of TokenMessenger on destination + * domain as bytes32 + * @param destination_caller authorized caller as bytes32 of receiveMessage() on + * destination domain, if not equal to bytes32(0). If equal to bytes32(0), any + * address can call receiveMessage(). + */ +export interface DepositForBurnSDKType { + nonce: bigint; + burn_token: string; + amount: string; + depositor: string; + mint_recipient: Uint8Array; + destination_domain: number; + destination_token_messenger: Uint8Array; + destination_caller: Uint8Array; +} +/** + * Emitted when tokens are minted + * @param mint_recipient recipient address of minted tokens + * @param amount amount of minted tokens + * @param mint_token contract address of minted token + */ +export interface MintAndWithdraw { + mintRecipient: Uint8Array; + amount: string; + mintToken: string; +} +export interface MintAndWithdrawProtoMsg { + typeUrl: '/circle.cctp.v1.MintAndWithdraw'; + value: Uint8Array; +} +/** + * Emitted when tokens are minted + * @param mint_recipient recipient address of minted tokens + * @param amount amount of minted tokens + * @param mint_token contract address of minted token + */ +export interface MintAndWithdrawSDKType { + mint_recipient: Uint8Array; + amount: string; + mint_token: string; +} +/** + * Emitted when a token pair is linked + * @param local_token local token to support + * @param remote_domain remote domain + * @param remote_token token on `remoteDomain` corresponding to `localToken` + */ +export interface TokenPairLinked { + localToken: string; + remoteDomain: number; + remoteToken: Uint8Array; +} +export interface TokenPairLinkedProtoMsg { + typeUrl: '/circle.cctp.v1.TokenPairLinked'; + value: Uint8Array; +} +/** + * Emitted when a token pair is linked + * @param local_token local token to support + * @param remote_domain remote domain + * @param remote_token token on `remoteDomain` corresponding to `localToken` + */ +export interface TokenPairLinkedSDKType { + local_token: string; + remote_domain: number; + remote_token: Uint8Array; +} +/** + * Emitted when a token pair is unlinked + * @param local_token local token address + * @param remote_domain remote domain + * @param remote_token token on `remoteDomain` unlinked from `localToken` + */ +export interface TokenPairUnlinked { + localToken: string; + remoteDomain: number; + remoteToken: Uint8Array; +} +export interface TokenPairUnlinkedProtoMsg { + typeUrl: '/circle.cctp.v1.TokenPairUnlinked'; + value: Uint8Array; +} +/** + * Emitted when a token pair is unlinked + * @param local_token local token address + * @param remote_domain remote domain + * @param remote_token token on `remoteDomain` unlinked from `localToken` + */ +export interface TokenPairUnlinkedSDKType { + local_token: string; + remote_domain: number; + remote_token: Uint8Array; +} +/** + * Emitted when a new message is dispatched + * @param message Raw bytes of message + */ +export interface MessageSent { + message: Uint8Array; +} +export interface MessageSentProtoMsg { + typeUrl: '/circle.cctp.v1.MessageSent'; + value: Uint8Array; +} +/** + * Emitted when a new message is dispatched + * @param message Raw bytes of message + */ +export interface MessageSentSDKType { + message: Uint8Array; +} +/** + * Emitted when a new message is received + * @param caller caller (msg.sender) on destination domain + * @param source_domain the source domain this message originated from + * @param nonce the nonce unique to this message + * @param sender the sender of this message + * @param message_body message body bytes + */ +export interface MessageReceived { + caller: string; + sourceDomain: number; + nonce: bigint; + sender: Uint8Array; + messageBody: Uint8Array; +} +export interface MessageReceivedProtoMsg { + typeUrl: '/circle.cctp.v1.MessageReceived'; + value: Uint8Array; +} +/** + * Emitted when a new message is received + * @param caller caller (msg.sender) on destination domain + * @param source_domain the source domain this message originated from + * @param nonce the nonce unique to this message + * @param sender the sender of this message + * @param message_body message body bytes + */ +export interface MessageReceivedSDKType { + caller: string; + source_domain: number; + nonce: bigint; + sender: Uint8Array; + message_body: Uint8Array; +} +/** + * Emitted when max message body size is updated + * @param new_max_message_body_size new maximum message body size, in bytes + */ +export interface MaxMessageBodySizeUpdated { + newMaxMessageBodySize: bigint; +} +export interface MaxMessageBodySizeUpdatedProtoMsg { + typeUrl: '/circle.cctp.v1.MaxMessageBodySizeUpdated'; + value: Uint8Array; +} +/** + * Emitted when max message body size is updated + * @param new_max_message_body_size new maximum message body size, in bytes + */ +export interface MaxMessageBodySizeUpdatedSDKType { + new_max_message_body_size: bigint; +} +/** + * Emitted when a RemoteTokenMessenger is added + * @param domain remote domain + * @param remote_token_messenger RemoteTokenMessenger on domain + */ +export interface RemoteTokenMessengerAdded { + domain: number; + remoteTokenMessenger: Uint8Array; +} +export interface RemoteTokenMessengerAddedProtoMsg { + typeUrl: '/circle.cctp.v1.RemoteTokenMessengerAdded'; + value: Uint8Array; +} +/** + * Emitted when a RemoteTokenMessenger is added + * @param domain remote domain + * @param remote_token_messenger RemoteTokenMessenger on domain + */ +export interface RemoteTokenMessengerAddedSDKType { + domain: number; + remote_token_messenger: Uint8Array; +} +/** + * Emitted when a RemoteTokenMessenger is removed + * @param domain remote domain + * @param remote_token_messenger RemoteTokenMessenger on domain + */ +export interface RemoteTokenMessengerRemoved { + domain: number; + remoteTokenMessenger: Uint8Array; +} +export interface RemoteTokenMessengerRemovedProtoMsg { + typeUrl: '/circle.cctp.v1.RemoteTokenMessengerRemoved'; + value: Uint8Array; +} +/** + * Emitted when a RemoteTokenMessenger is removed + * @param domain remote domain + * @param remote_token_messenger RemoteTokenMessenger on domain + */ +export interface RemoteTokenMessengerRemovedSDKType { + domain: number; + remote_token_messenger: Uint8Array; +} +/** + * Emitted when max burn amount per message is updated + * @param local_token + * @param old_amount old max burn amount + * @param new_amount new max burn amount + */ +export interface SetBurnLimitPerMessage { + token: string; + burnLimitPerMessage: string; +} +export interface SetBurnLimitPerMessageProtoMsg { + typeUrl: '/circle.cctp.v1.SetBurnLimitPerMessage'; + value: Uint8Array; +} +/** + * Emitted when max burn amount per message is updated + * @param local_token + * @param old_amount old max burn amount + * @param new_amount new max burn amount + */ +export interface SetBurnLimitPerMessageSDKType { + token: string; + burn_limit_per_message: string; +} +function createBaseAttesterEnabled(): AttesterEnabled { + return { + attester: '', + }; +} +export const AttesterEnabled = { + typeUrl: '/circle.cctp.v1.AttesterEnabled', + encode( + message: AttesterEnabled, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.attester !== '') { + writer.uint32(10).string(message.attester); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): AttesterEnabled { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseAttesterEnabled(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attester = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): AttesterEnabled { + return { + attester: isSet(object.attester) ? String(object.attester) : '', + }; + }, + toJSON(message: AttesterEnabled): JsonSafe { + const obj: any = {}; + message.attester !== undefined && (obj.attester = message.attester); + return obj; + }, + fromPartial(object: Partial): AttesterEnabled { + const message = createBaseAttesterEnabled(); + message.attester = object.attester ?? ''; + return message; + }, + fromProtoMsg(message: AttesterEnabledProtoMsg): AttesterEnabled { + return AttesterEnabled.decode(message.value); + }, + toProto(message: AttesterEnabled): Uint8Array { + return AttesterEnabled.encode(message).finish(); + }, + toProtoMsg(message: AttesterEnabled): AttesterEnabledProtoMsg { + return { + typeUrl: '/circle.cctp.v1.AttesterEnabled', + value: AttesterEnabled.encode(message).finish(), + }; + }, +}; +function createBaseAttesterDisabled(): AttesterDisabled { + return { + attester: '', + }; +} +export const AttesterDisabled = { + typeUrl: '/circle.cctp.v1.AttesterDisabled', + encode( + message: AttesterDisabled, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.attester !== '') { + writer.uint32(10).string(message.attester); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): AttesterDisabled { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseAttesterDisabled(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attester = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): AttesterDisabled { + return { + attester: isSet(object.attester) ? String(object.attester) : '', + }; + }, + toJSON(message: AttesterDisabled): JsonSafe { + const obj: any = {}; + message.attester !== undefined && (obj.attester = message.attester); + return obj; + }, + fromPartial(object: Partial): AttesterDisabled { + const message = createBaseAttesterDisabled(); + message.attester = object.attester ?? ''; + return message; + }, + fromProtoMsg(message: AttesterDisabledProtoMsg): AttesterDisabled { + return AttesterDisabled.decode(message.value); + }, + toProto(message: AttesterDisabled): Uint8Array { + return AttesterDisabled.encode(message).finish(); + }, + toProtoMsg(message: AttesterDisabled): AttesterDisabledProtoMsg { + return { + typeUrl: '/circle.cctp.v1.AttesterDisabled', + value: AttesterDisabled.encode(message).finish(), + }; + }, +}; +function createBaseSignatureThresholdUpdated(): SignatureThresholdUpdated { + return { + oldSignatureThreshold: BigInt(0), + newSignatureThreshold: BigInt(0), + }; +} +export const SignatureThresholdUpdated = { + typeUrl: '/circle.cctp.v1.SignatureThresholdUpdated', + encode( + message: SignatureThresholdUpdated, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.oldSignatureThreshold !== BigInt(0)) { + writer.uint32(8).uint64(message.oldSignatureThreshold); + } + if (message.newSignatureThreshold !== BigInt(0)) { + writer.uint32(16).uint64(message.newSignatureThreshold); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): SignatureThresholdUpdated { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSignatureThresholdUpdated(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.oldSignatureThreshold = reader.uint64(); + break; + case 2: + message.newSignatureThreshold = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): SignatureThresholdUpdated { + return { + oldSignatureThreshold: isSet(object.oldSignatureThreshold) + ? BigInt(object.oldSignatureThreshold.toString()) + : BigInt(0), + newSignatureThreshold: isSet(object.newSignatureThreshold) + ? BigInt(object.newSignatureThreshold.toString()) + : BigInt(0), + }; + }, + toJSON( + message: SignatureThresholdUpdated, + ): JsonSafe { + const obj: any = {}; + message.oldSignatureThreshold !== undefined && + (obj.oldSignatureThreshold = ( + message.oldSignatureThreshold || BigInt(0) + ).toString()); + message.newSignatureThreshold !== undefined && + (obj.newSignatureThreshold = ( + message.newSignatureThreshold || BigInt(0) + ).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): SignatureThresholdUpdated { + const message = createBaseSignatureThresholdUpdated(); + message.oldSignatureThreshold = + object.oldSignatureThreshold !== undefined && + object.oldSignatureThreshold !== null + ? BigInt(object.oldSignatureThreshold.toString()) + : BigInt(0); + message.newSignatureThreshold = + object.newSignatureThreshold !== undefined && + object.newSignatureThreshold !== null + ? BigInt(object.newSignatureThreshold.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: SignatureThresholdUpdatedProtoMsg, + ): SignatureThresholdUpdated { + return SignatureThresholdUpdated.decode(message.value); + }, + toProto(message: SignatureThresholdUpdated): Uint8Array { + return SignatureThresholdUpdated.encode(message).finish(); + }, + toProtoMsg( + message: SignatureThresholdUpdated, + ): SignatureThresholdUpdatedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.SignatureThresholdUpdated', + value: SignatureThresholdUpdated.encode(message).finish(), + }; + }, +}; +function createBaseOwnerUpdated(): OwnerUpdated { + return { + previousOwner: '', + newOwner: '', + }; +} +export const OwnerUpdated = { + typeUrl: '/circle.cctp.v1.OwnerUpdated', + encode( + message: OwnerUpdated, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.previousOwner !== '') { + writer.uint32(10).string(message.previousOwner); + } + if (message.newOwner !== '') { + writer.uint32(18).string(message.newOwner); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): OwnerUpdated { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseOwnerUpdated(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.previousOwner = reader.string(); + break; + case 2: + message.newOwner = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): OwnerUpdated { + return { + previousOwner: isSet(object.previousOwner) + ? String(object.previousOwner) + : '', + newOwner: isSet(object.newOwner) ? String(object.newOwner) : '', + }; + }, + toJSON(message: OwnerUpdated): JsonSafe { + const obj: any = {}; + message.previousOwner !== undefined && + (obj.previousOwner = message.previousOwner); + message.newOwner !== undefined && (obj.newOwner = message.newOwner); + return obj; + }, + fromPartial(object: Partial): OwnerUpdated { + const message = createBaseOwnerUpdated(); + message.previousOwner = object.previousOwner ?? ''; + message.newOwner = object.newOwner ?? ''; + return message; + }, + fromProtoMsg(message: OwnerUpdatedProtoMsg): OwnerUpdated { + return OwnerUpdated.decode(message.value); + }, + toProto(message: OwnerUpdated): Uint8Array { + return OwnerUpdated.encode(message).finish(); + }, + toProtoMsg(message: OwnerUpdated): OwnerUpdatedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.OwnerUpdated', + value: OwnerUpdated.encode(message).finish(), + }; + }, +}; +function createBaseOwnershipTransferStarted(): OwnershipTransferStarted { + return { + previousOwner: '', + newOwner: '', + }; +} +export const OwnershipTransferStarted = { + typeUrl: '/circle.cctp.v1.OwnershipTransferStarted', + encode( + message: OwnershipTransferStarted, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.previousOwner !== '') { + writer.uint32(10).string(message.previousOwner); + } + if (message.newOwner !== '') { + writer.uint32(18).string(message.newOwner); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): OwnershipTransferStarted { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseOwnershipTransferStarted(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.previousOwner = reader.string(); + break; + case 2: + message.newOwner = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): OwnershipTransferStarted { + return { + previousOwner: isSet(object.previousOwner) + ? String(object.previousOwner) + : '', + newOwner: isSet(object.newOwner) ? String(object.newOwner) : '', + }; + }, + toJSON( + message: OwnershipTransferStarted, + ): JsonSafe { + const obj: any = {}; + message.previousOwner !== undefined && + (obj.previousOwner = message.previousOwner); + message.newOwner !== undefined && (obj.newOwner = message.newOwner); + return obj; + }, + fromPartial( + object: Partial, + ): OwnershipTransferStarted { + const message = createBaseOwnershipTransferStarted(); + message.previousOwner = object.previousOwner ?? ''; + message.newOwner = object.newOwner ?? ''; + return message; + }, + fromProtoMsg( + message: OwnershipTransferStartedProtoMsg, + ): OwnershipTransferStarted { + return OwnershipTransferStarted.decode(message.value); + }, + toProto(message: OwnershipTransferStarted): Uint8Array { + return OwnershipTransferStarted.encode(message).finish(); + }, + toProtoMsg( + message: OwnershipTransferStarted, + ): OwnershipTransferStartedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.OwnershipTransferStarted', + value: OwnershipTransferStarted.encode(message).finish(), + }; + }, +}; +function createBasePauserUpdated(): PauserUpdated { + return { + previousPauser: '', + newPauser: '', + }; +} +export const PauserUpdated = { + typeUrl: '/circle.cctp.v1.PauserUpdated', + encode( + message: PauserUpdated, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.previousPauser !== '') { + writer.uint32(10).string(message.previousPauser); + } + if (message.newPauser !== '') { + writer.uint32(18).string(message.newPauser); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): PauserUpdated { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBasePauserUpdated(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.previousPauser = reader.string(); + break; + case 2: + message.newPauser = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): PauserUpdated { + return { + previousPauser: isSet(object.previousPauser) + ? String(object.previousPauser) + : '', + newPauser: isSet(object.newPauser) ? String(object.newPauser) : '', + }; + }, + toJSON(message: PauserUpdated): JsonSafe { + const obj: any = {}; + message.previousPauser !== undefined && + (obj.previousPauser = message.previousPauser); + message.newPauser !== undefined && (obj.newPauser = message.newPauser); + return obj; + }, + fromPartial(object: Partial): PauserUpdated { + const message = createBasePauserUpdated(); + message.previousPauser = object.previousPauser ?? ''; + message.newPauser = object.newPauser ?? ''; + return message; + }, + fromProtoMsg(message: PauserUpdatedProtoMsg): PauserUpdated { + return PauserUpdated.decode(message.value); + }, + toProto(message: PauserUpdated): Uint8Array { + return PauserUpdated.encode(message).finish(); + }, + toProtoMsg(message: PauserUpdated): PauserUpdatedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.PauserUpdated', + value: PauserUpdated.encode(message).finish(), + }; + }, +}; +function createBaseAttesterManagerUpdated(): AttesterManagerUpdated { + return { + previousAttesterManager: '', + newAttesterManager: '', + }; +} +export const AttesterManagerUpdated = { + typeUrl: '/circle.cctp.v1.AttesterManagerUpdated', + encode( + message: AttesterManagerUpdated, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.previousAttesterManager !== '') { + writer.uint32(10).string(message.previousAttesterManager); + } + if (message.newAttesterManager !== '') { + writer.uint32(18).string(message.newAttesterManager); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): AttesterManagerUpdated { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseAttesterManagerUpdated(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.previousAttesterManager = reader.string(); + break; + case 2: + message.newAttesterManager = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): AttesterManagerUpdated { + return { + previousAttesterManager: isSet(object.previousAttesterManager) + ? String(object.previousAttesterManager) + : '', + newAttesterManager: isSet(object.newAttesterManager) + ? String(object.newAttesterManager) + : '', + }; + }, + toJSON(message: AttesterManagerUpdated): JsonSafe { + const obj: any = {}; + message.previousAttesterManager !== undefined && + (obj.previousAttesterManager = message.previousAttesterManager); + message.newAttesterManager !== undefined && + (obj.newAttesterManager = message.newAttesterManager); + return obj; + }, + fromPartial(object: Partial): AttesterManagerUpdated { + const message = createBaseAttesterManagerUpdated(); + message.previousAttesterManager = object.previousAttesterManager ?? ''; + message.newAttesterManager = object.newAttesterManager ?? ''; + return message; + }, + fromProtoMsg( + message: AttesterManagerUpdatedProtoMsg, + ): AttesterManagerUpdated { + return AttesterManagerUpdated.decode(message.value); + }, + toProto(message: AttesterManagerUpdated): Uint8Array { + return AttesterManagerUpdated.encode(message).finish(); + }, + toProtoMsg(message: AttesterManagerUpdated): AttesterManagerUpdatedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.AttesterManagerUpdated', + value: AttesterManagerUpdated.encode(message).finish(), + }; + }, +}; +function createBaseTokenControllerUpdated(): TokenControllerUpdated { + return { + previousTokenController: '', + newTokenController: '', + }; +} +export const TokenControllerUpdated = { + typeUrl: '/circle.cctp.v1.TokenControllerUpdated', + encode( + message: TokenControllerUpdated, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.previousTokenController !== '') { + writer.uint32(10).string(message.previousTokenController); + } + if (message.newTokenController !== '') { + writer.uint32(18).string(message.newTokenController); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): TokenControllerUpdated { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTokenControllerUpdated(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.previousTokenController = reader.string(); + break; + case 2: + message.newTokenController = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TokenControllerUpdated { + return { + previousTokenController: isSet(object.previousTokenController) + ? String(object.previousTokenController) + : '', + newTokenController: isSet(object.newTokenController) + ? String(object.newTokenController) + : '', + }; + }, + toJSON(message: TokenControllerUpdated): JsonSafe { + const obj: any = {}; + message.previousTokenController !== undefined && + (obj.previousTokenController = message.previousTokenController); + message.newTokenController !== undefined && + (obj.newTokenController = message.newTokenController); + return obj; + }, + fromPartial(object: Partial): TokenControllerUpdated { + const message = createBaseTokenControllerUpdated(); + message.previousTokenController = object.previousTokenController ?? ''; + message.newTokenController = object.newTokenController ?? ''; + return message; + }, + fromProtoMsg( + message: TokenControllerUpdatedProtoMsg, + ): TokenControllerUpdated { + return TokenControllerUpdated.decode(message.value); + }, + toProto(message: TokenControllerUpdated): Uint8Array { + return TokenControllerUpdated.encode(message).finish(); + }, + toProtoMsg(message: TokenControllerUpdated): TokenControllerUpdatedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.TokenControllerUpdated', + value: TokenControllerUpdated.encode(message).finish(), + }; + }, +}; +function createBaseBurningAndMintingPausedEvent(): BurningAndMintingPausedEvent { + return {}; +} +export const BurningAndMintingPausedEvent = { + typeUrl: '/circle.cctp.v1.BurningAndMintingPausedEvent', + encode( + _: BurningAndMintingPausedEvent, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): BurningAndMintingPausedEvent { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBurningAndMintingPausedEvent(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): BurningAndMintingPausedEvent { + return {}; + }, + toJSON( + _: BurningAndMintingPausedEvent, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): BurningAndMintingPausedEvent { + const message = createBaseBurningAndMintingPausedEvent(); + return message; + }, + fromProtoMsg( + message: BurningAndMintingPausedEventProtoMsg, + ): BurningAndMintingPausedEvent { + return BurningAndMintingPausedEvent.decode(message.value); + }, + toProto(message: BurningAndMintingPausedEvent): Uint8Array { + return BurningAndMintingPausedEvent.encode(message).finish(); + }, + toProtoMsg( + message: BurningAndMintingPausedEvent, + ): BurningAndMintingPausedEventProtoMsg { + return { + typeUrl: '/circle.cctp.v1.BurningAndMintingPausedEvent', + value: BurningAndMintingPausedEvent.encode(message).finish(), + }; + }, +}; +function createBaseBurningAndMintingUnpausedEvent(): BurningAndMintingUnpausedEvent { + return {}; +} +export const BurningAndMintingUnpausedEvent = { + typeUrl: '/circle.cctp.v1.BurningAndMintingUnpausedEvent', + encode( + _: BurningAndMintingUnpausedEvent, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): BurningAndMintingUnpausedEvent { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBurningAndMintingUnpausedEvent(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): BurningAndMintingUnpausedEvent { + return {}; + }, + toJSON( + _: BurningAndMintingUnpausedEvent, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): BurningAndMintingUnpausedEvent { + const message = createBaseBurningAndMintingUnpausedEvent(); + return message; + }, + fromProtoMsg( + message: BurningAndMintingUnpausedEventProtoMsg, + ): BurningAndMintingUnpausedEvent { + return BurningAndMintingUnpausedEvent.decode(message.value); + }, + toProto(message: BurningAndMintingUnpausedEvent): Uint8Array { + return BurningAndMintingUnpausedEvent.encode(message).finish(); + }, + toProtoMsg( + message: BurningAndMintingUnpausedEvent, + ): BurningAndMintingUnpausedEventProtoMsg { + return { + typeUrl: '/circle.cctp.v1.BurningAndMintingUnpausedEvent', + value: BurningAndMintingUnpausedEvent.encode(message).finish(), + }; + }, +}; +function createBaseSendingAndReceivingPausedEvent(): SendingAndReceivingPausedEvent { + return {}; +} +export const SendingAndReceivingPausedEvent = { + typeUrl: '/circle.cctp.v1.SendingAndReceivingPausedEvent', + encode( + _: SendingAndReceivingPausedEvent, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): SendingAndReceivingPausedEvent { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSendingAndReceivingPausedEvent(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): SendingAndReceivingPausedEvent { + return {}; + }, + toJSON( + _: SendingAndReceivingPausedEvent, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): SendingAndReceivingPausedEvent { + const message = createBaseSendingAndReceivingPausedEvent(); + return message; + }, + fromProtoMsg( + message: SendingAndReceivingPausedEventProtoMsg, + ): SendingAndReceivingPausedEvent { + return SendingAndReceivingPausedEvent.decode(message.value); + }, + toProto(message: SendingAndReceivingPausedEvent): Uint8Array { + return SendingAndReceivingPausedEvent.encode(message).finish(); + }, + toProtoMsg( + message: SendingAndReceivingPausedEvent, + ): SendingAndReceivingPausedEventProtoMsg { + return { + typeUrl: '/circle.cctp.v1.SendingAndReceivingPausedEvent', + value: SendingAndReceivingPausedEvent.encode(message).finish(), + }; + }, +}; +function createBaseSendingAndReceivingUnpausedEvent(): SendingAndReceivingUnpausedEvent { + return {}; +} +export const SendingAndReceivingUnpausedEvent = { + typeUrl: '/circle.cctp.v1.SendingAndReceivingUnpausedEvent', + encode( + _: SendingAndReceivingUnpausedEvent, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): SendingAndReceivingUnpausedEvent { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSendingAndReceivingUnpausedEvent(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): SendingAndReceivingUnpausedEvent { + return {}; + }, + toJSON( + _: SendingAndReceivingUnpausedEvent, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): SendingAndReceivingUnpausedEvent { + const message = createBaseSendingAndReceivingUnpausedEvent(); + return message; + }, + fromProtoMsg( + message: SendingAndReceivingUnpausedEventProtoMsg, + ): SendingAndReceivingUnpausedEvent { + return SendingAndReceivingUnpausedEvent.decode(message.value); + }, + toProto(message: SendingAndReceivingUnpausedEvent): Uint8Array { + return SendingAndReceivingUnpausedEvent.encode(message).finish(); + }, + toProtoMsg( + message: SendingAndReceivingUnpausedEvent, + ): SendingAndReceivingUnpausedEventProtoMsg { + return { + typeUrl: '/circle.cctp.v1.SendingAndReceivingUnpausedEvent', + value: SendingAndReceivingUnpausedEvent.encode(message).finish(), + }; + }, +}; +function createBaseDepositForBurn(): DepositForBurn { + return { + nonce: BigInt(0), + burnToken: '', + amount: '', + depositor: '', + mintRecipient: new Uint8Array(), + destinationDomain: 0, + destinationTokenMessenger: new Uint8Array(), + destinationCaller: new Uint8Array(), + }; +} +export const DepositForBurn = { + typeUrl: '/circle.cctp.v1.DepositForBurn', + encode( + message: DepositForBurn, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nonce !== BigInt(0)) { + writer.uint32(8).uint64(message.nonce); + } + if (message.burnToken !== '') { + writer.uint32(18).string(message.burnToken); + } + if (message.amount !== '') { + writer.uint32(26).string(message.amount); + } + if (message.depositor !== '') { + writer.uint32(34).string(message.depositor); + } + if (message.mintRecipient.length !== 0) { + writer.uint32(42).bytes(message.mintRecipient); + } + if (message.destinationDomain !== 0) { + writer.uint32(48).uint32(message.destinationDomain); + } + if (message.destinationTokenMessenger.length !== 0) { + writer.uint32(58).bytes(message.destinationTokenMessenger); + } + if (message.destinationCaller.length !== 0) { + writer.uint32(66).bytes(message.destinationCaller); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): DepositForBurn { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDepositForBurn(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nonce = reader.uint64(); + break; + case 2: + message.burnToken = reader.string(); + break; + case 3: + message.amount = reader.string(); + break; + case 4: + message.depositor = reader.string(); + break; + case 5: + message.mintRecipient = reader.bytes(); + break; + case 6: + message.destinationDomain = reader.uint32(); + break; + case 7: + message.destinationTokenMessenger = reader.bytes(); + break; + case 8: + message.destinationCaller = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): DepositForBurn { + return { + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + burnToken: isSet(object.burnToken) ? String(object.burnToken) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + depositor: isSet(object.depositor) ? String(object.depositor) : '', + mintRecipient: isSet(object.mintRecipient) + ? bytesFromBase64(object.mintRecipient) + : new Uint8Array(), + destinationDomain: isSet(object.destinationDomain) + ? Number(object.destinationDomain) + : 0, + destinationTokenMessenger: isSet(object.destinationTokenMessenger) + ? bytesFromBase64(object.destinationTokenMessenger) + : new Uint8Array(), + destinationCaller: isSet(object.destinationCaller) + ? bytesFromBase64(object.destinationCaller) + : new Uint8Array(), + }; + }, + toJSON(message: DepositForBurn): JsonSafe { + const obj: any = {}; + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + message.burnToken !== undefined && (obj.burnToken = message.burnToken); + message.amount !== undefined && (obj.amount = message.amount); + message.depositor !== undefined && (obj.depositor = message.depositor); + message.mintRecipient !== undefined && + (obj.mintRecipient = base64FromBytes( + message.mintRecipient !== undefined + ? message.mintRecipient + : new Uint8Array(), + )); + message.destinationDomain !== undefined && + (obj.destinationDomain = Math.round(message.destinationDomain)); + message.destinationTokenMessenger !== undefined && + (obj.destinationTokenMessenger = base64FromBytes( + message.destinationTokenMessenger !== undefined + ? message.destinationTokenMessenger + : new Uint8Array(), + )); + message.destinationCaller !== undefined && + (obj.destinationCaller = base64FromBytes( + message.destinationCaller !== undefined + ? message.destinationCaller + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): DepositForBurn { + const message = createBaseDepositForBurn(); + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + message.burnToken = object.burnToken ?? ''; + message.amount = object.amount ?? ''; + message.depositor = object.depositor ?? ''; + message.mintRecipient = object.mintRecipient ?? new Uint8Array(); + message.destinationDomain = object.destinationDomain ?? 0; + message.destinationTokenMessenger = + object.destinationTokenMessenger ?? new Uint8Array(); + message.destinationCaller = object.destinationCaller ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: DepositForBurnProtoMsg): DepositForBurn { + return DepositForBurn.decode(message.value); + }, + toProto(message: DepositForBurn): Uint8Array { + return DepositForBurn.encode(message).finish(); + }, + toProtoMsg(message: DepositForBurn): DepositForBurnProtoMsg { + return { + typeUrl: '/circle.cctp.v1.DepositForBurn', + value: DepositForBurn.encode(message).finish(), + }; + }, +}; +function createBaseMintAndWithdraw(): MintAndWithdraw { + return { + mintRecipient: new Uint8Array(), + amount: '', + mintToken: '', + }; +} +export const MintAndWithdraw = { + typeUrl: '/circle.cctp.v1.MintAndWithdraw', + encode( + message: MintAndWithdraw, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.mintRecipient.length !== 0) { + writer.uint32(10).bytes(message.mintRecipient); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + if (message.mintToken !== '') { + writer.uint32(26).string(message.mintToken); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MintAndWithdraw { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMintAndWithdraw(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.mintRecipient = reader.bytes(); + break; + case 2: + message.amount = reader.string(); + break; + case 3: + message.mintToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MintAndWithdraw { + return { + mintRecipient: isSet(object.mintRecipient) + ? bytesFromBase64(object.mintRecipient) + : new Uint8Array(), + amount: isSet(object.amount) ? String(object.amount) : '', + mintToken: isSet(object.mintToken) ? String(object.mintToken) : '', + }; + }, + toJSON(message: MintAndWithdraw): JsonSafe { + const obj: any = {}; + message.mintRecipient !== undefined && + (obj.mintRecipient = base64FromBytes( + message.mintRecipient !== undefined + ? message.mintRecipient + : new Uint8Array(), + )); + message.amount !== undefined && (obj.amount = message.amount); + message.mintToken !== undefined && (obj.mintToken = message.mintToken); + return obj; + }, + fromPartial(object: Partial): MintAndWithdraw { + const message = createBaseMintAndWithdraw(); + message.mintRecipient = object.mintRecipient ?? new Uint8Array(); + message.amount = object.amount ?? ''; + message.mintToken = object.mintToken ?? ''; + return message; + }, + fromProtoMsg(message: MintAndWithdrawProtoMsg): MintAndWithdraw { + return MintAndWithdraw.decode(message.value); + }, + toProto(message: MintAndWithdraw): Uint8Array { + return MintAndWithdraw.encode(message).finish(); + }, + toProtoMsg(message: MintAndWithdraw): MintAndWithdrawProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MintAndWithdraw', + value: MintAndWithdraw.encode(message).finish(), + }; + }, +}; +function createBaseTokenPairLinked(): TokenPairLinked { + return { + localToken: '', + remoteDomain: 0, + remoteToken: new Uint8Array(), + }; +} +export const TokenPairLinked = { + typeUrl: '/circle.cctp.v1.TokenPairLinked', + encode( + message: TokenPairLinked, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.localToken !== '') { + writer.uint32(10).string(message.localToken); + } + if (message.remoteDomain !== 0) { + writer.uint32(16).uint32(message.remoteDomain); + } + if (message.remoteToken.length !== 0) { + writer.uint32(26).bytes(message.remoteToken); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): TokenPairLinked { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTokenPairLinked(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.localToken = reader.string(); + break; + case 2: + message.remoteDomain = reader.uint32(); + break; + case 3: + message.remoteToken = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TokenPairLinked { + return { + localToken: isSet(object.localToken) ? String(object.localToken) : '', + remoteDomain: isSet(object.remoteDomain) + ? Number(object.remoteDomain) + : 0, + remoteToken: isSet(object.remoteToken) + ? bytesFromBase64(object.remoteToken) + : new Uint8Array(), + }; + }, + toJSON(message: TokenPairLinked): JsonSafe { + const obj: any = {}; + message.localToken !== undefined && (obj.localToken = message.localToken); + message.remoteDomain !== undefined && + (obj.remoteDomain = Math.round(message.remoteDomain)); + message.remoteToken !== undefined && + (obj.remoteToken = base64FromBytes( + message.remoteToken !== undefined + ? message.remoteToken + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): TokenPairLinked { + const message = createBaseTokenPairLinked(); + message.localToken = object.localToken ?? ''; + message.remoteDomain = object.remoteDomain ?? 0; + message.remoteToken = object.remoteToken ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: TokenPairLinkedProtoMsg): TokenPairLinked { + return TokenPairLinked.decode(message.value); + }, + toProto(message: TokenPairLinked): Uint8Array { + return TokenPairLinked.encode(message).finish(); + }, + toProtoMsg(message: TokenPairLinked): TokenPairLinkedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.TokenPairLinked', + value: TokenPairLinked.encode(message).finish(), + }; + }, +}; +function createBaseTokenPairUnlinked(): TokenPairUnlinked { + return { + localToken: '', + remoteDomain: 0, + remoteToken: new Uint8Array(), + }; +} +export const TokenPairUnlinked = { + typeUrl: '/circle.cctp.v1.TokenPairUnlinked', + encode( + message: TokenPairUnlinked, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.localToken !== '') { + writer.uint32(10).string(message.localToken); + } + if (message.remoteDomain !== 0) { + writer.uint32(16).uint32(message.remoteDomain); + } + if (message.remoteToken.length !== 0) { + writer.uint32(26).bytes(message.remoteToken); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): TokenPairUnlinked { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTokenPairUnlinked(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.localToken = reader.string(); + break; + case 2: + message.remoteDomain = reader.uint32(); + break; + case 3: + message.remoteToken = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TokenPairUnlinked { + return { + localToken: isSet(object.localToken) ? String(object.localToken) : '', + remoteDomain: isSet(object.remoteDomain) + ? Number(object.remoteDomain) + : 0, + remoteToken: isSet(object.remoteToken) + ? bytesFromBase64(object.remoteToken) + : new Uint8Array(), + }; + }, + toJSON(message: TokenPairUnlinked): JsonSafe { + const obj: any = {}; + message.localToken !== undefined && (obj.localToken = message.localToken); + message.remoteDomain !== undefined && + (obj.remoteDomain = Math.round(message.remoteDomain)); + message.remoteToken !== undefined && + (obj.remoteToken = base64FromBytes( + message.remoteToken !== undefined + ? message.remoteToken + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): TokenPairUnlinked { + const message = createBaseTokenPairUnlinked(); + message.localToken = object.localToken ?? ''; + message.remoteDomain = object.remoteDomain ?? 0; + message.remoteToken = object.remoteToken ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: TokenPairUnlinkedProtoMsg): TokenPairUnlinked { + return TokenPairUnlinked.decode(message.value); + }, + toProto(message: TokenPairUnlinked): Uint8Array { + return TokenPairUnlinked.encode(message).finish(); + }, + toProtoMsg(message: TokenPairUnlinked): TokenPairUnlinkedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.TokenPairUnlinked', + value: TokenPairUnlinked.encode(message).finish(), + }; + }, +}; +function createBaseMessageSent(): MessageSent { + return { + message: new Uint8Array(), + }; +} +export const MessageSent = { + typeUrl: '/circle.cctp.v1.MessageSent', + encode( + message: MessageSent, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.message.length !== 0) { + writer.uint32(10).bytes(message.message); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MessageSent { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMessageSent(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.message = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MessageSent { + return { + message: isSet(object.message) + ? bytesFromBase64(object.message) + : new Uint8Array(), + }; + }, + toJSON(message: MessageSent): JsonSafe { + const obj: any = {}; + message.message !== undefined && + (obj.message = base64FromBytes( + message.message !== undefined ? message.message : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): MessageSent { + const message = createBaseMessageSent(); + message.message = object.message ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: MessageSentProtoMsg): MessageSent { + return MessageSent.decode(message.value); + }, + toProto(message: MessageSent): Uint8Array { + return MessageSent.encode(message).finish(); + }, + toProtoMsg(message: MessageSent): MessageSentProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MessageSent', + value: MessageSent.encode(message).finish(), + }; + }, +}; +function createBaseMessageReceived(): MessageReceived { + return { + caller: '', + sourceDomain: 0, + nonce: BigInt(0), + sender: new Uint8Array(), + messageBody: new Uint8Array(), + }; +} +export const MessageReceived = { + typeUrl: '/circle.cctp.v1.MessageReceived', + encode( + message: MessageReceived, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.caller !== '') { + writer.uint32(10).string(message.caller); + } + if (message.sourceDomain !== 0) { + writer.uint32(16).uint32(message.sourceDomain); + } + if (message.nonce !== BigInt(0)) { + writer.uint32(24).uint64(message.nonce); + } + if (message.sender.length !== 0) { + writer.uint32(34).bytes(message.sender); + } + if (message.messageBody.length !== 0) { + writer.uint32(42).bytes(message.messageBody); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MessageReceived { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMessageReceived(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.caller = reader.string(); + break; + case 2: + message.sourceDomain = reader.uint32(); + break; + case 3: + message.nonce = reader.uint64(); + break; + case 4: + message.sender = reader.bytes(); + break; + case 5: + message.messageBody = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MessageReceived { + return { + caller: isSet(object.caller) ? String(object.caller) : '', + sourceDomain: isSet(object.sourceDomain) + ? Number(object.sourceDomain) + : 0, + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + sender: isSet(object.sender) + ? bytesFromBase64(object.sender) + : new Uint8Array(), + messageBody: isSet(object.messageBody) + ? bytesFromBase64(object.messageBody) + : new Uint8Array(), + }; + }, + toJSON(message: MessageReceived): JsonSafe { + const obj: any = {}; + message.caller !== undefined && (obj.caller = message.caller); + message.sourceDomain !== undefined && + (obj.sourceDomain = Math.round(message.sourceDomain)); + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + message.sender !== undefined && + (obj.sender = base64FromBytes( + message.sender !== undefined ? message.sender : new Uint8Array(), + )); + message.messageBody !== undefined && + (obj.messageBody = base64FromBytes( + message.messageBody !== undefined + ? message.messageBody + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): MessageReceived { + const message = createBaseMessageReceived(); + message.caller = object.caller ?? ''; + message.sourceDomain = object.sourceDomain ?? 0; + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + message.sender = object.sender ?? new Uint8Array(); + message.messageBody = object.messageBody ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: MessageReceivedProtoMsg): MessageReceived { + return MessageReceived.decode(message.value); + }, + toProto(message: MessageReceived): Uint8Array { + return MessageReceived.encode(message).finish(); + }, + toProtoMsg(message: MessageReceived): MessageReceivedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MessageReceived', + value: MessageReceived.encode(message).finish(), + }; + }, +}; +function createBaseMaxMessageBodySizeUpdated(): MaxMessageBodySizeUpdated { + return { + newMaxMessageBodySize: BigInt(0), + }; +} +export const MaxMessageBodySizeUpdated = { + typeUrl: '/circle.cctp.v1.MaxMessageBodySizeUpdated', + encode( + message: MaxMessageBodySizeUpdated, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.newMaxMessageBodySize !== BigInt(0)) { + writer.uint32(8).uint64(message.newMaxMessageBodySize); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MaxMessageBodySizeUpdated { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMaxMessageBodySizeUpdated(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.newMaxMessageBodySize = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MaxMessageBodySizeUpdated { + return { + newMaxMessageBodySize: isSet(object.newMaxMessageBodySize) + ? BigInt(object.newMaxMessageBodySize.toString()) + : BigInt(0), + }; + }, + toJSON( + message: MaxMessageBodySizeUpdated, + ): JsonSafe { + const obj: any = {}; + message.newMaxMessageBodySize !== undefined && + (obj.newMaxMessageBodySize = ( + message.newMaxMessageBodySize || BigInt(0) + ).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): MaxMessageBodySizeUpdated { + const message = createBaseMaxMessageBodySizeUpdated(); + message.newMaxMessageBodySize = + object.newMaxMessageBodySize !== undefined && + object.newMaxMessageBodySize !== null + ? BigInt(object.newMaxMessageBodySize.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: MaxMessageBodySizeUpdatedProtoMsg, + ): MaxMessageBodySizeUpdated { + return MaxMessageBodySizeUpdated.decode(message.value); + }, + toProto(message: MaxMessageBodySizeUpdated): Uint8Array { + return MaxMessageBodySizeUpdated.encode(message).finish(); + }, + toProtoMsg( + message: MaxMessageBodySizeUpdated, + ): MaxMessageBodySizeUpdatedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MaxMessageBodySizeUpdated', + value: MaxMessageBodySizeUpdated.encode(message).finish(), + }; + }, +}; +function createBaseRemoteTokenMessengerAdded(): RemoteTokenMessengerAdded { + return { + domain: 0, + remoteTokenMessenger: new Uint8Array(), + }; +} +export const RemoteTokenMessengerAdded = { + typeUrl: '/circle.cctp.v1.RemoteTokenMessengerAdded', + encode( + message: RemoteTokenMessengerAdded, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.domain !== 0) { + writer.uint32(8).uint32(message.domain); + } + if (message.remoteTokenMessenger.length !== 0) { + writer.uint32(18).bytes(message.remoteTokenMessenger); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): RemoteTokenMessengerAdded { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRemoteTokenMessengerAdded(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.domain = reader.uint32(); + break; + case 2: + message.remoteTokenMessenger = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RemoteTokenMessengerAdded { + return { + domain: isSet(object.domain) ? Number(object.domain) : 0, + remoteTokenMessenger: isSet(object.remoteTokenMessenger) + ? bytesFromBase64(object.remoteTokenMessenger) + : new Uint8Array(), + }; + }, + toJSON( + message: RemoteTokenMessengerAdded, + ): JsonSafe { + const obj: any = {}; + message.domain !== undefined && (obj.domain = Math.round(message.domain)); + message.remoteTokenMessenger !== undefined && + (obj.remoteTokenMessenger = base64FromBytes( + message.remoteTokenMessenger !== undefined + ? message.remoteTokenMessenger + : new Uint8Array(), + )); + return obj; + }, + fromPartial( + object: Partial, + ): RemoteTokenMessengerAdded { + const message = createBaseRemoteTokenMessengerAdded(); + message.domain = object.domain ?? 0; + message.remoteTokenMessenger = + object.remoteTokenMessenger ?? new Uint8Array(); + return message; + }, + fromProtoMsg( + message: RemoteTokenMessengerAddedProtoMsg, + ): RemoteTokenMessengerAdded { + return RemoteTokenMessengerAdded.decode(message.value); + }, + toProto(message: RemoteTokenMessengerAdded): Uint8Array { + return RemoteTokenMessengerAdded.encode(message).finish(); + }, + toProtoMsg( + message: RemoteTokenMessengerAdded, + ): RemoteTokenMessengerAddedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.RemoteTokenMessengerAdded', + value: RemoteTokenMessengerAdded.encode(message).finish(), + }; + }, +}; +function createBaseRemoteTokenMessengerRemoved(): RemoteTokenMessengerRemoved { + return { + domain: 0, + remoteTokenMessenger: new Uint8Array(), + }; +} +export const RemoteTokenMessengerRemoved = { + typeUrl: '/circle.cctp.v1.RemoteTokenMessengerRemoved', + encode( + message: RemoteTokenMessengerRemoved, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.domain !== 0) { + writer.uint32(8).uint32(message.domain); + } + if (message.remoteTokenMessenger.length !== 0) { + writer.uint32(18).bytes(message.remoteTokenMessenger); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): RemoteTokenMessengerRemoved { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRemoteTokenMessengerRemoved(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.domain = reader.uint32(); + break; + case 2: + message.remoteTokenMessenger = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RemoteTokenMessengerRemoved { + return { + domain: isSet(object.domain) ? Number(object.domain) : 0, + remoteTokenMessenger: isSet(object.remoteTokenMessenger) + ? bytesFromBase64(object.remoteTokenMessenger) + : new Uint8Array(), + }; + }, + toJSON( + message: RemoteTokenMessengerRemoved, + ): JsonSafe { + const obj: any = {}; + message.domain !== undefined && (obj.domain = Math.round(message.domain)); + message.remoteTokenMessenger !== undefined && + (obj.remoteTokenMessenger = base64FromBytes( + message.remoteTokenMessenger !== undefined + ? message.remoteTokenMessenger + : new Uint8Array(), + )); + return obj; + }, + fromPartial( + object: Partial, + ): RemoteTokenMessengerRemoved { + const message = createBaseRemoteTokenMessengerRemoved(); + message.domain = object.domain ?? 0; + message.remoteTokenMessenger = + object.remoteTokenMessenger ?? new Uint8Array(); + return message; + }, + fromProtoMsg( + message: RemoteTokenMessengerRemovedProtoMsg, + ): RemoteTokenMessengerRemoved { + return RemoteTokenMessengerRemoved.decode(message.value); + }, + toProto(message: RemoteTokenMessengerRemoved): Uint8Array { + return RemoteTokenMessengerRemoved.encode(message).finish(); + }, + toProtoMsg( + message: RemoteTokenMessengerRemoved, + ): RemoteTokenMessengerRemovedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.RemoteTokenMessengerRemoved', + value: RemoteTokenMessengerRemoved.encode(message).finish(), + }; + }, +}; +function createBaseSetBurnLimitPerMessage(): SetBurnLimitPerMessage { + return { + token: '', + burnLimitPerMessage: '', + }; +} +export const SetBurnLimitPerMessage = { + typeUrl: '/circle.cctp.v1.SetBurnLimitPerMessage', + encode( + message: SetBurnLimitPerMessage, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.token !== '') { + writer.uint32(10).string(message.token); + } + if (message.burnLimitPerMessage !== '') { + writer.uint32(18).string(message.burnLimitPerMessage); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): SetBurnLimitPerMessage { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSetBurnLimitPerMessage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.token = reader.string(); + break; + case 2: + message.burnLimitPerMessage = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): SetBurnLimitPerMessage { + return { + token: isSet(object.token) ? String(object.token) : '', + burnLimitPerMessage: isSet(object.burnLimitPerMessage) + ? String(object.burnLimitPerMessage) + : '', + }; + }, + toJSON(message: SetBurnLimitPerMessage): JsonSafe { + const obj: any = {}; + message.token !== undefined && (obj.token = message.token); + message.burnLimitPerMessage !== undefined && + (obj.burnLimitPerMessage = message.burnLimitPerMessage); + return obj; + }, + fromPartial(object: Partial): SetBurnLimitPerMessage { + const message = createBaseSetBurnLimitPerMessage(); + message.token = object.token ?? ''; + message.burnLimitPerMessage = object.burnLimitPerMessage ?? ''; + return message; + }, + fromProtoMsg( + message: SetBurnLimitPerMessageProtoMsg, + ): SetBurnLimitPerMessage { + return SetBurnLimitPerMessage.decode(message.value); + }, + toProto(message: SetBurnLimitPerMessage): Uint8Array { + return SetBurnLimitPerMessage.encode(message).finish(); + }, + toProtoMsg(message: SetBurnLimitPerMessage): SetBurnLimitPerMessageProtoMsg { + return { + typeUrl: '/circle.cctp.v1.SetBurnLimitPerMessage', + value: SetBurnLimitPerMessage.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/genesis.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/genesis.ts new file mode 100644 index 00000000000..3c2556f5402 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/genesis.ts @@ -0,0 +1,403 @@ +//@ts-nocheck +import { Attester, type AttesterSDKType } from './attester.js'; +import { + PerMessageBurnLimit, + type PerMessageBurnLimitSDKType, +} from './per_message_burn_limit.js'; +import { + BurningAndMintingPaused, + type BurningAndMintingPausedSDKType, +} from './burning_and_minting_paused.js'; +import { + SendingAndReceivingMessagesPaused, + type SendingAndReceivingMessagesPausedSDKType, +} from './sending_and_receiving_messages_paused.js'; +import { + MaxMessageBodySize, + type MaxMessageBodySizeSDKType, +} from './max_message_body_size.js'; +import { Nonce, type NonceSDKType } from './nonce.js'; +import { + SignatureThreshold, + type SignatureThresholdSDKType, +} from './signature_threshold.js'; +import { TokenPair, type TokenPairSDKType } from './token_pair.js'; +import { + RemoteTokenMessenger, + type RemoteTokenMessengerSDKType, +} from './remote_token_messenger.js'; +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** GenesisState defines the cctp module's genesis state. */ +export interface GenesisState { + owner: string; + attesterManager: string; + pauser: string; + tokenController: string; + attesterList: Attester[]; + perMessageBurnLimitList: PerMessageBurnLimit[]; + burningAndMintingPaused?: BurningAndMintingPaused; + sendingAndReceivingMessagesPaused?: SendingAndReceivingMessagesPaused; + maxMessageBodySize?: MaxMessageBodySize; + nextAvailableNonce?: Nonce; + signatureThreshold?: SignatureThreshold; + tokenPairList: TokenPair[]; + usedNoncesList: Nonce[]; + tokenMessengerList: RemoteTokenMessenger[]; +} +export interface GenesisStateProtoMsg { + typeUrl: '/circle.cctp.v1.GenesisState'; + value: Uint8Array; +} +/** GenesisState defines the cctp module's genesis state. */ +export interface GenesisStateSDKType { + owner: string; + attester_manager: string; + pauser: string; + token_controller: string; + attester_list: AttesterSDKType[]; + per_message_burn_limit_list: PerMessageBurnLimitSDKType[]; + burning_and_minting_paused?: BurningAndMintingPausedSDKType; + sending_and_receiving_messages_paused?: SendingAndReceivingMessagesPausedSDKType; + max_message_body_size?: MaxMessageBodySizeSDKType; + next_available_nonce?: NonceSDKType; + signature_threshold?: SignatureThresholdSDKType; + token_pair_list: TokenPairSDKType[]; + used_nonces_list: NonceSDKType[]; + token_messenger_list: RemoteTokenMessengerSDKType[]; +} +function createBaseGenesisState(): GenesisState { + return { + owner: '', + attesterManager: '', + pauser: '', + tokenController: '', + attesterList: [], + perMessageBurnLimitList: [], + burningAndMintingPaused: undefined, + sendingAndReceivingMessagesPaused: undefined, + maxMessageBodySize: undefined, + nextAvailableNonce: undefined, + signatureThreshold: undefined, + tokenPairList: [], + usedNoncesList: [], + tokenMessengerList: [], + }; +} +export const GenesisState = { + typeUrl: '/circle.cctp.v1.GenesisState', + encode( + message: GenesisState, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.owner !== '') { + writer.uint32(18).string(message.owner); + } + if (message.attesterManager !== '') { + writer.uint32(26).string(message.attesterManager); + } + if (message.pauser !== '') { + writer.uint32(34).string(message.pauser); + } + if (message.tokenController !== '') { + writer.uint32(42).string(message.tokenController); + } + for (const v of message.attesterList) { + Attester.encode(v!, writer.uint32(50).fork()).ldelim(); + } + for (const v of message.perMessageBurnLimitList) { + PerMessageBurnLimit.encode(v!, writer.uint32(58).fork()).ldelim(); + } + if (message.burningAndMintingPaused !== undefined) { + BurningAndMintingPaused.encode( + message.burningAndMintingPaused, + writer.uint32(66).fork(), + ).ldelim(); + } + if (message.sendingAndReceivingMessagesPaused !== undefined) { + SendingAndReceivingMessagesPaused.encode( + message.sendingAndReceivingMessagesPaused, + writer.uint32(74).fork(), + ).ldelim(); + } + if (message.maxMessageBodySize !== undefined) { + MaxMessageBodySize.encode( + message.maxMessageBodySize, + writer.uint32(82).fork(), + ).ldelim(); + } + if (message.nextAvailableNonce !== undefined) { + Nonce.encode( + message.nextAvailableNonce, + writer.uint32(90).fork(), + ).ldelim(); + } + if (message.signatureThreshold !== undefined) { + SignatureThreshold.encode( + message.signatureThreshold, + writer.uint32(98).fork(), + ).ldelim(); + } + for (const v of message.tokenPairList) { + TokenPair.encode(v!, writer.uint32(106).fork()).ldelim(); + } + for (const v of message.usedNoncesList) { + Nonce.encode(v!, writer.uint32(114).fork()).ldelim(); + } + for (const v of message.tokenMessengerList) { + RemoteTokenMessenger.encode(v!, writer.uint32(122).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): GenesisState { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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 2: + message.owner = reader.string(); + break; + case 3: + message.attesterManager = reader.string(); + break; + case 4: + message.pauser = reader.string(); + break; + case 5: + message.tokenController = reader.string(); + break; + case 6: + message.attesterList.push(Attester.decode(reader, reader.uint32())); + break; + case 7: + message.perMessageBurnLimitList.push( + PerMessageBurnLimit.decode(reader, reader.uint32()), + ); + break; + case 8: + message.burningAndMintingPaused = BurningAndMintingPaused.decode( + reader, + reader.uint32(), + ); + break; + case 9: + message.sendingAndReceivingMessagesPaused = + SendingAndReceivingMessagesPaused.decode(reader, reader.uint32()); + break; + case 10: + message.maxMessageBodySize = MaxMessageBodySize.decode( + reader, + reader.uint32(), + ); + break; + case 11: + message.nextAvailableNonce = Nonce.decode(reader, reader.uint32()); + break; + case 12: + message.signatureThreshold = SignatureThreshold.decode( + reader, + reader.uint32(), + ); + break; + case 13: + message.tokenPairList.push(TokenPair.decode(reader, reader.uint32())); + break; + case 14: + message.usedNoncesList.push(Nonce.decode(reader, reader.uint32())); + break; + case 15: + message.tokenMessengerList.push( + RemoteTokenMessenger.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): GenesisState { + return { + owner: isSet(object.owner) ? String(object.owner) : '', + attesterManager: isSet(object.attesterManager) + ? String(object.attesterManager) + : '', + pauser: isSet(object.pauser) ? String(object.pauser) : '', + tokenController: isSet(object.tokenController) + ? String(object.tokenController) + : '', + attesterList: Array.isArray(object?.attesterList) + ? object.attesterList.map((e: any) => Attester.fromJSON(e)) + : [], + perMessageBurnLimitList: Array.isArray(object?.perMessageBurnLimitList) + ? object.perMessageBurnLimitList.map((e: any) => + PerMessageBurnLimit.fromJSON(e), + ) + : [], + burningAndMintingPaused: isSet(object.burningAndMintingPaused) + ? BurningAndMintingPaused.fromJSON(object.burningAndMintingPaused) + : undefined, + sendingAndReceivingMessagesPaused: isSet( + object.sendingAndReceivingMessagesPaused, + ) + ? SendingAndReceivingMessagesPaused.fromJSON( + object.sendingAndReceivingMessagesPaused, + ) + : undefined, + maxMessageBodySize: isSet(object.maxMessageBodySize) + ? MaxMessageBodySize.fromJSON(object.maxMessageBodySize) + : undefined, + nextAvailableNonce: isSet(object.nextAvailableNonce) + ? Nonce.fromJSON(object.nextAvailableNonce) + : undefined, + signatureThreshold: isSet(object.signatureThreshold) + ? SignatureThreshold.fromJSON(object.signatureThreshold) + : undefined, + tokenPairList: Array.isArray(object?.tokenPairList) + ? object.tokenPairList.map((e: any) => TokenPair.fromJSON(e)) + : [], + usedNoncesList: Array.isArray(object?.usedNoncesList) + ? object.usedNoncesList.map((e: any) => Nonce.fromJSON(e)) + : [], + tokenMessengerList: Array.isArray(object?.tokenMessengerList) + ? object.tokenMessengerList.map((e: any) => + RemoteTokenMessenger.fromJSON(e), + ) + : [], + }; + }, + toJSON(message: GenesisState): JsonSafe { + const obj: any = {}; + message.owner !== undefined && (obj.owner = message.owner); + message.attesterManager !== undefined && + (obj.attesterManager = message.attesterManager); + message.pauser !== undefined && (obj.pauser = message.pauser); + message.tokenController !== undefined && + (obj.tokenController = message.tokenController); + if (message.attesterList) { + obj.attesterList = message.attesterList.map(e => + e ? Attester.toJSON(e) : undefined, + ); + } else { + obj.attesterList = []; + } + if (message.perMessageBurnLimitList) { + obj.perMessageBurnLimitList = message.perMessageBurnLimitList.map(e => + e ? PerMessageBurnLimit.toJSON(e) : undefined, + ); + } else { + obj.perMessageBurnLimitList = []; + } + message.burningAndMintingPaused !== undefined && + (obj.burningAndMintingPaused = message.burningAndMintingPaused + ? BurningAndMintingPaused.toJSON(message.burningAndMintingPaused) + : undefined); + message.sendingAndReceivingMessagesPaused !== undefined && + (obj.sendingAndReceivingMessagesPaused = + message.sendingAndReceivingMessagesPaused + ? SendingAndReceivingMessagesPaused.toJSON( + message.sendingAndReceivingMessagesPaused, + ) + : undefined); + message.maxMessageBodySize !== undefined && + (obj.maxMessageBodySize = message.maxMessageBodySize + ? MaxMessageBodySize.toJSON(message.maxMessageBodySize) + : undefined); + message.nextAvailableNonce !== undefined && + (obj.nextAvailableNonce = message.nextAvailableNonce + ? Nonce.toJSON(message.nextAvailableNonce) + : undefined); + message.signatureThreshold !== undefined && + (obj.signatureThreshold = message.signatureThreshold + ? SignatureThreshold.toJSON(message.signatureThreshold) + : undefined); + if (message.tokenPairList) { + obj.tokenPairList = message.tokenPairList.map(e => + e ? TokenPair.toJSON(e) : undefined, + ); + } else { + obj.tokenPairList = []; + } + if (message.usedNoncesList) { + obj.usedNoncesList = message.usedNoncesList.map(e => + e ? Nonce.toJSON(e) : undefined, + ); + } else { + obj.usedNoncesList = []; + } + if (message.tokenMessengerList) { + obj.tokenMessengerList = message.tokenMessengerList.map(e => + e ? RemoteTokenMessenger.toJSON(e) : undefined, + ); + } else { + obj.tokenMessengerList = []; + } + return obj; + }, + fromPartial(object: Partial): GenesisState { + const message = createBaseGenesisState(); + message.owner = object.owner ?? ''; + message.attesterManager = object.attesterManager ?? ''; + message.pauser = object.pauser ?? ''; + message.tokenController = object.tokenController ?? ''; + message.attesterList = + object.attesterList?.map(e => Attester.fromPartial(e)) || []; + message.perMessageBurnLimitList = + object.perMessageBurnLimitList?.map(e => + PerMessageBurnLimit.fromPartial(e), + ) || []; + message.burningAndMintingPaused = + object.burningAndMintingPaused !== undefined && + object.burningAndMintingPaused !== null + ? BurningAndMintingPaused.fromPartial(object.burningAndMintingPaused) + : undefined; + message.sendingAndReceivingMessagesPaused = + object.sendingAndReceivingMessagesPaused !== undefined && + object.sendingAndReceivingMessagesPaused !== null + ? SendingAndReceivingMessagesPaused.fromPartial( + object.sendingAndReceivingMessagesPaused, + ) + : undefined; + message.maxMessageBodySize = + object.maxMessageBodySize !== undefined && + object.maxMessageBodySize !== null + ? MaxMessageBodySize.fromPartial(object.maxMessageBodySize) + : undefined; + message.nextAvailableNonce = + object.nextAvailableNonce !== undefined && + object.nextAvailableNonce !== null + ? Nonce.fromPartial(object.nextAvailableNonce) + : undefined; + message.signatureThreshold = + object.signatureThreshold !== undefined && + object.signatureThreshold !== null + ? SignatureThreshold.fromPartial(object.signatureThreshold) + : undefined; + message.tokenPairList = + object.tokenPairList?.map(e => TokenPair.fromPartial(e)) || []; + message.usedNoncesList = + object.usedNoncesList?.map(e => Nonce.fromPartial(e)) || []; + message.tokenMessengerList = + object.tokenMessengerList?.map(e => + RemoteTokenMessenger.fromPartial(e), + ) || []; + return message; + }, + fromProtoMsg(message: GenesisStateProtoMsg): GenesisState { + return GenesisState.decode(message.value); + }, + toProto(message: GenesisState): Uint8Array { + return GenesisState.encode(message).finish(); + }, + toProtoMsg(message: GenesisState): GenesisStateProtoMsg { + return { + typeUrl: '/circle.cctp.v1.GenesisState', + value: GenesisState.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/max_message_body_size.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/max_message_body_size.ts new file mode 100644 index 00000000000..195e9eb35f1 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/max_message_body_size.ts @@ -0,0 +1,93 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * Message format for BurningAndMintingPaused + * @param paused true if paused, false if not paused + */ +export interface MaxMessageBodySize { + amount: bigint; +} +export interface MaxMessageBodySizeProtoMsg { + typeUrl: '/circle.cctp.v1.MaxMessageBodySize'; + value: Uint8Array; +} +/** + * Message format for BurningAndMintingPaused + * @param paused true if paused, false if not paused + */ +export interface MaxMessageBodySizeSDKType { + amount: bigint; +} +function createBaseMaxMessageBodySize(): MaxMessageBodySize { + return { + amount: BigInt(0), + }; +} +export const MaxMessageBodySize = { + typeUrl: '/circle.cctp.v1.MaxMessageBodySize', + encode( + message: MaxMessageBodySize, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.amount !== BigInt(0)) { + writer.uint32(8).uint64(message.amount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MaxMessageBodySize { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMaxMessageBodySize(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.amount = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MaxMessageBodySize { + return { + amount: isSet(object.amount) + ? BigInt(object.amount.toString()) + : BigInt(0), + }; + }, + toJSON(message: MaxMessageBodySize): JsonSafe { + const obj: any = {}; + message.amount !== undefined && + (obj.amount = (message.amount || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): MaxMessageBodySize { + const message = createBaseMaxMessageBodySize(); + message.amount = + object.amount !== undefined && object.amount !== null + ? BigInt(object.amount.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: MaxMessageBodySizeProtoMsg): MaxMessageBodySize { + return MaxMessageBodySize.decode(message.value); + }, + toProto(message: MaxMessageBodySize): Uint8Array { + return MaxMessageBodySize.encode(message).finish(); + }, + toProtoMsg(message: MaxMessageBodySize): MaxMessageBodySizeProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MaxMessageBodySize', + value: MaxMessageBodySize.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/message.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/message.ts new file mode 100644 index 00000000000..0a75657886c --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/message.ts @@ -0,0 +1,227 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet, bytesFromBase64, base64FromBytes } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * Generic message header for all messages passing through CCTP + * The message body is dynamically-sized to support custom message body + * formats. Other fields must be fixed-size to avoid hash collisions. + * + * Padding: uintNN fields are left-padded, and bytesNN fields are right-padded. + * + * @param version the version of the message format + * @param source_domain domain of home chain + * @param destination_domain domain of destination chain + * @param nonce destination-specific nonce + * @param sender address of sender on source chain as bytes32 + * @param recipient address of recipient on destination chain as bytes32 + * @param destination_caller address of caller on destination chain as bytes32 + * @param message_body raw bytes of message body + */ +export interface Message { + version: number; + sourceDomain: number; + destinationDomain: number; + nonce: bigint; + sender: Uint8Array; + recipient: Uint8Array; + destinationCaller: Uint8Array; + messageBody: Uint8Array; +} +export interface MessageProtoMsg { + typeUrl: '/circle.cctp.v1.Message'; + value: Uint8Array; +} +/** + * Generic message header for all messages passing through CCTP + * The message body is dynamically-sized to support custom message body + * formats. Other fields must be fixed-size to avoid hash collisions. + * + * Padding: uintNN fields are left-padded, and bytesNN fields are right-padded. + * + * @param version the version of the message format + * @param source_domain domain of home chain + * @param destination_domain domain of destination chain + * @param nonce destination-specific nonce + * @param sender address of sender on source chain as bytes32 + * @param recipient address of recipient on destination chain as bytes32 + * @param destination_caller address of caller on destination chain as bytes32 + * @param message_body raw bytes of message body + */ +export interface MessageSDKType { + version: number; + source_domain: number; + destination_domain: number; + nonce: bigint; + sender: Uint8Array; + recipient: Uint8Array; + destination_caller: Uint8Array; + message_body: Uint8Array; +} +function createBaseMessage(): Message { + return { + version: 0, + sourceDomain: 0, + destinationDomain: 0, + nonce: BigInt(0), + sender: new Uint8Array(), + recipient: new Uint8Array(), + destinationCaller: new Uint8Array(), + messageBody: new Uint8Array(), + }; +} +export const Message = { + typeUrl: '/circle.cctp.v1.Message', + encode( + message: Message, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.version !== 0) { + writer.uint32(8).uint32(message.version); + } + if (message.sourceDomain !== 0) { + writer.uint32(16).uint32(message.sourceDomain); + } + if (message.destinationDomain !== 0) { + writer.uint32(24).uint32(message.destinationDomain); + } + if (message.nonce !== BigInt(0)) { + writer.uint32(32).uint64(message.nonce); + } + if (message.sender.length !== 0) { + writer.uint32(42).bytes(message.sender); + } + if (message.recipient.length !== 0) { + writer.uint32(50).bytes(message.recipient); + } + if (message.destinationCaller.length !== 0) { + writer.uint32(58).bytes(message.destinationCaller); + } + if (message.messageBody.length !== 0) { + writer.uint32(66).bytes(message.messageBody); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Message { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMessage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.uint32(); + break; + case 2: + message.sourceDomain = reader.uint32(); + break; + case 3: + message.destinationDomain = reader.uint32(); + break; + case 4: + message.nonce = reader.uint64(); + break; + case 5: + message.sender = reader.bytes(); + break; + case 6: + message.recipient = reader.bytes(); + break; + case 7: + message.destinationCaller = reader.bytes(); + break; + case 8: + message.messageBody = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): Message { + return { + version: isSet(object.version) ? Number(object.version) : 0, + sourceDomain: isSet(object.sourceDomain) + ? Number(object.sourceDomain) + : 0, + destinationDomain: isSet(object.destinationDomain) + ? Number(object.destinationDomain) + : 0, + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + sender: isSet(object.sender) + ? bytesFromBase64(object.sender) + : new Uint8Array(), + recipient: isSet(object.recipient) + ? bytesFromBase64(object.recipient) + : new Uint8Array(), + destinationCaller: isSet(object.destinationCaller) + ? bytesFromBase64(object.destinationCaller) + : new Uint8Array(), + messageBody: isSet(object.messageBody) + ? bytesFromBase64(object.messageBody) + : new Uint8Array(), + }; + }, + toJSON(message: Message): JsonSafe { + const obj: any = {}; + message.version !== undefined && + (obj.version = Math.round(message.version)); + message.sourceDomain !== undefined && + (obj.sourceDomain = Math.round(message.sourceDomain)); + message.destinationDomain !== undefined && + (obj.destinationDomain = Math.round(message.destinationDomain)); + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + message.sender !== undefined && + (obj.sender = base64FromBytes( + message.sender !== undefined ? message.sender : new Uint8Array(), + )); + message.recipient !== undefined && + (obj.recipient = base64FromBytes( + message.recipient !== undefined ? message.recipient : new Uint8Array(), + )); + message.destinationCaller !== undefined && + (obj.destinationCaller = base64FromBytes( + message.destinationCaller !== undefined + ? message.destinationCaller + : new Uint8Array(), + )); + message.messageBody !== undefined && + (obj.messageBody = base64FromBytes( + message.messageBody !== undefined + ? message.messageBody + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): Message { + const message = createBaseMessage(); + message.version = object.version ?? 0; + message.sourceDomain = object.sourceDomain ?? 0; + message.destinationDomain = object.destinationDomain ?? 0; + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + message.sender = object.sender ?? new Uint8Array(); + message.recipient = object.recipient ?? new Uint8Array(); + message.destinationCaller = object.destinationCaller ?? new Uint8Array(); + message.messageBody = object.messageBody ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: MessageProtoMsg): Message { + return Message.decode(message.value); + }, + toProto(message: Message): Uint8Array { + return Message.encode(message).finish(); + }, + toProtoMsg(message: Message): MessageProtoMsg { + return { + typeUrl: '/circle.cctp.v1.Message', + value: Message.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/nonce.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/nonce.ts new file mode 100644 index 00000000000..d267e355a00 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/nonce.ts @@ -0,0 +1,109 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * The Nonce type functions both to mark receipt of received messages and a + * counter for sending messages + * @param source_domain the domain id, used to mark used nonces for received + * messages + * @param nonce the nonce number + */ +export interface Nonce { + sourceDomain: number; + nonce: bigint; +} +export interface NonceProtoMsg { + typeUrl: '/circle.cctp.v1.Nonce'; + value: Uint8Array; +} +/** + * The Nonce type functions both to mark receipt of received messages and a + * counter for sending messages + * @param source_domain the domain id, used to mark used nonces for received + * messages + * @param nonce the nonce number + */ +export interface NonceSDKType { + source_domain: number; + nonce: bigint; +} +function createBaseNonce(): Nonce { + return { + sourceDomain: 0, + nonce: BigInt(0), + }; +} +export const Nonce = { + typeUrl: '/circle.cctp.v1.Nonce', + encode( + message: Nonce, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.sourceDomain !== 0) { + writer.uint32(8).uint32(message.sourceDomain); + } + if (message.nonce !== BigInt(0)) { + writer.uint32(16).uint64(message.nonce); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Nonce { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseNonce(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sourceDomain = reader.uint32(); + break; + case 2: + message.nonce = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): Nonce { + return { + sourceDomain: isSet(object.sourceDomain) + ? Number(object.sourceDomain) + : 0, + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + }; + }, + toJSON(message: Nonce): JsonSafe { + const obj: any = {}; + message.sourceDomain !== undefined && + (obj.sourceDomain = Math.round(message.sourceDomain)); + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): Nonce { + const message = createBaseNonce(); + message.sourceDomain = object.sourceDomain ?? 0; + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: NonceProtoMsg): Nonce { + return Nonce.decode(message.value); + }, + toProto(message: Nonce): Uint8Array { + return Nonce.encode(message).finish(); + }, + toProtoMsg(message: Nonce): NonceProtoMsg { + return { + typeUrl: '/circle.cctp.v1.Nonce', + value: Nonce.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/per_message_burn_limit.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/per_message_burn_limit.ts new file mode 100644 index 00000000000..5c2128d1545 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/per_message_burn_limit.ts @@ -0,0 +1,105 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * PerMessageBurnLimit is the maximum amount of a certain denom that can be + * burned in an single burn + * @param denom the denom + * @param amount the amount that can be burned (in microunits). An amount of + * 1000000 uusdc is equivalent to 1USDC + */ +export interface PerMessageBurnLimit { + denom: string; + amount: string; +} +export interface PerMessageBurnLimitProtoMsg { + typeUrl: '/circle.cctp.v1.PerMessageBurnLimit'; + value: Uint8Array; +} +/** + * PerMessageBurnLimit is the maximum amount of a certain denom that can be + * burned in an single burn + * @param denom the denom + * @param amount the amount that can be burned (in microunits). An amount of + * 1000000 uusdc is equivalent to 1USDC + */ +export interface PerMessageBurnLimitSDKType { + denom: string; + amount: string; +} +function createBasePerMessageBurnLimit(): PerMessageBurnLimit { + return { + denom: '', + amount: '', + }; +} +export const PerMessageBurnLimit = { + typeUrl: '/circle.cctp.v1.PerMessageBurnLimit', + encode( + message: PerMessageBurnLimit, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.denom !== '') { + writer.uint32(10).string(message.denom); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): PerMessageBurnLimit { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBasePerMessageBurnLimit(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.denom = reader.string(); + break; + case 2: + message.amount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): PerMessageBurnLimit { + return { + denom: isSet(object.denom) ? String(object.denom) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + }; + }, + toJSON(message: PerMessageBurnLimit): JsonSafe { + const obj: any = {}; + message.denom !== undefined && (obj.denom = message.denom); + message.amount !== undefined && (obj.amount = message.amount); + return obj; + }, + fromPartial(object: Partial): PerMessageBurnLimit { + const message = createBasePerMessageBurnLimit(); + message.denom = object.denom ?? ''; + message.amount = object.amount ?? ''; + return message; + }, + fromProtoMsg(message: PerMessageBurnLimitProtoMsg): PerMessageBurnLimit { + return PerMessageBurnLimit.decode(message.value); + }, + toProto(message: PerMessageBurnLimit): Uint8Array { + return PerMessageBurnLimit.encode(message).finish(); + }, + toProtoMsg(message: PerMessageBurnLimit): PerMessageBurnLimitProtoMsg { + return { + typeUrl: '/circle.cctp.v1.PerMessageBurnLimit', + value: PerMessageBurnLimit.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/query.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/query.ts new file mode 100644 index 00000000000..0583bb94edd --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/query.ts @@ -0,0 +1,3723 @@ +//@ts-nocheck +import { + PageRequest, + type PageRequestSDKType, + PageResponse, + type PageResponseSDKType, +} from '../../../cosmos/base/query/v1beta1/pagination.js'; +import { Attester, type AttesterSDKType } from './attester.js'; +import { + PerMessageBurnLimit, + type PerMessageBurnLimitSDKType, +} from './per_message_burn_limit.js'; +import { + BurningAndMintingPaused, + type BurningAndMintingPausedSDKType, +} from './burning_and_minting_paused.js'; +import { + SendingAndReceivingMessagesPaused, + type SendingAndReceivingMessagesPausedSDKType, +} from './sending_and_receiving_messages_paused.js'; +import { + MaxMessageBodySize, + type MaxMessageBodySizeSDKType, +} from './max_message_body_size.js'; +import { Nonce, type NonceSDKType } from './nonce.js'; +import { + SignatureThreshold, + type SignatureThresholdSDKType, +} from './signature_threshold.js'; +import { TokenPair, type TokenPairSDKType } from './token_pair.js'; +import { + RemoteTokenMessenger, + type RemoteTokenMessengerSDKType, +} from './remote_token_messenger.js'; +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { type JsonSafe } from '../../../json-safe.js'; +import { isSet } from '../../../helpers.js'; +/** QueryRolesRequest is the request type for the Query/Roles RPC method. */ +export interface QueryRolesRequest {} +export interface QueryRolesRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryRolesRequest'; + value: Uint8Array; +} +/** QueryRolesRequest is the request type for the Query/Roles RPC method. */ +export interface QueryRolesRequestSDKType {} +/** QueryRolesResponse is the response type for the Query/Roles RPC method. */ +export interface QueryRolesResponse { + owner: string; + attesterManager: string; + pauser: string; + tokenController: string; +} +export interface QueryRolesResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryRolesResponse'; + value: Uint8Array; +} +/** QueryRolesResponse is the response type for the Query/Roles RPC method. */ +export interface QueryRolesResponseSDKType { + owner: string; + attester_manager: string; + pauser: string; + token_controller: string; +} +/** QueryAttestersRequest is the request type for the Query/Attester RPC method. */ +export interface QueryGetAttesterRequest { + attester: string; +} +export interface QueryGetAttesterRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetAttesterRequest'; + value: Uint8Array; +} +/** QueryAttestersRequest is the request type for the Query/Attester RPC method. */ +export interface QueryGetAttesterRequestSDKType { + attester: string; +} +/** + * QueryAttestersResponse is the response type for the Query/Attester RPC + * method. + */ +export interface QueryGetAttesterResponse { + attester: Attester; +} +export interface QueryGetAttesterResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetAttesterResponse'; + value: Uint8Array; +} +/** + * QueryAttestersResponse is the response type for the Query/Attester RPC + * method. + */ +export interface QueryGetAttesterResponseSDKType { + attester: AttesterSDKType; +} +/** + * QueryAllAttestersRequest is the request type for the Query/Attesters RPC + * method. + */ +export interface QueryAllAttestersRequest { + pagination?: PageRequest; +} +export interface QueryAllAttestersRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryAllAttestersRequest'; + value: Uint8Array; +} +/** + * QueryAllAttestersRequest is the request type for the Query/Attesters RPC + * method. + */ +export interface QueryAllAttestersRequestSDKType { + pagination?: PageRequestSDKType; +} +/** + * QueryAllAttestersResponse is the response type for the Query/Attesters RPC + * method. + */ +export interface QueryAllAttestersResponse { + attesters: Attester[]; + pagination?: PageResponse; +} +export interface QueryAllAttestersResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryAllAttestersResponse'; + value: Uint8Array; +} +/** + * QueryAllAttestersResponse is the response type for the Query/Attesters RPC + * method. + */ +export interface QueryAllAttestersResponseSDKType { + attesters: AttesterSDKType[]; + pagination?: PageResponseSDKType; +} +/** + * QueryPerMessageBurnLimitRequest is the request type for the + * Query/PerMessageBurnLimit RPC method. + */ +export interface QueryGetPerMessageBurnLimitRequest { + denom: string; +} +export interface QueryGetPerMessageBurnLimitRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetPerMessageBurnLimitRequest'; + value: Uint8Array; +} +/** + * QueryPerMessageBurnLimitRequest is the request type for the + * Query/PerMessageBurnLimit RPC method. + */ +export interface QueryGetPerMessageBurnLimitRequestSDKType { + denom: string; +} +/** + * QueryPerMessageBurnLimitResponse is the response type for the + * Query/PerMessageBurnLimit RPC method. + */ +export interface QueryGetPerMessageBurnLimitResponse { + burnLimit: PerMessageBurnLimit; +} +export interface QueryGetPerMessageBurnLimitResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetPerMessageBurnLimitResponse'; + value: Uint8Array; +} +/** + * QueryPerMessageBurnLimitResponse is the response type for the + * Query/PerMessageBurnLimit RPC method. + */ +export interface QueryGetPerMessageBurnLimitResponseSDKType { + burn_limit: PerMessageBurnLimitSDKType; +} +/** + * QueryAllPerMessageBurnLimitsRequest is the response type for the + * Query/PerMessageBurnLimit RPC method. + */ +export interface QueryAllPerMessageBurnLimitsRequest { + pagination?: PageRequest; +} +export interface QueryAllPerMessageBurnLimitsRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryAllPerMessageBurnLimitsRequest'; + value: Uint8Array; +} +/** + * QueryAllPerMessageBurnLimitsRequest is the response type for the + * Query/PerMessageBurnLimit RPC method. + */ +export interface QueryAllPerMessageBurnLimitsRequestSDKType { + pagination?: PageRequestSDKType; +} +/** + * QueryAllPerMessageBurnLimitsRequest is the response type for the + * Query/PerMessageBurnLimit RPC method. + */ +export interface QueryAllPerMessageBurnLimitsResponse { + burnLimits: PerMessageBurnLimit[]; + pagination?: PageResponse; +} +export interface QueryAllPerMessageBurnLimitsResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryAllPerMessageBurnLimitsResponse'; + value: Uint8Array; +} +/** + * QueryAllPerMessageBurnLimitsRequest is the response type for the + * Query/PerMessageBurnLimit RPC method. + */ +export interface QueryAllPerMessageBurnLimitsResponseSDKType { + burn_limits: PerMessageBurnLimitSDKType[]; + pagination?: PageResponseSDKType; +} +/** + * QueryBurningAndMintingPausedRequest is the request type for the + * Query/BurningAndMintingPaused RPC method. + */ +export interface QueryGetBurningAndMintingPausedRequest {} +export interface QueryGetBurningAndMintingPausedRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetBurningAndMintingPausedRequest'; + value: Uint8Array; +} +/** + * QueryBurningAndMintingPausedRequest is the request type for the + * Query/BurningAndMintingPaused RPC method. + */ +export interface QueryGetBurningAndMintingPausedRequestSDKType {} +/** + * QueryBurningAndMintingPausedResponse is the response type for the + * Query/BurningAndMintingPaused RPC method. + */ +export interface QueryGetBurningAndMintingPausedResponse { + paused: BurningAndMintingPaused; +} +export interface QueryGetBurningAndMintingPausedResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetBurningAndMintingPausedResponse'; + value: Uint8Array; +} +/** + * QueryBurningAndMintingPausedResponse is the response type for the + * Query/BurningAndMintingPaused RPC method. + */ +export interface QueryGetBurningAndMintingPausedResponseSDKType { + paused: BurningAndMintingPausedSDKType; +} +/** + * QuerySendingAndReceivingPausedRequest is the request type for the + * Query/SendingAndReceivingPaused RPC method. + */ +export interface QueryGetSendingAndReceivingMessagesPausedRequest {} +export interface QueryGetSendingAndReceivingMessagesPausedRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetSendingAndReceivingMessagesPausedRequest'; + value: Uint8Array; +} +/** + * QuerySendingAndReceivingPausedRequest is the request type for the + * Query/SendingAndReceivingPaused RPC method. + */ +export interface QueryGetSendingAndReceivingMessagesPausedRequestSDKType {} +/** + * QuerySendingAndReceivingPausedResponse is the response type for the + * Query/SendingAndReceivingPaused RPC method. + */ +export interface QueryGetSendingAndReceivingMessagesPausedResponse { + paused: SendingAndReceivingMessagesPaused; +} +export interface QueryGetSendingAndReceivingMessagesPausedResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetSendingAndReceivingMessagesPausedResponse'; + value: Uint8Array; +} +/** + * QuerySendingAndReceivingPausedResponse is the response type for the + * Query/SendingAndReceivingPaused RPC method. + */ +export interface QueryGetSendingAndReceivingMessagesPausedResponseSDKType { + paused: SendingAndReceivingMessagesPausedSDKType; +} +/** + * QueryMaxMessageBodySizeRequest is the request type for the + * Query/MaxMessageBodySize RPC method. + */ +export interface QueryGetMaxMessageBodySizeRequest {} +export interface QueryGetMaxMessageBodySizeRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetMaxMessageBodySizeRequest'; + value: Uint8Array; +} +/** + * QueryMaxMessageBodySizeRequest is the request type for the + * Query/MaxMessageBodySize RPC method. + */ +export interface QueryGetMaxMessageBodySizeRequestSDKType {} +/** + * QueryMaxMessageBodySizeResponse is the response type for the + * Query/MaxMessageBodySize RPC method. + */ +export interface QueryGetMaxMessageBodySizeResponse { + amount: MaxMessageBodySize; +} +export interface QueryGetMaxMessageBodySizeResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetMaxMessageBodySizeResponse'; + value: Uint8Array; +} +/** + * QueryMaxMessageBodySizeResponse is the response type for the + * Query/MaxMessageBodySize RPC method. + */ +export interface QueryGetMaxMessageBodySizeResponseSDKType { + amount: MaxMessageBodySizeSDKType; +} +/** + * QueryGetNextAvailableNonceRequest is the request type for the + * Query/NextAvailableNonce RPC method. + */ +export interface QueryGetNextAvailableNonceRequest {} +export interface QueryGetNextAvailableNonceRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetNextAvailableNonceRequest'; + value: Uint8Array; +} +/** + * QueryGetNextAvailableNonceRequest is the request type for the + * Query/NextAvailableNonce RPC method. + */ +export interface QueryGetNextAvailableNonceRequestSDKType {} +/** + * Query QueryGetNextAvailableNonceResponse is the response type for the + * Query/NextAvailableNonce RPC method. + */ +export interface QueryGetNextAvailableNonceResponse { + nonce: Nonce; +} +export interface QueryGetNextAvailableNonceResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetNextAvailableNonceResponse'; + value: Uint8Array; +} +/** + * Query QueryGetNextAvailableNonceResponse is the response type for the + * Query/NextAvailableNonce RPC method. + */ +export interface QueryGetNextAvailableNonceResponseSDKType { + nonce: NonceSDKType; +} +/** + * QuerySignatureThresholdRequest is the request type for the + * Query/SignatureThreshold RPC method. + */ +export interface QueryGetSignatureThresholdRequest {} +export interface QueryGetSignatureThresholdRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetSignatureThresholdRequest'; + value: Uint8Array; +} +/** + * QuerySignatureThresholdRequest is the request type for the + * Query/SignatureThreshold RPC method. + */ +export interface QueryGetSignatureThresholdRequestSDKType {} +/** + * QuerySignatureThresholdResponse is the response type for the + * Query/SignatureThreshold RPC method. + */ +export interface QueryGetSignatureThresholdResponse { + amount: SignatureThreshold; +} +export interface QueryGetSignatureThresholdResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetSignatureThresholdResponse'; + value: Uint8Array; +} +/** + * QuerySignatureThresholdResponse is the response type for the + * Query/SignatureThreshold RPC method. + */ +export interface QueryGetSignatureThresholdResponseSDKType { + amount: SignatureThresholdSDKType; +} +/** + * QueryGetTokenPairRequest is the request type for the Query/TokenPair RPC + * method. + */ +export interface QueryGetTokenPairRequest { + remoteDomain: number; + remoteToken: string; +} +export interface QueryGetTokenPairRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetTokenPairRequest'; + value: Uint8Array; +} +/** + * QueryGetTokenPairRequest is the request type for the Query/TokenPair RPC + * method. + */ +export interface QueryGetTokenPairRequestSDKType { + remote_domain: number; + remote_token: string; +} +/** + * QueryGetTokenPairResponse is the response type for the Query/TokenPair RPC + * method. + */ +export interface QueryGetTokenPairResponse { + pair: TokenPair; +} +export interface QueryGetTokenPairResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetTokenPairResponse'; + value: Uint8Array; +} +/** + * QueryGetTokenPairResponse is the response type for the Query/TokenPair RPC + * method. + */ +export interface QueryGetTokenPairResponseSDKType { + pair: TokenPairSDKType; +} +/** + * QueryAllTokenPairsRequest is the request type for the Query/TokenPairs RPC + * method. + */ +export interface QueryAllTokenPairsRequest { + pagination?: PageRequest; +} +export interface QueryAllTokenPairsRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryAllTokenPairsRequest'; + value: Uint8Array; +} +/** + * QueryAllTokenPairsRequest is the request type for the Query/TokenPairs RPC + * method. + */ +export interface QueryAllTokenPairsRequestSDKType { + pagination?: PageRequestSDKType; +} +/** + * QueryAllTokenPairsResponse is the response type for the Query/TokenPairs RPC + * method. + */ +export interface QueryAllTokenPairsResponse { + tokenPairs: TokenPair[]; + pagination?: PageResponse; +} +export interface QueryAllTokenPairsResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryAllTokenPairsResponse'; + value: Uint8Array; +} +/** + * QueryAllTokenPairsResponse is the response type for the Query/TokenPairs RPC + * method. + */ +export interface QueryAllTokenPairsResponseSDKType { + token_pairs: TokenPairSDKType[]; + pagination?: PageResponseSDKType; +} +/** + * QueryGetUsedNonceRequest is the request type for the Query/UsedNonce RPC + * method. + */ +export interface QueryGetUsedNonceRequest { + sourceDomain: number; + nonce: bigint; +} +export interface QueryGetUsedNonceRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetUsedNonceRequest'; + value: Uint8Array; +} +/** + * QueryGetUsedNonceRequest is the request type for the Query/UsedNonce RPC + * method. + */ +export interface QueryGetUsedNonceRequestSDKType { + source_domain: number; + nonce: bigint; +} +/** + * QueryGetUsedNonceResponse is the response type for the Query/UsedNonce RPC + * method. + */ +export interface QueryGetUsedNonceResponse { + nonce: Nonce; +} +export interface QueryGetUsedNonceResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryGetUsedNonceResponse'; + value: Uint8Array; +} +/** + * QueryGetUsedNonceResponse is the response type for the Query/UsedNonce RPC + * method. + */ +export interface QueryGetUsedNonceResponseSDKType { + nonce: NonceSDKType; +} +/** + * QueryAllUsedNonceRequest is the request type for the Query/UsedNonces RPC + * method. + */ +export interface QueryAllUsedNoncesRequest { + pagination?: PageRequest; +} +export interface QueryAllUsedNoncesRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryAllUsedNoncesRequest'; + value: Uint8Array; +} +/** + * QueryAllUsedNonceRequest is the request type for the Query/UsedNonces RPC + * method. + */ +export interface QueryAllUsedNoncesRequestSDKType { + pagination?: PageRequestSDKType; +} +/** + * QueryAllUsedNonceResponse is the response type for the Query/UsedNonces RPC + * method. + */ +export interface QueryAllUsedNoncesResponse { + usedNonces: Nonce[]; + pagination?: PageResponse; +} +export interface QueryAllUsedNoncesResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryAllUsedNoncesResponse'; + value: Uint8Array; +} +/** + * QueryAllUsedNonceResponse is the response type for the Query/UsedNonces RPC + * method. + */ +export interface QueryAllUsedNoncesResponseSDKType { + used_nonces: NonceSDKType[]; + pagination?: PageResponseSDKType; +} +/** + * QueryRemoteTokenMessengerRequest is the request type for the + * Query/RemoteTokenMessenger RPC method. + */ +export interface QueryRemoteTokenMessengerRequest { + domainId: number; +} +export interface QueryRemoteTokenMessengerRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengerRequest'; + value: Uint8Array; +} +/** + * QueryRemoteTokenMessengerRequest is the request type for the + * Query/RemoteTokenMessenger RPC method. + */ +export interface QueryRemoteTokenMessengerRequestSDKType { + domain_id: number; +} +/** + * QueryRemoteTokenMessengerResponse is the response type for the + * Query/RemoteTokenMessenger RPC method. + */ +export interface QueryRemoteTokenMessengerResponse { + remoteTokenMessenger: RemoteTokenMessenger; +} +export interface QueryRemoteTokenMessengerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengerResponse'; + value: Uint8Array; +} +/** + * QueryRemoteTokenMessengerResponse is the response type for the + * Query/RemoteTokenMessenger RPC method. + */ +export interface QueryRemoteTokenMessengerResponseSDKType { + remote_token_messenger: RemoteTokenMessengerSDKType; +} +/** + * QueryRemoteTokenMessengersRequest is the request type for the + * Query/RemoteTokenMessengers RPC method. + */ +export interface QueryRemoteTokenMessengersRequest { + pagination?: PageRequest; +} +export interface QueryRemoteTokenMessengersRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengersRequest'; + value: Uint8Array; +} +/** + * QueryRemoteTokenMessengersRequest is the request type for the + * Query/RemoteTokenMessengers RPC method. + */ +export interface QueryRemoteTokenMessengersRequestSDKType { + pagination?: PageRequestSDKType; +} +/** + * QueryRemoteTokenMessengersResponse is the response type for the + * Query/RemoteTokenMessengers RPC method. + */ +export interface QueryRemoteTokenMessengersResponse { + remoteTokenMessengers: RemoteTokenMessenger[]; + pagination?: PageResponse; +} +export interface QueryRemoteTokenMessengersResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengersResponse'; + value: Uint8Array; +} +/** + * QueryRemoteTokenMessengersResponse is the response type for the + * Query/RemoteTokenMessengers RPC method. + */ +export interface QueryRemoteTokenMessengersResponseSDKType { + remote_token_messengers: RemoteTokenMessengerSDKType[]; + pagination?: PageResponseSDKType; +} +/** + * QueryBurnMessageVersionRequest is the request type for the + * Query/BurnMessageVersion RPC method. + */ +export interface QueryBurnMessageVersionRequest {} +export interface QueryBurnMessageVersionRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryBurnMessageVersionRequest'; + value: Uint8Array; +} +/** + * QueryBurnMessageVersionRequest is the request type for the + * Query/BurnMessageVersion RPC method. + */ +export interface QueryBurnMessageVersionRequestSDKType {} +/** + * QueryBurnMessageVersionResponse is the response type for the + * Query/BurnMessageVersion RPC method. + */ +export interface QueryBurnMessageVersionResponse { + /** version is the burn message version of the local domain. */ + version: number; +} +export interface QueryBurnMessageVersionResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryBurnMessageVersionResponse'; + value: Uint8Array; +} +/** + * QueryBurnMessageVersionResponse is the response type for the + * Query/BurnMessageVersion RPC method. + */ +export interface QueryBurnMessageVersionResponseSDKType { + version: number; +} +/** + * QueryLocalMessageVersionRequest is the request type for the + * Query/LocalMessageVersion RPC method. + */ +export interface QueryLocalMessageVersionRequest {} +export interface QueryLocalMessageVersionRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryLocalMessageVersionRequest'; + value: Uint8Array; +} +/** + * QueryLocalMessageVersionRequest is the request type for the + * Query/LocalMessageVersion RPC method. + */ +export interface QueryLocalMessageVersionRequestSDKType {} +/** + * QueryLocalMessageVersionResponse is the response type for the + * Query/LocalMessageVersion RPC method. + */ +export interface QueryLocalMessageVersionResponse { + /** version is the message version of the local domain. */ + version: number; +} +export interface QueryLocalMessageVersionResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryLocalMessageVersionResponse'; + value: Uint8Array; +} +/** + * QueryLocalMessageVersionResponse is the response type for the + * Query/LocalMessageVersion RPC method. + */ +export interface QueryLocalMessageVersionResponseSDKType { + version: number; +} +/** + * QueryLocalDomainRequest is the request type for the Query/LocalDomain RPC + * method. + */ +export interface QueryLocalDomainRequest {} +export interface QueryLocalDomainRequestProtoMsg { + typeUrl: '/circle.cctp.v1.QueryLocalDomainRequest'; + value: Uint8Array; +} +/** + * QueryLocalDomainRequest is the request type for the Query/LocalDomain RPC + * method. + */ +export interface QueryLocalDomainRequestSDKType {} +/** + * QueryLocalDomainResponse is the response type for the Query/LocalDomain RPC + * method. + */ +export interface QueryLocalDomainResponse { + /** domain_id is the id of the local domain. */ + domainId: number; +} +export interface QueryLocalDomainResponseProtoMsg { + typeUrl: '/circle.cctp.v1.QueryLocalDomainResponse'; + value: Uint8Array; +} +/** + * QueryLocalDomainResponse is the response type for the Query/LocalDomain RPC + * method. + */ +export interface QueryLocalDomainResponseSDKType { + domain_id: number; +} +function createBaseQueryRolesRequest(): QueryRolesRequest { + return {}; +} +export const QueryRolesRequest = { + typeUrl: '/circle.cctp.v1.QueryRolesRequest', + encode( + _: QueryRolesRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): QueryRolesRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRolesRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryRolesRequest { + return {}; + }, + toJSON(_: QueryRolesRequest): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QueryRolesRequest { + const message = createBaseQueryRolesRequest(); + return message; + }, + fromProtoMsg(message: QueryRolesRequestProtoMsg): QueryRolesRequest { + return QueryRolesRequest.decode(message.value); + }, + toProto(message: QueryRolesRequest): Uint8Array { + return QueryRolesRequest.encode(message).finish(); + }, + toProtoMsg(message: QueryRolesRequest): QueryRolesRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryRolesRequest', + value: QueryRolesRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryRolesResponse(): QueryRolesResponse { + return { + owner: '', + attesterManager: '', + pauser: '', + tokenController: '', + }; +} +export const QueryRolesResponse = { + typeUrl: '/circle.cctp.v1.QueryRolesResponse', + encode( + message: QueryRolesResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.owner !== '') { + writer.uint32(10).string(message.owner); + } + if (message.attesterManager !== '') { + writer.uint32(18).string(message.attesterManager); + } + if (message.pauser !== '') { + writer.uint32(26).string(message.pauser); + } + if (message.tokenController !== '') { + writer.uint32(34).string(message.tokenController); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRolesResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRolesResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.owner = reader.string(); + break; + case 2: + message.attesterManager = reader.string(); + break; + case 3: + message.pauser = reader.string(); + break; + case 4: + message.tokenController = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRolesResponse { + return { + owner: isSet(object.owner) ? String(object.owner) : '', + attesterManager: isSet(object.attesterManager) + ? String(object.attesterManager) + : '', + pauser: isSet(object.pauser) ? String(object.pauser) : '', + tokenController: isSet(object.tokenController) + ? String(object.tokenController) + : '', + }; + }, + toJSON(message: QueryRolesResponse): JsonSafe { + const obj: any = {}; + message.owner !== undefined && (obj.owner = message.owner); + message.attesterManager !== undefined && + (obj.attesterManager = message.attesterManager); + message.pauser !== undefined && (obj.pauser = message.pauser); + message.tokenController !== undefined && + (obj.tokenController = message.tokenController); + return obj; + }, + fromPartial(object: Partial): QueryRolesResponse { + const message = createBaseQueryRolesResponse(); + message.owner = object.owner ?? ''; + message.attesterManager = object.attesterManager ?? ''; + message.pauser = object.pauser ?? ''; + message.tokenController = object.tokenController ?? ''; + return message; + }, + fromProtoMsg(message: QueryRolesResponseProtoMsg): QueryRolesResponse { + return QueryRolesResponse.decode(message.value); + }, + toProto(message: QueryRolesResponse): Uint8Array { + return QueryRolesResponse.encode(message).finish(); + }, + toProtoMsg(message: QueryRolesResponse): QueryRolesResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryRolesResponse', + value: QueryRolesResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetAttesterRequest(): QueryGetAttesterRequest { + return { + attester: '', + }; +} +export const QueryGetAttesterRequest = { + typeUrl: '/circle.cctp.v1.QueryGetAttesterRequest', + encode( + message: QueryGetAttesterRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.attester !== '') { + writer.uint32(10).string(message.attester); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetAttesterRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetAttesterRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attester = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetAttesterRequest { + return { + attester: isSet(object.attester) ? String(object.attester) : '', + }; + }, + toJSON(message: QueryGetAttesterRequest): JsonSafe { + const obj: any = {}; + message.attester !== undefined && (obj.attester = message.attester); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetAttesterRequest { + const message = createBaseQueryGetAttesterRequest(); + message.attester = object.attester ?? ''; + return message; + }, + fromProtoMsg( + message: QueryGetAttesterRequestProtoMsg, + ): QueryGetAttesterRequest { + return QueryGetAttesterRequest.decode(message.value); + }, + toProto(message: QueryGetAttesterRequest): Uint8Array { + return QueryGetAttesterRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetAttesterRequest, + ): QueryGetAttesterRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetAttesterRequest', + value: QueryGetAttesterRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetAttesterResponse(): QueryGetAttesterResponse { + return { + attester: Attester.fromPartial({}), + }; +} +export const QueryGetAttesterResponse = { + typeUrl: '/circle.cctp.v1.QueryGetAttesterResponse', + encode( + message: QueryGetAttesterResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.attester !== undefined) { + Attester.encode(message.attester, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetAttesterResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetAttesterResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attester = Attester.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetAttesterResponse { + return { + attester: isSet(object.attester) + ? Attester.fromJSON(object.attester) + : undefined, + }; + }, + toJSON( + message: QueryGetAttesterResponse, + ): JsonSafe { + const obj: any = {}; + message.attester !== undefined && + (obj.attester = message.attester + ? Attester.toJSON(message.attester) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetAttesterResponse { + const message = createBaseQueryGetAttesterResponse(); + message.attester = + object.attester !== undefined && object.attester !== null + ? Attester.fromPartial(object.attester) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetAttesterResponseProtoMsg, + ): QueryGetAttesterResponse { + return QueryGetAttesterResponse.decode(message.value); + }, + toProto(message: QueryGetAttesterResponse): Uint8Array { + return QueryGetAttesterResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetAttesterResponse, + ): QueryGetAttesterResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetAttesterResponse', + value: QueryGetAttesterResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllAttestersRequest(): QueryAllAttestersRequest { + return { + pagination: undefined, + }; +} +export const QueryAllAttestersRequest = { + typeUrl: '/circle.cctp.v1.QueryAllAttestersRequest', + encode( + message: QueryAllAttestersRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllAttestersRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllAttestersRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllAttestersRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllAttestersRequest, + ): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllAttestersRequest { + const message = createBaseQueryAllAttestersRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllAttestersRequestProtoMsg, + ): QueryAllAttestersRequest { + return QueryAllAttestersRequest.decode(message.value); + }, + toProto(message: QueryAllAttestersRequest): Uint8Array { + return QueryAllAttestersRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllAttestersRequest, + ): QueryAllAttestersRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryAllAttestersRequest', + value: QueryAllAttestersRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllAttestersResponse(): QueryAllAttestersResponse { + return { + attesters: [], + pagination: undefined, + }; +} +export const QueryAllAttestersResponse = { + typeUrl: '/circle.cctp.v1.QueryAllAttestersResponse', + encode( + message: QueryAllAttestersResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.attesters) { + Attester.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllAttestersResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllAttestersResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attesters.push(Attester.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllAttestersResponse { + return { + attesters: Array.isArray(object?.attesters) + ? object.attesters.map((e: any) => Attester.fromJSON(e)) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllAttestersResponse, + ): JsonSafe { + const obj: any = {}; + if (message.attesters) { + obj.attesters = message.attesters.map(e => + e ? Attester.toJSON(e) : undefined, + ); + } else { + obj.attesters = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllAttestersResponse { + const message = createBaseQueryAllAttestersResponse(); + message.attesters = + object.attesters?.map(e => Attester.fromPartial(e)) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllAttestersResponseProtoMsg, + ): QueryAllAttestersResponse { + return QueryAllAttestersResponse.decode(message.value); + }, + toProto(message: QueryAllAttestersResponse): Uint8Array { + return QueryAllAttestersResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllAttestersResponse, + ): QueryAllAttestersResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryAllAttestersResponse', + value: QueryAllAttestersResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetPerMessageBurnLimitRequest(): QueryGetPerMessageBurnLimitRequest { + return { + denom: '', + }; +} +export const QueryGetPerMessageBurnLimitRequest = { + typeUrl: '/circle.cctp.v1.QueryGetPerMessageBurnLimitRequest', + encode( + message: QueryGetPerMessageBurnLimitRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.denom !== '') { + writer.uint32(10).string(message.denom); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetPerMessageBurnLimitRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetPerMessageBurnLimitRequest(); + 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: any): QueryGetPerMessageBurnLimitRequest { + return { + denom: isSet(object.denom) ? String(object.denom) : '', + }; + }, + toJSON( + message: QueryGetPerMessageBurnLimitRequest, + ): JsonSafe { + const obj: any = {}; + message.denom !== undefined && (obj.denom = message.denom); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetPerMessageBurnLimitRequest { + const message = createBaseQueryGetPerMessageBurnLimitRequest(); + message.denom = object.denom ?? ''; + return message; + }, + fromProtoMsg( + message: QueryGetPerMessageBurnLimitRequestProtoMsg, + ): QueryGetPerMessageBurnLimitRequest { + return QueryGetPerMessageBurnLimitRequest.decode(message.value); + }, + toProto(message: QueryGetPerMessageBurnLimitRequest): Uint8Array { + return QueryGetPerMessageBurnLimitRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetPerMessageBurnLimitRequest, + ): QueryGetPerMessageBurnLimitRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetPerMessageBurnLimitRequest', + value: QueryGetPerMessageBurnLimitRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetPerMessageBurnLimitResponse(): QueryGetPerMessageBurnLimitResponse { + return { + burnLimit: PerMessageBurnLimit.fromPartial({}), + }; +} +export const QueryGetPerMessageBurnLimitResponse = { + typeUrl: '/circle.cctp.v1.QueryGetPerMessageBurnLimitResponse', + encode( + message: QueryGetPerMessageBurnLimitResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.burnLimit !== undefined) { + PerMessageBurnLimit.encode( + message.burnLimit, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetPerMessageBurnLimitResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetPerMessageBurnLimitResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.burnLimit = PerMessageBurnLimit.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetPerMessageBurnLimitResponse { + return { + burnLimit: isSet(object.burnLimit) + ? PerMessageBurnLimit.fromJSON(object.burnLimit) + : undefined, + }; + }, + toJSON( + message: QueryGetPerMessageBurnLimitResponse, + ): JsonSafe { + const obj: any = {}; + message.burnLimit !== undefined && + (obj.burnLimit = message.burnLimit + ? PerMessageBurnLimit.toJSON(message.burnLimit) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetPerMessageBurnLimitResponse { + const message = createBaseQueryGetPerMessageBurnLimitResponse(); + message.burnLimit = + object.burnLimit !== undefined && object.burnLimit !== null + ? PerMessageBurnLimit.fromPartial(object.burnLimit) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetPerMessageBurnLimitResponseProtoMsg, + ): QueryGetPerMessageBurnLimitResponse { + return QueryGetPerMessageBurnLimitResponse.decode(message.value); + }, + toProto(message: QueryGetPerMessageBurnLimitResponse): Uint8Array { + return QueryGetPerMessageBurnLimitResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetPerMessageBurnLimitResponse, + ): QueryGetPerMessageBurnLimitResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetPerMessageBurnLimitResponse', + value: QueryGetPerMessageBurnLimitResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllPerMessageBurnLimitsRequest(): QueryAllPerMessageBurnLimitsRequest { + return { + pagination: undefined, + }; +} +export const QueryAllPerMessageBurnLimitsRequest = { + typeUrl: '/circle.cctp.v1.QueryAllPerMessageBurnLimitsRequest', + encode( + message: QueryAllPerMessageBurnLimitsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllPerMessageBurnLimitsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllPerMessageBurnLimitsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllPerMessageBurnLimitsRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllPerMessageBurnLimitsRequest, + ): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllPerMessageBurnLimitsRequest { + const message = createBaseQueryAllPerMessageBurnLimitsRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllPerMessageBurnLimitsRequestProtoMsg, + ): QueryAllPerMessageBurnLimitsRequest { + return QueryAllPerMessageBurnLimitsRequest.decode(message.value); + }, + toProto(message: QueryAllPerMessageBurnLimitsRequest): Uint8Array { + return QueryAllPerMessageBurnLimitsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllPerMessageBurnLimitsRequest, + ): QueryAllPerMessageBurnLimitsRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryAllPerMessageBurnLimitsRequest', + value: QueryAllPerMessageBurnLimitsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllPerMessageBurnLimitsResponse(): QueryAllPerMessageBurnLimitsResponse { + return { + burnLimits: [], + pagination: undefined, + }; +} +export const QueryAllPerMessageBurnLimitsResponse = { + typeUrl: '/circle.cctp.v1.QueryAllPerMessageBurnLimitsResponse', + encode( + message: QueryAllPerMessageBurnLimitsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.burnLimits) { + PerMessageBurnLimit.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllPerMessageBurnLimitsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllPerMessageBurnLimitsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.burnLimits.push( + PerMessageBurnLimit.decode(reader, reader.uint32()), + ); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllPerMessageBurnLimitsResponse { + return { + burnLimits: Array.isArray(object?.burnLimits) + ? object.burnLimits.map((e: any) => PerMessageBurnLimit.fromJSON(e)) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllPerMessageBurnLimitsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.burnLimits) { + obj.burnLimits = message.burnLimits.map(e => + e ? PerMessageBurnLimit.toJSON(e) : undefined, + ); + } else { + obj.burnLimits = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllPerMessageBurnLimitsResponse { + const message = createBaseQueryAllPerMessageBurnLimitsResponse(); + message.burnLimits = + object.burnLimits?.map(e => PerMessageBurnLimit.fromPartial(e)) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllPerMessageBurnLimitsResponseProtoMsg, + ): QueryAllPerMessageBurnLimitsResponse { + return QueryAllPerMessageBurnLimitsResponse.decode(message.value); + }, + toProto(message: QueryAllPerMessageBurnLimitsResponse): Uint8Array { + return QueryAllPerMessageBurnLimitsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllPerMessageBurnLimitsResponse, + ): QueryAllPerMessageBurnLimitsResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryAllPerMessageBurnLimitsResponse', + value: QueryAllPerMessageBurnLimitsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetBurningAndMintingPausedRequest(): QueryGetBurningAndMintingPausedRequest { + return {}; +} +export const QueryGetBurningAndMintingPausedRequest = { + typeUrl: '/circle.cctp.v1.QueryGetBurningAndMintingPausedRequest', + encode( + _: QueryGetBurningAndMintingPausedRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetBurningAndMintingPausedRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetBurningAndMintingPausedRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryGetBurningAndMintingPausedRequest { + return {}; + }, + toJSON( + _: QueryGetBurningAndMintingPausedRequest, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): QueryGetBurningAndMintingPausedRequest { + const message = createBaseQueryGetBurningAndMintingPausedRequest(); + return message; + }, + fromProtoMsg( + message: QueryGetBurningAndMintingPausedRequestProtoMsg, + ): QueryGetBurningAndMintingPausedRequest { + return QueryGetBurningAndMintingPausedRequest.decode(message.value); + }, + toProto(message: QueryGetBurningAndMintingPausedRequest): Uint8Array { + return QueryGetBurningAndMintingPausedRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetBurningAndMintingPausedRequest, + ): QueryGetBurningAndMintingPausedRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetBurningAndMintingPausedRequest', + value: QueryGetBurningAndMintingPausedRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetBurningAndMintingPausedResponse(): QueryGetBurningAndMintingPausedResponse { + return { + paused: BurningAndMintingPaused.fromPartial({}), + }; +} +export const QueryGetBurningAndMintingPausedResponse = { + typeUrl: '/circle.cctp.v1.QueryGetBurningAndMintingPausedResponse', + encode( + message: QueryGetBurningAndMintingPausedResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.paused !== undefined) { + BurningAndMintingPaused.encode( + message.paused, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetBurningAndMintingPausedResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetBurningAndMintingPausedResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.paused = BurningAndMintingPaused.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetBurningAndMintingPausedResponse { + return { + paused: isSet(object.paused) + ? BurningAndMintingPaused.fromJSON(object.paused) + : undefined, + }; + }, + toJSON( + message: QueryGetBurningAndMintingPausedResponse, + ): JsonSafe { + const obj: any = {}; + message.paused !== undefined && + (obj.paused = message.paused + ? BurningAndMintingPaused.toJSON(message.paused) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetBurningAndMintingPausedResponse { + const message = createBaseQueryGetBurningAndMintingPausedResponse(); + message.paused = + object.paused !== undefined && object.paused !== null + ? BurningAndMintingPaused.fromPartial(object.paused) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetBurningAndMintingPausedResponseProtoMsg, + ): QueryGetBurningAndMintingPausedResponse { + return QueryGetBurningAndMintingPausedResponse.decode(message.value); + }, + toProto(message: QueryGetBurningAndMintingPausedResponse): Uint8Array { + return QueryGetBurningAndMintingPausedResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetBurningAndMintingPausedResponse, + ): QueryGetBurningAndMintingPausedResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetBurningAndMintingPausedResponse', + value: QueryGetBurningAndMintingPausedResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetSendingAndReceivingMessagesPausedRequest(): QueryGetSendingAndReceivingMessagesPausedRequest { + return {}; +} +export const QueryGetSendingAndReceivingMessagesPausedRequest = { + typeUrl: '/circle.cctp.v1.QueryGetSendingAndReceivingMessagesPausedRequest', + encode( + _: QueryGetSendingAndReceivingMessagesPausedRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetSendingAndReceivingMessagesPausedRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = + createBaseQueryGetSendingAndReceivingMessagesPausedRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryGetSendingAndReceivingMessagesPausedRequest { + return {}; + }, + toJSON( + _: QueryGetSendingAndReceivingMessagesPausedRequest, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): QueryGetSendingAndReceivingMessagesPausedRequest { + const message = + createBaseQueryGetSendingAndReceivingMessagesPausedRequest(); + return message; + }, + fromProtoMsg( + message: QueryGetSendingAndReceivingMessagesPausedRequestProtoMsg, + ): QueryGetSendingAndReceivingMessagesPausedRequest { + return QueryGetSendingAndReceivingMessagesPausedRequest.decode( + message.value, + ); + }, + toProto( + message: QueryGetSendingAndReceivingMessagesPausedRequest, + ): Uint8Array { + return QueryGetSendingAndReceivingMessagesPausedRequest.encode( + message, + ).finish(); + }, + toProtoMsg( + message: QueryGetSendingAndReceivingMessagesPausedRequest, + ): QueryGetSendingAndReceivingMessagesPausedRequestProtoMsg { + return { + typeUrl: + '/circle.cctp.v1.QueryGetSendingAndReceivingMessagesPausedRequest', + value: + QueryGetSendingAndReceivingMessagesPausedRequest.encode( + message, + ).finish(), + }; + }, +}; +function createBaseQueryGetSendingAndReceivingMessagesPausedResponse(): QueryGetSendingAndReceivingMessagesPausedResponse { + return { + paused: SendingAndReceivingMessagesPaused.fromPartial({}), + }; +} +export const QueryGetSendingAndReceivingMessagesPausedResponse = { + typeUrl: '/circle.cctp.v1.QueryGetSendingAndReceivingMessagesPausedResponse', + encode( + message: QueryGetSendingAndReceivingMessagesPausedResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.paused !== undefined) { + SendingAndReceivingMessagesPaused.encode( + message.paused, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetSendingAndReceivingMessagesPausedResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = + createBaseQueryGetSendingAndReceivingMessagesPausedResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.paused = SendingAndReceivingMessagesPaused.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetSendingAndReceivingMessagesPausedResponse { + return { + paused: isSet(object.paused) + ? SendingAndReceivingMessagesPaused.fromJSON(object.paused) + : undefined, + }; + }, + toJSON( + message: QueryGetSendingAndReceivingMessagesPausedResponse, + ): JsonSafe { + const obj: any = {}; + message.paused !== undefined && + (obj.paused = message.paused + ? SendingAndReceivingMessagesPaused.toJSON(message.paused) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetSendingAndReceivingMessagesPausedResponse { + const message = + createBaseQueryGetSendingAndReceivingMessagesPausedResponse(); + message.paused = + object.paused !== undefined && object.paused !== null + ? SendingAndReceivingMessagesPaused.fromPartial(object.paused) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetSendingAndReceivingMessagesPausedResponseProtoMsg, + ): QueryGetSendingAndReceivingMessagesPausedResponse { + return QueryGetSendingAndReceivingMessagesPausedResponse.decode( + message.value, + ); + }, + toProto( + message: QueryGetSendingAndReceivingMessagesPausedResponse, + ): Uint8Array { + return QueryGetSendingAndReceivingMessagesPausedResponse.encode( + message, + ).finish(); + }, + toProtoMsg( + message: QueryGetSendingAndReceivingMessagesPausedResponse, + ): QueryGetSendingAndReceivingMessagesPausedResponseProtoMsg { + return { + typeUrl: + '/circle.cctp.v1.QueryGetSendingAndReceivingMessagesPausedResponse', + value: + QueryGetSendingAndReceivingMessagesPausedResponse.encode( + message, + ).finish(), + }; + }, +}; +function createBaseQueryGetMaxMessageBodySizeRequest(): QueryGetMaxMessageBodySizeRequest { + return {}; +} +export const QueryGetMaxMessageBodySizeRequest = { + typeUrl: '/circle.cctp.v1.QueryGetMaxMessageBodySizeRequest', + encode( + _: QueryGetMaxMessageBodySizeRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetMaxMessageBodySizeRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetMaxMessageBodySizeRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryGetMaxMessageBodySizeRequest { + return {}; + }, + toJSON( + _: QueryGetMaxMessageBodySizeRequest, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): QueryGetMaxMessageBodySizeRequest { + const message = createBaseQueryGetMaxMessageBodySizeRequest(); + return message; + }, + fromProtoMsg( + message: QueryGetMaxMessageBodySizeRequestProtoMsg, + ): QueryGetMaxMessageBodySizeRequest { + return QueryGetMaxMessageBodySizeRequest.decode(message.value); + }, + toProto(message: QueryGetMaxMessageBodySizeRequest): Uint8Array { + return QueryGetMaxMessageBodySizeRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetMaxMessageBodySizeRequest, + ): QueryGetMaxMessageBodySizeRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetMaxMessageBodySizeRequest', + value: QueryGetMaxMessageBodySizeRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetMaxMessageBodySizeResponse(): QueryGetMaxMessageBodySizeResponse { + return { + amount: MaxMessageBodySize.fromPartial({}), + }; +} +export const QueryGetMaxMessageBodySizeResponse = { + typeUrl: '/circle.cctp.v1.QueryGetMaxMessageBodySizeResponse', + encode( + message: QueryGetMaxMessageBodySizeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.amount !== undefined) { + MaxMessageBodySize.encode( + message.amount, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetMaxMessageBodySizeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetMaxMessageBodySizeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.amount = MaxMessageBodySize.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetMaxMessageBodySizeResponse { + return { + amount: isSet(object.amount) + ? MaxMessageBodySize.fromJSON(object.amount) + : undefined, + }; + }, + toJSON( + message: QueryGetMaxMessageBodySizeResponse, + ): JsonSafe { + const obj: any = {}; + message.amount !== undefined && + (obj.amount = message.amount + ? MaxMessageBodySize.toJSON(message.amount) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetMaxMessageBodySizeResponse { + const message = createBaseQueryGetMaxMessageBodySizeResponse(); + message.amount = + object.amount !== undefined && object.amount !== null + ? MaxMessageBodySize.fromPartial(object.amount) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetMaxMessageBodySizeResponseProtoMsg, + ): QueryGetMaxMessageBodySizeResponse { + return QueryGetMaxMessageBodySizeResponse.decode(message.value); + }, + toProto(message: QueryGetMaxMessageBodySizeResponse): Uint8Array { + return QueryGetMaxMessageBodySizeResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetMaxMessageBodySizeResponse, + ): QueryGetMaxMessageBodySizeResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetMaxMessageBodySizeResponse', + value: QueryGetMaxMessageBodySizeResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetNextAvailableNonceRequest(): QueryGetNextAvailableNonceRequest { + return {}; +} +export const QueryGetNextAvailableNonceRequest = { + typeUrl: '/circle.cctp.v1.QueryGetNextAvailableNonceRequest', + encode( + _: QueryGetNextAvailableNonceRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetNextAvailableNonceRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetNextAvailableNonceRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryGetNextAvailableNonceRequest { + return {}; + }, + toJSON( + _: QueryGetNextAvailableNonceRequest, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): QueryGetNextAvailableNonceRequest { + const message = createBaseQueryGetNextAvailableNonceRequest(); + return message; + }, + fromProtoMsg( + message: QueryGetNextAvailableNonceRequestProtoMsg, + ): QueryGetNextAvailableNonceRequest { + return QueryGetNextAvailableNonceRequest.decode(message.value); + }, + toProto(message: QueryGetNextAvailableNonceRequest): Uint8Array { + return QueryGetNextAvailableNonceRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetNextAvailableNonceRequest, + ): QueryGetNextAvailableNonceRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetNextAvailableNonceRequest', + value: QueryGetNextAvailableNonceRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetNextAvailableNonceResponse(): QueryGetNextAvailableNonceResponse { + return { + nonce: Nonce.fromPartial({}), + }; +} +export const QueryGetNextAvailableNonceResponse = { + typeUrl: '/circle.cctp.v1.QueryGetNextAvailableNonceResponse', + encode( + message: QueryGetNextAvailableNonceResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nonce !== undefined) { + Nonce.encode(message.nonce, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetNextAvailableNonceResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetNextAvailableNonceResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nonce = Nonce.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetNextAvailableNonceResponse { + return { + nonce: isSet(object.nonce) ? Nonce.fromJSON(object.nonce) : undefined, + }; + }, + toJSON( + message: QueryGetNextAvailableNonceResponse, + ): JsonSafe { + const obj: any = {}; + message.nonce !== undefined && + (obj.nonce = message.nonce ? Nonce.toJSON(message.nonce) : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetNextAvailableNonceResponse { + const message = createBaseQueryGetNextAvailableNonceResponse(); + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? Nonce.fromPartial(object.nonce) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetNextAvailableNonceResponseProtoMsg, + ): QueryGetNextAvailableNonceResponse { + return QueryGetNextAvailableNonceResponse.decode(message.value); + }, + toProto(message: QueryGetNextAvailableNonceResponse): Uint8Array { + return QueryGetNextAvailableNonceResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetNextAvailableNonceResponse, + ): QueryGetNextAvailableNonceResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetNextAvailableNonceResponse', + value: QueryGetNextAvailableNonceResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetSignatureThresholdRequest(): QueryGetSignatureThresholdRequest { + return {}; +} +export const QueryGetSignatureThresholdRequest = { + typeUrl: '/circle.cctp.v1.QueryGetSignatureThresholdRequest', + encode( + _: QueryGetSignatureThresholdRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetSignatureThresholdRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetSignatureThresholdRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryGetSignatureThresholdRequest { + return {}; + }, + toJSON( + _: QueryGetSignatureThresholdRequest, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): QueryGetSignatureThresholdRequest { + const message = createBaseQueryGetSignatureThresholdRequest(); + return message; + }, + fromProtoMsg( + message: QueryGetSignatureThresholdRequestProtoMsg, + ): QueryGetSignatureThresholdRequest { + return QueryGetSignatureThresholdRequest.decode(message.value); + }, + toProto(message: QueryGetSignatureThresholdRequest): Uint8Array { + return QueryGetSignatureThresholdRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetSignatureThresholdRequest, + ): QueryGetSignatureThresholdRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetSignatureThresholdRequest', + value: QueryGetSignatureThresholdRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetSignatureThresholdResponse(): QueryGetSignatureThresholdResponse { + return { + amount: SignatureThreshold.fromPartial({}), + }; +} +export const QueryGetSignatureThresholdResponse = { + typeUrl: '/circle.cctp.v1.QueryGetSignatureThresholdResponse', + encode( + message: QueryGetSignatureThresholdResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.amount !== undefined) { + SignatureThreshold.encode( + message.amount, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetSignatureThresholdResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetSignatureThresholdResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.amount = SignatureThreshold.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetSignatureThresholdResponse { + return { + amount: isSet(object.amount) + ? SignatureThreshold.fromJSON(object.amount) + : undefined, + }; + }, + toJSON( + message: QueryGetSignatureThresholdResponse, + ): JsonSafe { + const obj: any = {}; + message.amount !== undefined && + (obj.amount = message.amount + ? SignatureThreshold.toJSON(message.amount) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetSignatureThresholdResponse { + const message = createBaseQueryGetSignatureThresholdResponse(); + message.amount = + object.amount !== undefined && object.amount !== null + ? SignatureThreshold.fromPartial(object.amount) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetSignatureThresholdResponseProtoMsg, + ): QueryGetSignatureThresholdResponse { + return QueryGetSignatureThresholdResponse.decode(message.value); + }, + toProto(message: QueryGetSignatureThresholdResponse): Uint8Array { + return QueryGetSignatureThresholdResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetSignatureThresholdResponse, + ): QueryGetSignatureThresholdResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetSignatureThresholdResponse', + value: QueryGetSignatureThresholdResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetTokenPairRequest(): QueryGetTokenPairRequest { + return { + remoteDomain: 0, + remoteToken: '', + }; +} +export const QueryGetTokenPairRequest = { + typeUrl: '/circle.cctp.v1.QueryGetTokenPairRequest', + encode( + message: QueryGetTokenPairRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.remoteDomain !== 0) { + writer.uint32(8).uint32(message.remoteDomain); + } + if (message.remoteToken !== '') { + writer.uint32(18).string(message.remoteToken); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetTokenPairRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetTokenPairRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.remoteDomain = reader.uint32(); + break; + case 2: + message.remoteToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetTokenPairRequest { + return { + remoteDomain: isSet(object.remoteDomain) + ? Number(object.remoteDomain) + : 0, + remoteToken: isSet(object.remoteToken) ? String(object.remoteToken) : '', + }; + }, + toJSON( + message: QueryGetTokenPairRequest, + ): JsonSafe { + const obj: any = {}; + message.remoteDomain !== undefined && + (obj.remoteDomain = Math.round(message.remoteDomain)); + message.remoteToken !== undefined && + (obj.remoteToken = message.remoteToken); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetTokenPairRequest { + const message = createBaseQueryGetTokenPairRequest(); + message.remoteDomain = object.remoteDomain ?? 0; + message.remoteToken = object.remoteToken ?? ''; + return message; + }, + fromProtoMsg( + message: QueryGetTokenPairRequestProtoMsg, + ): QueryGetTokenPairRequest { + return QueryGetTokenPairRequest.decode(message.value); + }, + toProto(message: QueryGetTokenPairRequest): Uint8Array { + return QueryGetTokenPairRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetTokenPairRequest, + ): QueryGetTokenPairRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetTokenPairRequest', + value: QueryGetTokenPairRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetTokenPairResponse(): QueryGetTokenPairResponse { + return { + pair: TokenPair.fromPartial({}), + }; +} +export const QueryGetTokenPairResponse = { + typeUrl: '/circle.cctp.v1.QueryGetTokenPairResponse', + encode( + message: QueryGetTokenPairResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pair !== undefined) { + TokenPair.encode(message.pair, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetTokenPairResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetTokenPairResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pair = TokenPair.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetTokenPairResponse { + return { + pair: isSet(object.pair) ? TokenPair.fromJSON(object.pair) : undefined, + }; + }, + toJSON( + message: QueryGetTokenPairResponse, + ): JsonSafe { + const obj: any = {}; + message.pair !== undefined && + (obj.pair = message.pair ? TokenPair.toJSON(message.pair) : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetTokenPairResponse { + const message = createBaseQueryGetTokenPairResponse(); + message.pair = + object.pair !== undefined && object.pair !== null + ? TokenPair.fromPartial(object.pair) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetTokenPairResponseProtoMsg, + ): QueryGetTokenPairResponse { + return QueryGetTokenPairResponse.decode(message.value); + }, + toProto(message: QueryGetTokenPairResponse): Uint8Array { + return QueryGetTokenPairResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetTokenPairResponse, + ): QueryGetTokenPairResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetTokenPairResponse', + value: QueryGetTokenPairResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllTokenPairsRequest(): QueryAllTokenPairsRequest { + return { + pagination: undefined, + }; +} +export const QueryAllTokenPairsRequest = { + typeUrl: '/circle.cctp.v1.QueryAllTokenPairsRequest', + encode( + message: QueryAllTokenPairsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllTokenPairsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllTokenPairsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllTokenPairsRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllTokenPairsRequest, + ): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllTokenPairsRequest { + const message = createBaseQueryAllTokenPairsRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllTokenPairsRequestProtoMsg, + ): QueryAllTokenPairsRequest { + return QueryAllTokenPairsRequest.decode(message.value); + }, + toProto(message: QueryAllTokenPairsRequest): Uint8Array { + return QueryAllTokenPairsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllTokenPairsRequest, + ): QueryAllTokenPairsRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryAllTokenPairsRequest', + value: QueryAllTokenPairsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllTokenPairsResponse(): QueryAllTokenPairsResponse { + return { + tokenPairs: [], + pagination: undefined, + }; +} +export const QueryAllTokenPairsResponse = { + typeUrl: '/circle.cctp.v1.QueryAllTokenPairsResponse', + encode( + message: QueryAllTokenPairsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.tokenPairs) { + TokenPair.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllTokenPairsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllTokenPairsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.tokenPairs.push(TokenPair.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllTokenPairsResponse { + return { + tokenPairs: Array.isArray(object?.tokenPairs) + ? object.tokenPairs.map((e: any) => TokenPair.fromJSON(e)) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllTokenPairsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.tokenPairs) { + obj.tokenPairs = message.tokenPairs.map(e => + e ? TokenPair.toJSON(e) : undefined, + ); + } else { + obj.tokenPairs = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllTokenPairsResponse { + const message = createBaseQueryAllTokenPairsResponse(); + message.tokenPairs = + object.tokenPairs?.map(e => TokenPair.fromPartial(e)) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllTokenPairsResponseProtoMsg, + ): QueryAllTokenPairsResponse { + return QueryAllTokenPairsResponse.decode(message.value); + }, + toProto(message: QueryAllTokenPairsResponse): Uint8Array { + return QueryAllTokenPairsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllTokenPairsResponse, + ): QueryAllTokenPairsResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryAllTokenPairsResponse', + value: QueryAllTokenPairsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetUsedNonceRequest(): QueryGetUsedNonceRequest { + return { + sourceDomain: 0, + nonce: BigInt(0), + }; +} +export const QueryGetUsedNonceRequest = { + typeUrl: '/circle.cctp.v1.QueryGetUsedNonceRequest', + encode( + message: QueryGetUsedNonceRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.sourceDomain !== 0) { + writer.uint32(8).uint32(message.sourceDomain); + } + if (message.nonce !== BigInt(0)) { + writer.uint32(16).uint64(message.nonce); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetUsedNonceRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetUsedNonceRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sourceDomain = reader.uint32(); + break; + case 2: + message.nonce = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetUsedNonceRequest { + return { + sourceDomain: isSet(object.sourceDomain) + ? Number(object.sourceDomain) + : 0, + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + }; + }, + toJSON( + message: QueryGetUsedNonceRequest, + ): JsonSafe { + const obj: any = {}; + message.sourceDomain !== undefined && + (obj.sourceDomain = Math.round(message.sourceDomain)); + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetUsedNonceRequest { + const message = createBaseQueryGetUsedNonceRequest(); + message.sourceDomain = object.sourceDomain ?? 0; + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: QueryGetUsedNonceRequestProtoMsg, + ): QueryGetUsedNonceRequest { + return QueryGetUsedNonceRequest.decode(message.value); + }, + toProto(message: QueryGetUsedNonceRequest): Uint8Array { + return QueryGetUsedNonceRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetUsedNonceRequest, + ): QueryGetUsedNonceRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetUsedNonceRequest', + value: QueryGetUsedNonceRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetUsedNonceResponse(): QueryGetUsedNonceResponse { + return { + nonce: Nonce.fromPartial({}), + }; +} +export const QueryGetUsedNonceResponse = { + typeUrl: '/circle.cctp.v1.QueryGetUsedNonceResponse', + encode( + message: QueryGetUsedNonceResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nonce !== undefined) { + Nonce.encode(message.nonce, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetUsedNonceResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetUsedNonceResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nonce = Nonce.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetUsedNonceResponse { + return { + nonce: isSet(object.nonce) ? Nonce.fromJSON(object.nonce) : undefined, + }; + }, + toJSON( + message: QueryGetUsedNonceResponse, + ): JsonSafe { + const obj: any = {}; + message.nonce !== undefined && + (obj.nonce = message.nonce ? Nonce.toJSON(message.nonce) : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetUsedNonceResponse { + const message = createBaseQueryGetUsedNonceResponse(); + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? Nonce.fromPartial(object.nonce) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetUsedNonceResponseProtoMsg, + ): QueryGetUsedNonceResponse { + return QueryGetUsedNonceResponse.decode(message.value); + }, + toProto(message: QueryGetUsedNonceResponse): Uint8Array { + return QueryGetUsedNonceResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetUsedNonceResponse, + ): QueryGetUsedNonceResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryGetUsedNonceResponse', + value: QueryGetUsedNonceResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllUsedNoncesRequest(): QueryAllUsedNoncesRequest { + return { + pagination: undefined, + }; +} +export const QueryAllUsedNoncesRequest = { + typeUrl: '/circle.cctp.v1.QueryAllUsedNoncesRequest', + encode( + message: QueryAllUsedNoncesRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllUsedNoncesRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllUsedNoncesRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllUsedNoncesRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllUsedNoncesRequest, + ): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllUsedNoncesRequest { + const message = createBaseQueryAllUsedNoncesRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllUsedNoncesRequestProtoMsg, + ): QueryAllUsedNoncesRequest { + return QueryAllUsedNoncesRequest.decode(message.value); + }, + toProto(message: QueryAllUsedNoncesRequest): Uint8Array { + return QueryAllUsedNoncesRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllUsedNoncesRequest, + ): QueryAllUsedNoncesRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryAllUsedNoncesRequest', + value: QueryAllUsedNoncesRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllUsedNoncesResponse(): QueryAllUsedNoncesResponse { + return { + usedNonces: [], + pagination: undefined, + }; +} +export const QueryAllUsedNoncesResponse = { + typeUrl: '/circle.cctp.v1.QueryAllUsedNoncesResponse', + encode( + message: QueryAllUsedNoncesResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.usedNonces) { + Nonce.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllUsedNoncesResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllUsedNoncesResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.usedNonces.push(Nonce.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllUsedNoncesResponse { + return { + usedNonces: Array.isArray(object?.usedNonces) + ? object.usedNonces.map((e: any) => Nonce.fromJSON(e)) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllUsedNoncesResponse, + ): JsonSafe { + const obj: any = {}; + if (message.usedNonces) { + obj.usedNonces = message.usedNonces.map(e => + e ? Nonce.toJSON(e) : undefined, + ); + } else { + obj.usedNonces = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllUsedNoncesResponse { + const message = createBaseQueryAllUsedNoncesResponse(); + message.usedNonces = + object.usedNonces?.map(e => Nonce.fromPartial(e)) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllUsedNoncesResponseProtoMsg, + ): QueryAllUsedNoncesResponse { + return QueryAllUsedNoncesResponse.decode(message.value); + }, + toProto(message: QueryAllUsedNoncesResponse): Uint8Array { + return QueryAllUsedNoncesResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllUsedNoncesResponse, + ): QueryAllUsedNoncesResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryAllUsedNoncesResponse', + value: QueryAllUsedNoncesResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryRemoteTokenMessengerRequest(): QueryRemoteTokenMessengerRequest { + return { + domainId: 0, + }; +} +export const QueryRemoteTokenMessengerRequest = { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengerRequest', + encode( + message: QueryRemoteTokenMessengerRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.domainId !== 0) { + writer.uint32(8).uint32(message.domainId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRemoteTokenMessengerRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRemoteTokenMessengerRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.domainId = reader.uint32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRemoteTokenMessengerRequest { + return { + domainId: isSet(object.domainId) ? Number(object.domainId) : 0, + }; + }, + toJSON( + message: QueryRemoteTokenMessengerRequest, + ): JsonSafe { + const obj: any = {}; + message.domainId !== undefined && + (obj.domainId = Math.round(message.domainId)); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRemoteTokenMessengerRequest { + const message = createBaseQueryRemoteTokenMessengerRequest(); + message.domainId = object.domainId ?? 0; + return message; + }, + fromProtoMsg( + message: QueryRemoteTokenMessengerRequestProtoMsg, + ): QueryRemoteTokenMessengerRequest { + return QueryRemoteTokenMessengerRequest.decode(message.value); + }, + toProto(message: QueryRemoteTokenMessengerRequest): Uint8Array { + return QueryRemoteTokenMessengerRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryRemoteTokenMessengerRequest, + ): QueryRemoteTokenMessengerRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengerRequest', + value: QueryRemoteTokenMessengerRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryRemoteTokenMessengerResponse(): QueryRemoteTokenMessengerResponse { + return { + remoteTokenMessenger: RemoteTokenMessenger.fromPartial({}), + }; +} +export const QueryRemoteTokenMessengerResponse = { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengerResponse', + encode( + message: QueryRemoteTokenMessengerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.remoteTokenMessenger !== undefined) { + RemoteTokenMessenger.encode( + message.remoteTokenMessenger, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRemoteTokenMessengerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRemoteTokenMessengerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.remoteTokenMessenger = RemoteTokenMessenger.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRemoteTokenMessengerResponse { + return { + remoteTokenMessenger: isSet(object.remoteTokenMessenger) + ? RemoteTokenMessenger.fromJSON(object.remoteTokenMessenger) + : undefined, + }; + }, + toJSON( + message: QueryRemoteTokenMessengerResponse, + ): JsonSafe { + const obj: any = {}; + message.remoteTokenMessenger !== undefined && + (obj.remoteTokenMessenger = message.remoteTokenMessenger + ? RemoteTokenMessenger.toJSON(message.remoteTokenMessenger) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRemoteTokenMessengerResponse { + const message = createBaseQueryRemoteTokenMessengerResponse(); + message.remoteTokenMessenger = + object.remoteTokenMessenger !== undefined && + object.remoteTokenMessenger !== null + ? RemoteTokenMessenger.fromPartial(object.remoteTokenMessenger) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRemoteTokenMessengerResponseProtoMsg, + ): QueryRemoteTokenMessengerResponse { + return QueryRemoteTokenMessengerResponse.decode(message.value); + }, + toProto(message: QueryRemoteTokenMessengerResponse): Uint8Array { + return QueryRemoteTokenMessengerResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryRemoteTokenMessengerResponse, + ): QueryRemoteTokenMessengerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengerResponse', + value: QueryRemoteTokenMessengerResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryRemoteTokenMessengersRequest(): QueryRemoteTokenMessengersRequest { + return { + pagination: undefined, + }; +} +export const QueryRemoteTokenMessengersRequest = { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengersRequest', + encode( + message: QueryRemoteTokenMessengersRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRemoteTokenMessengersRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRemoteTokenMessengersRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRemoteTokenMessengersRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryRemoteTokenMessengersRequest, + ): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRemoteTokenMessengersRequest { + const message = createBaseQueryRemoteTokenMessengersRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRemoteTokenMessengersRequestProtoMsg, + ): QueryRemoteTokenMessengersRequest { + return QueryRemoteTokenMessengersRequest.decode(message.value); + }, + toProto(message: QueryRemoteTokenMessengersRequest): Uint8Array { + return QueryRemoteTokenMessengersRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryRemoteTokenMessengersRequest, + ): QueryRemoteTokenMessengersRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengersRequest', + value: QueryRemoteTokenMessengersRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryRemoteTokenMessengersResponse(): QueryRemoteTokenMessengersResponse { + return { + remoteTokenMessengers: [], + pagination: undefined, + }; +} +export const QueryRemoteTokenMessengersResponse = { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengersResponse', + encode( + message: QueryRemoteTokenMessengersResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.remoteTokenMessengers) { + RemoteTokenMessenger.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRemoteTokenMessengersResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRemoteTokenMessengersResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.remoteTokenMessengers.push( + RemoteTokenMessenger.decode(reader, reader.uint32()), + ); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRemoteTokenMessengersResponse { + return { + remoteTokenMessengers: Array.isArray(object?.remoteTokenMessengers) + ? object.remoteTokenMessengers.map((e: any) => + RemoteTokenMessenger.fromJSON(e), + ) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryRemoteTokenMessengersResponse, + ): JsonSafe { + const obj: any = {}; + if (message.remoteTokenMessengers) { + obj.remoteTokenMessengers = message.remoteTokenMessengers.map(e => + e ? RemoteTokenMessenger.toJSON(e) : undefined, + ); + } else { + obj.remoteTokenMessengers = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRemoteTokenMessengersResponse { + const message = createBaseQueryRemoteTokenMessengersResponse(); + message.remoteTokenMessengers = + object.remoteTokenMessengers?.map(e => + RemoteTokenMessenger.fromPartial(e), + ) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRemoteTokenMessengersResponseProtoMsg, + ): QueryRemoteTokenMessengersResponse { + return QueryRemoteTokenMessengersResponse.decode(message.value); + }, + toProto(message: QueryRemoteTokenMessengersResponse): Uint8Array { + return QueryRemoteTokenMessengersResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryRemoteTokenMessengersResponse, + ): QueryRemoteTokenMessengersResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryRemoteTokenMessengersResponse', + value: QueryRemoteTokenMessengersResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryBurnMessageVersionRequest(): QueryBurnMessageVersionRequest { + return {}; +} +export const QueryBurnMessageVersionRequest = { + typeUrl: '/circle.cctp.v1.QueryBurnMessageVersionRequest', + encode( + _: QueryBurnMessageVersionRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryBurnMessageVersionRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryBurnMessageVersionRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryBurnMessageVersionRequest { + return {}; + }, + toJSON( + _: QueryBurnMessageVersionRequest, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): QueryBurnMessageVersionRequest { + const message = createBaseQueryBurnMessageVersionRequest(); + return message; + }, + fromProtoMsg( + message: QueryBurnMessageVersionRequestProtoMsg, + ): QueryBurnMessageVersionRequest { + return QueryBurnMessageVersionRequest.decode(message.value); + }, + toProto(message: QueryBurnMessageVersionRequest): Uint8Array { + return QueryBurnMessageVersionRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryBurnMessageVersionRequest, + ): QueryBurnMessageVersionRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryBurnMessageVersionRequest', + value: QueryBurnMessageVersionRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryBurnMessageVersionResponse(): QueryBurnMessageVersionResponse { + return { + version: 0, + }; +} +export const QueryBurnMessageVersionResponse = { + typeUrl: '/circle.cctp.v1.QueryBurnMessageVersionResponse', + encode( + message: QueryBurnMessageVersionResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.version !== 0) { + writer.uint32(8).uint32(message.version); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryBurnMessageVersionResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryBurnMessageVersionResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.uint32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryBurnMessageVersionResponse { + return { + version: isSet(object.version) ? Number(object.version) : 0, + }; + }, + toJSON( + message: QueryBurnMessageVersionResponse, + ): JsonSafe { + const obj: any = {}; + message.version !== undefined && + (obj.version = Math.round(message.version)); + return obj; + }, + fromPartial( + object: Partial, + ): QueryBurnMessageVersionResponse { + const message = createBaseQueryBurnMessageVersionResponse(); + message.version = object.version ?? 0; + return message; + }, + fromProtoMsg( + message: QueryBurnMessageVersionResponseProtoMsg, + ): QueryBurnMessageVersionResponse { + return QueryBurnMessageVersionResponse.decode(message.value); + }, + toProto(message: QueryBurnMessageVersionResponse): Uint8Array { + return QueryBurnMessageVersionResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryBurnMessageVersionResponse, + ): QueryBurnMessageVersionResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryBurnMessageVersionResponse', + value: QueryBurnMessageVersionResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryLocalMessageVersionRequest(): QueryLocalMessageVersionRequest { + return {}; +} +export const QueryLocalMessageVersionRequest = { + typeUrl: '/circle.cctp.v1.QueryLocalMessageVersionRequest', + encode( + _: QueryLocalMessageVersionRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryLocalMessageVersionRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryLocalMessageVersionRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryLocalMessageVersionRequest { + return {}; + }, + toJSON( + _: QueryLocalMessageVersionRequest, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): QueryLocalMessageVersionRequest { + const message = createBaseQueryLocalMessageVersionRequest(); + return message; + }, + fromProtoMsg( + message: QueryLocalMessageVersionRequestProtoMsg, + ): QueryLocalMessageVersionRequest { + return QueryLocalMessageVersionRequest.decode(message.value); + }, + toProto(message: QueryLocalMessageVersionRequest): Uint8Array { + return QueryLocalMessageVersionRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryLocalMessageVersionRequest, + ): QueryLocalMessageVersionRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryLocalMessageVersionRequest', + value: QueryLocalMessageVersionRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryLocalMessageVersionResponse(): QueryLocalMessageVersionResponse { + return { + version: 0, + }; +} +export const QueryLocalMessageVersionResponse = { + typeUrl: '/circle.cctp.v1.QueryLocalMessageVersionResponse', + encode( + message: QueryLocalMessageVersionResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.version !== 0) { + writer.uint32(8).uint32(message.version); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryLocalMessageVersionResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryLocalMessageVersionResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.uint32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryLocalMessageVersionResponse { + return { + version: isSet(object.version) ? Number(object.version) : 0, + }; + }, + toJSON( + message: QueryLocalMessageVersionResponse, + ): JsonSafe { + const obj: any = {}; + message.version !== undefined && + (obj.version = Math.round(message.version)); + return obj; + }, + fromPartial( + object: Partial, + ): QueryLocalMessageVersionResponse { + const message = createBaseQueryLocalMessageVersionResponse(); + message.version = object.version ?? 0; + return message; + }, + fromProtoMsg( + message: QueryLocalMessageVersionResponseProtoMsg, + ): QueryLocalMessageVersionResponse { + return QueryLocalMessageVersionResponse.decode(message.value); + }, + toProto(message: QueryLocalMessageVersionResponse): Uint8Array { + return QueryLocalMessageVersionResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryLocalMessageVersionResponse, + ): QueryLocalMessageVersionResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryLocalMessageVersionResponse', + value: QueryLocalMessageVersionResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryLocalDomainRequest(): QueryLocalDomainRequest { + return {}; +} +export const QueryLocalDomainRequest = { + typeUrl: '/circle.cctp.v1.QueryLocalDomainRequest', + encode( + _: QueryLocalDomainRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryLocalDomainRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryLocalDomainRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryLocalDomainRequest { + return {}; + }, + toJSON(_: QueryLocalDomainRequest): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QueryLocalDomainRequest { + const message = createBaseQueryLocalDomainRequest(); + return message; + }, + fromProtoMsg( + message: QueryLocalDomainRequestProtoMsg, + ): QueryLocalDomainRequest { + return QueryLocalDomainRequest.decode(message.value); + }, + toProto(message: QueryLocalDomainRequest): Uint8Array { + return QueryLocalDomainRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryLocalDomainRequest, + ): QueryLocalDomainRequestProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryLocalDomainRequest', + value: QueryLocalDomainRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryLocalDomainResponse(): QueryLocalDomainResponse { + return { + domainId: 0, + }; +} +export const QueryLocalDomainResponse = { + typeUrl: '/circle.cctp.v1.QueryLocalDomainResponse', + encode( + message: QueryLocalDomainResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.domainId !== 0) { + writer.uint32(8).uint32(message.domainId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryLocalDomainResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryLocalDomainResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.domainId = reader.uint32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryLocalDomainResponse { + return { + domainId: isSet(object.domainId) ? Number(object.domainId) : 0, + }; + }, + toJSON( + message: QueryLocalDomainResponse, + ): JsonSafe { + const obj: any = {}; + message.domainId !== undefined && + (obj.domainId = Math.round(message.domainId)); + return obj; + }, + fromPartial( + object: Partial, + ): QueryLocalDomainResponse { + const message = createBaseQueryLocalDomainResponse(); + message.domainId = object.domainId ?? 0; + return message; + }, + fromProtoMsg( + message: QueryLocalDomainResponseProtoMsg, + ): QueryLocalDomainResponse { + return QueryLocalDomainResponse.decode(message.value); + }, + toProto(message: QueryLocalDomainResponse): Uint8Array { + return QueryLocalDomainResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryLocalDomainResponse, + ): QueryLocalDomainResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.QueryLocalDomainResponse', + value: QueryLocalDomainResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/remote_token_messenger.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/remote_token_messenger.ts new file mode 100644 index 00000000000..8b24811c7bf --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/remote_token_messenger.ts @@ -0,0 +1,105 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet, bytesFromBase64, base64FromBytes } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * @param domain_id + * @param address + */ +export interface RemoteTokenMessenger { + domainId: number; + address: Uint8Array; +} +export interface RemoteTokenMessengerProtoMsg { + typeUrl: '/circle.cctp.v1.RemoteTokenMessenger'; + value: Uint8Array; +} +/** + * @param domain_id + * @param address + */ +export interface RemoteTokenMessengerSDKType { + domain_id: number; + address: Uint8Array; +} +function createBaseRemoteTokenMessenger(): RemoteTokenMessenger { + return { + domainId: 0, + address: new Uint8Array(), + }; +} +export const RemoteTokenMessenger = { + typeUrl: '/circle.cctp.v1.RemoteTokenMessenger', + encode( + message: RemoteTokenMessenger, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.domainId !== 0) { + writer.uint32(8).uint32(message.domainId); + } + if (message.address.length !== 0) { + writer.uint32(18).bytes(message.address); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): RemoteTokenMessenger { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRemoteTokenMessenger(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.domainId = reader.uint32(); + break; + case 2: + message.address = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RemoteTokenMessenger { + return { + domainId: isSet(object.domainId) ? Number(object.domainId) : 0, + address: isSet(object.address) + ? bytesFromBase64(object.address) + : new Uint8Array(), + }; + }, + toJSON(message: RemoteTokenMessenger): JsonSafe { + const obj: any = {}; + message.domainId !== undefined && + (obj.domainId = Math.round(message.domainId)); + message.address !== undefined && + (obj.address = base64FromBytes( + message.address !== undefined ? message.address : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): RemoteTokenMessenger { + const message = createBaseRemoteTokenMessenger(); + message.domainId = object.domainId ?? 0; + message.address = object.address ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: RemoteTokenMessengerProtoMsg): RemoteTokenMessenger { + return RemoteTokenMessenger.decode(message.value); + }, + toProto(message: RemoteTokenMessenger): Uint8Array { + return RemoteTokenMessenger.encode(message).finish(); + }, + toProtoMsg(message: RemoteTokenMessenger): RemoteTokenMessengerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.RemoteTokenMessenger', + value: RemoteTokenMessenger.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/sending_and_receiving_messages_paused.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/sending_and_receiving_messages_paused.ts new file mode 100644 index 00000000000..6c7fb525c60 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/sending_and_receiving_messages_paused.ts @@ -0,0 +1,95 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * Message format for SendingAndReceivingMessagesPaused + * @param paused true if paused, false if not paused + */ +export interface SendingAndReceivingMessagesPaused { + paused: boolean; +} +export interface SendingAndReceivingMessagesPausedProtoMsg { + typeUrl: '/circle.cctp.v1.SendingAndReceivingMessagesPaused'; + value: Uint8Array; +} +/** + * Message format for SendingAndReceivingMessagesPaused + * @param paused true if paused, false if not paused + */ +export interface SendingAndReceivingMessagesPausedSDKType { + paused: boolean; +} +function createBaseSendingAndReceivingMessagesPaused(): SendingAndReceivingMessagesPaused { + return { + paused: false, + }; +} +export const SendingAndReceivingMessagesPaused = { + typeUrl: '/circle.cctp.v1.SendingAndReceivingMessagesPaused', + encode( + message: SendingAndReceivingMessagesPaused, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.paused === true) { + writer.uint32(8).bool(message.paused); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): SendingAndReceivingMessagesPaused { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSendingAndReceivingMessagesPaused(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.paused = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): SendingAndReceivingMessagesPaused { + return { + paused: isSet(object.paused) ? Boolean(object.paused) : false, + }; + }, + toJSON( + message: SendingAndReceivingMessagesPaused, + ): JsonSafe { + const obj: any = {}; + message.paused !== undefined && (obj.paused = message.paused); + return obj; + }, + fromPartial( + object: Partial, + ): SendingAndReceivingMessagesPaused { + const message = createBaseSendingAndReceivingMessagesPaused(); + message.paused = object.paused ?? false; + return message; + }, + fromProtoMsg( + message: SendingAndReceivingMessagesPausedProtoMsg, + ): SendingAndReceivingMessagesPaused { + return SendingAndReceivingMessagesPaused.decode(message.value); + }, + toProto(message: SendingAndReceivingMessagesPaused): Uint8Array { + return SendingAndReceivingMessagesPaused.encode(message).finish(); + }, + toProtoMsg( + message: SendingAndReceivingMessagesPaused, + ): SendingAndReceivingMessagesPausedProtoMsg { + return { + typeUrl: '/circle.cctp.v1.SendingAndReceivingMessagesPaused', + value: SendingAndReceivingMessagesPaused.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/signature_threshold.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/signature_threshold.ts new file mode 100644 index 00000000000..83913071eb0 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/signature_threshold.ts @@ -0,0 +1,89 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * SignatureThreshold is the minimum amount of signatures required to attest to + * a message (the 'm' in a m/n multisig) + * @param amount the number of signatures required + */ +export interface SignatureThreshold { + amount: number; +} +export interface SignatureThresholdProtoMsg { + typeUrl: '/circle.cctp.v1.SignatureThreshold'; + value: Uint8Array; +} +/** + * SignatureThreshold is the minimum amount of signatures required to attest to + * a message (the 'm' in a m/n multisig) + * @param amount the number of signatures required + */ +export interface SignatureThresholdSDKType { + amount: number; +} +function createBaseSignatureThreshold(): SignatureThreshold { + return { + amount: 0, + }; +} +export const SignatureThreshold = { + typeUrl: '/circle.cctp.v1.SignatureThreshold', + encode( + message: SignatureThreshold, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.amount !== 0) { + writer.uint32(8).uint32(message.amount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): SignatureThreshold { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSignatureThreshold(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.amount = reader.uint32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): SignatureThreshold { + return { + amount: isSet(object.amount) ? Number(object.amount) : 0, + }; + }, + toJSON(message: SignatureThreshold): JsonSafe { + const obj: any = {}; + message.amount !== undefined && (obj.amount = Math.round(message.amount)); + return obj; + }, + fromPartial(object: Partial): SignatureThreshold { + const message = createBaseSignatureThreshold(); + message.amount = object.amount ?? 0; + return message; + }, + fromProtoMsg(message: SignatureThresholdProtoMsg): SignatureThreshold { + return SignatureThreshold.decode(message.value); + }, + toProto(message: SignatureThreshold): Uint8Array { + return SignatureThreshold.encode(message).finish(); + }, + toProtoMsg(message: SignatureThreshold): SignatureThresholdProtoMsg { + return { + typeUrl: '/circle.cctp.v1.SignatureThreshold', + value: SignatureThreshold.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/token_pair.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/token_pair.ts new file mode 100644 index 00000000000..4018ce2c054 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/token_pair.ts @@ -0,0 +1,128 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet, bytesFromBase64, base64FromBytes } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +/** + * TokenPair is used to look up the Noble token (i.e. "uusdc") from a remote + * domain token address Multiple remote_domain + remote_token pairs can map to + * the same local_token + * + * @param remote_domain the remote domain_id corresponding to the token + * @param remote_token the remote token address + * @param local_token the corresponding Noble token denom in uunits + */ +export interface TokenPair { + remoteDomain: number; + remoteToken: Uint8Array; + localToken: string; +} +export interface TokenPairProtoMsg { + typeUrl: '/circle.cctp.v1.TokenPair'; + value: Uint8Array; +} +/** + * TokenPair is used to look up the Noble token (i.e. "uusdc") from a remote + * domain token address Multiple remote_domain + remote_token pairs can map to + * the same local_token + * + * @param remote_domain the remote domain_id corresponding to the token + * @param remote_token the remote token address + * @param local_token the corresponding Noble token denom in uunits + */ +export interface TokenPairSDKType { + remote_domain: number; + remote_token: Uint8Array; + local_token: string; +} +function createBaseTokenPair(): TokenPair { + return { + remoteDomain: 0, + remoteToken: new Uint8Array(), + localToken: '', + }; +} +export const TokenPair = { + typeUrl: '/circle.cctp.v1.TokenPair', + encode( + message: TokenPair, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.remoteDomain !== 0) { + writer.uint32(8).uint32(message.remoteDomain); + } + if (message.remoteToken.length !== 0) { + writer.uint32(18).bytes(message.remoteToken); + } + if (message.localToken !== '') { + writer.uint32(26).string(message.localToken); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): TokenPair { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTokenPair(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.remoteDomain = reader.uint32(); + break; + case 2: + message.remoteToken = reader.bytes(); + break; + case 3: + message.localToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TokenPair { + return { + remoteDomain: isSet(object.remoteDomain) + ? Number(object.remoteDomain) + : 0, + remoteToken: isSet(object.remoteToken) + ? bytesFromBase64(object.remoteToken) + : new Uint8Array(), + localToken: isSet(object.localToken) ? String(object.localToken) : '', + }; + }, + toJSON(message: TokenPair): JsonSafe { + const obj: any = {}; + message.remoteDomain !== undefined && + (obj.remoteDomain = Math.round(message.remoteDomain)); + message.remoteToken !== undefined && + (obj.remoteToken = base64FromBytes( + message.remoteToken !== undefined + ? message.remoteToken + : new Uint8Array(), + )); + message.localToken !== undefined && (obj.localToken = message.localToken); + return obj; + }, + fromPartial(object: Partial): TokenPair { + const message = createBaseTokenPair(); + message.remoteDomain = object.remoteDomain ?? 0; + message.remoteToken = object.remoteToken ?? new Uint8Array(); + message.localToken = object.localToken ?? ''; + return message; + }, + fromProtoMsg(message: TokenPairProtoMsg): TokenPair { + return TokenPair.decode(message.value); + }, + toProto(message: TokenPair): Uint8Array { + return TokenPair.encode(message).finish(); + }, + toProtoMsg(message: TokenPair): TokenPairProtoMsg { + return { + typeUrl: '/circle.cctp.v1.TokenPair', + value: TokenPair.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/circle/cctp/v1/tx.ts b/packages/cosmic-proto/src/codegen/circle/cctp/v1/tx.ts new file mode 100644 index 00000000000..ba136cf7577 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/circle/cctp/v1/tx.ts @@ -0,0 +1,4420 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../../binary.js'; +import { isSet, bytesFromBase64, base64FromBytes } from '../../../helpers.js'; +import { type JsonSafe } from '../../../json-safe.js'; +export interface MsgUpdateOwner { + from: string; + newOwner: string; +} +export interface MsgUpdateOwnerProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateOwner'; + value: Uint8Array; +} +export interface MsgUpdateOwnerSDKType { + from: string; + new_owner: string; +} +export interface MsgUpdateOwnerResponse {} +export interface MsgUpdateOwnerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateOwnerResponse'; + value: Uint8Array; +} +export interface MsgUpdateOwnerResponseSDKType {} +export interface MsgUpdateAttesterManager { + from: string; + newAttesterManager: string; +} +export interface MsgUpdateAttesterManagerProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateAttesterManager'; + value: Uint8Array; +} +export interface MsgUpdateAttesterManagerSDKType { + from: string; + new_attester_manager: string; +} +export interface MsgUpdateAttesterManagerResponse {} +export interface MsgUpdateAttesterManagerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateAttesterManagerResponse'; + value: Uint8Array; +} +export interface MsgUpdateAttesterManagerResponseSDKType {} +export interface MsgUpdateTokenController { + from: string; + newTokenController: string; +} +export interface MsgUpdateTokenControllerProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateTokenController'; + value: Uint8Array; +} +export interface MsgUpdateTokenControllerSDKType { + from: string; + new_token_controller: string; +} +export interface MsgUpdateTokenControllerResponse {} +export interface MsgUpdateTokenControllerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateTokenControllerResponse'; + value: Uint8Array; +} +export interface MsgUpdateTokenControllerResponseSDKType {} +export interface MsgUpdatePauser { + from: string; + newPauser: string; +} +export interface MsgUpdatePauserProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdatePauser'; + value: Uint8Array; +} +export interface MsgUpdatePauserSDKType { + from: string; + new_pauser: string; +} +export interface MsgUpdatePauserResponse {} +export interface MsgUpdatePauserResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdatePauserResponse'; + value: Uint8Array; +} +export interface MsgUpdatePauserResponseSDKType {} +export interface MsgAcceptOwner { + from: string; +} +export interface MsgAcceptOwnerProtoMsg { + typeUrl: '/circle.cctp.v1.MsgAcceptOwner'; + value: Uint8Array; +} +export interface MsgAcceptOwnerSDKType { + from: string; +} +export interface MsgAcceptOwnerResponse {} +export interface MsgAcceptOwnerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgAcceptOwnerResponse'; + value: Uint8Array; +} +export interface MsgAcceptOwnerResponseSDKType {} +export interface MsgEnableAttester { + from: string; + attester: string; +} +export interface MsgEnableAttesterProtoMsg { + typeUrl: '/circle.cctp.v1.MsgEnableAttester'; + value: Uint8Array; +} +export interface MsgEnableAttesterSDKType { + from: string; + attester: string; +} +export interface MsgEnableAttesterResponse {} +export interface MsgEnableAttesterResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgEnableAttesterResponse'; + value: Uint8Array; +} +export interface MsgEnableAttesterResponseSDKType {} +export interface MsgDisableAttester { + from: string; + attester: string; +} +export interface MsgDisableAttesterProtoMsg { + typeUrl: '/circle.cctp.v1.MsgDisableAttester'; + value: Uint8Array; +} +export interface MsgDisableAttesterSDKType { + from: string; + attester: string; +} +export interface MsgDisableAttesterResponse {} +export interface MsgDisableAttesterResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgDisableAttesterResponse'; + value: Uint8Array; +} +export interface MsgDisableAttesterResponseSDKType {} +export interface MsgPauseBurningAndMinting { + from: string; +} +export interface MsgPauseBurningAndMintingProtoMsg { + typeUrl: '/circle.cctp.v1.MsgPauseBurningAndMinting'; + value: Uint8Array; +} +export interface MsgPauseBurningAndMintingSDKType { + from: string; +} +export interface MsgPauseBurningAndMintingResponse {} +export interface MsgPauseBurningAndMintingResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgPauseBurningAndMintingResponse'; + value: Uint8Array; +} +export interface MsgPauseBurningAndMintingResponseSDKType {} +export interface MsgUnpauseBurningAndMinting { + from: string; +} +export interface MsgUnpauseBurningAndMintingProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUnpauseBurningAndMinting'; + value: Uint8Array; +} +export interface MsgUnpauseBurningAndMintingSDKType { + from: string; +} +export interface MsgUnpauseBurningAndMintingResponse {} +export interface MsgUnpauseBurningAndMintingResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUnpauseBurningAndMintingResponse'; + value: Uint8Array; +} +export interface MsgUnpauseBurningAndMintingResponseSDKType {} +export interface MsgPauseSendingAndReceivingMessages { + from: string; +} +export interface MsgPauseSendingAndReceivingMessagesProtoMsg { + typeUrl: '/circle.cctp.v1.MsgPauseSendingAndReceivingMessages'; + value: Uint8Array; +} +export interface MsgPauseSendingAndReceivingMessagesSDKType { + from: string; +} +export interface MsgPauseSendingAndReceivingMessagesResponse {} +export interface MsgPauseSendingAndReceivingMessagesResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgPauseSendingAndReceivingMessagesResponse'; + value: Uint8Array; +} +export interface MsgPauseSendingAndReceivingMessagesResponseSDKType {} +export interface MsgUnpauseSendingAndReceivingMessages { + from: string; +} +export interface MsgUnpauseSendingAndReceivingMessagesProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUnpauseSendingAndReceivingMessages'; + value: Uint8Array; +} +export interface MsgUnpauseSendingAndReceivingMessagesSDKType { + from: string; +} +export interface MsgUnpauseSendingAndReceivingMessagesResponse {} +export interface MsgUnpauseSendingAndReceivingMessagesResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUnpauseSendingAndReceivingMessagesResponse'; + value: Uint8Array; +} +export interface MsgUnpauseSendingAndReceivingMessagesResponseSDKType {} +export interface MsgUpdateMaxMessageBodySize { + from: string; + messageSize: bigint; +} +export interface MsgUpdateMaxMessageBodySizeProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateMaxMessageBodySize'; + value: Uint8Array; +} +export interface MsgUpdateMaxMessageBodySizeSDKType { + from: string; + message_size: bigint; +} +export interface MsgUpdateMaxMessageBodySizeResponse {} +export interface MsgUpdateMaxMessageBodySizeResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateMaxMessageBodySizeResponse'; + value: Uint8Array; +} +export interface MsgUpdateMaxMessageBodySizeResponseSDKType {} +export interface MsgSetMaxBurnAmountPerMessage { + from: string; + localToken: string; + amount: string; +} +export interface MsgSetMaxBurnAmountPerMessageProtoMsg { + typeUrl: '/circle.cctp.v1.MsgSetMaxBurnAmountPerMessage'; + value: Uint8Array; +} +export interface MsgSetMaxBurnAmountPerMessageSDKType { + from: string; + local_token: string; + amount: string; +} +export interface MsgSetMaxBurnAmountPerMessageResponse {} +export interface MsgSetMaxBurnAmountPerMessageResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgSetMaxBurnAmountPerMessageResponse'; + value: Uint8Array; +} +export interface MsgSetMaxBurnAmountPerMessageResponseSDKType {} +export interface MsgDepositForBurn { + from: string; + amount: string; + destinationDomain: number; + mintRecipient: Uint8Array; + burnToken: string; +} +export interface MsgDepositForBurnProtoMsg { + typeUrl: '/circle.cctp.v1.MsgDepositForBurn'; + value: Uint8Array; +} +export interface MsgDepositForBurnSDKType { + from: string; + amount: string; + destination_domain: number; + mint_recipient: Uint8Array; + burn_token: string; +} +export interface MsgDepositForBurnResponse { + nonce: bigint; +} +export interface MsgDepositForBurnResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnResponse'; + value: Uint8Array; +} +export interface MsgDepositForBurnResponseSDKType { + nonce: bigint; +} +export interface MsgDepositForBurnWithCaller { + from: string; + amount: string; + destinationDomain: number; + mintRecipient: Uint8Array; + burnToken: string; + destinationCaller: Uint8Array; +} +export interface MsgDepositForBurnWithCallerProtoMsg { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnWithCaller'; + value: Uint8Array; +} +export interface MsgDepositForBurnWithCallerSDKType { + from: string; + amount: string; + destination_domain: number; + mint_recipient: Uint8Array; + burn_token: string; + destination_caller: Uint8Array; +} +export interface MsgDepositForBurnWithCallerResponse { + nonce: bigint; +} +export interface MsgDepositForBurnWithCallerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnWithCallerResponse'; + value: Uint8Array; +} +export interface MsgDepositForBurnWithCallerResponseSDKType { + nonce: bigint; +} +export interface MsgReplaceDepositForBurn { + from: string; + originalMessage: Uint8Array; + originalAttestation: Uint8Array; + newDestinationCaller: Uint8Array; + newMintRecipient: Uint8Array; +} +export interface MsgReplaceDepositForBurnProtoMsg { + typeUrl: '/circle.cctp.v1.MsgReplaceDepositForBurn'; + value: Uint8Array; +} +export interface MsgReplaceDepositForBurnSDKType { + from: string; + original_message: Uint8Array; + original_attestation: Uint8Array; + new_destination_caller: Uint8Array; + new_mint_recipient: Uint8Array; +} +export interface MsgReplaceDepositForBurnResponse {} +export interface MsgReplaceDepositForBurnResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgReplaceDepositForBurnResponse'; + value: Uint8Array; +} +export interface MsgReplaceDepositForBurnResponseSDKType {} +export interface MsgReceiveMessage { + from: string; + message: Uint8Array; + attestation: Uint8Array; +} +export interface MsgReceiveMessageProtoMsg { + typeUrl: '/circle.cctp.v1.MsgReceiveMessage'; + value: Uint8Array; +} +export interface MsgReceiveMessageSDKType { + from: string; + message: Uint8Array; + attestation: Uint8Array; +} +export interface MsgReceiveMessageResponse { + success: boolean; +} +export interface MsgReceiveMessageResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgReceiveMessageResponse'; + value: Uint8Array; +} +export interface MsgReceiveMessageResponseSDKType { + success: boolean; +} +export interface MsgSendMessage { + from: string; + destinationDomain: number; + recipient: Uint8Array; + messageBody: Uint8Array; +} +export interface MsgSendMessageProtoMsg { + typeUrl: '/circle.cctp.v1.MsgSendMessage'; + value: Uint8Array; +} +export interface MsgSendMessageSDKType { + from: string; + destination_domain: number; + recipient: Uint8Array; + message_body: Uint8Array; +} +export interface MsgSendMessageResponse { + nonce: bigint; +} +export interface MsgSendMessageResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgSendMessageResponse'; + value: Uint8Array; +} +export interface MsgSendMessageResponseSDKType { + nonce: bigint; +} +export interface MsgSendMessageWithCaller { + from: string; + destinationDomain: number; + recipient: Uint8Array; + messageBody: Uint8Array; + destinationCaller: Uint8Array; +} +export interface MsgSendMessageWithCallerProtoMsg { + typeUrl: '/circle.cctp.v1.MsgSendMessageWithCaller'; + value: Uint8Array; +} +export interface MsgSendMessageWithCallerSDKType { + from: string; + destination_domain: number; + recipient: Uint8Array; + message_body: Uint8Array; + destination_caller: Uint8Array; +} +export interface MsgSendMessageWithCallerResponse { + nonce: bigint; +} +export interface MsgSendMessageWithCallerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgSendMessageWithCallerResponse'; + value: Uint8Array; +} +export interface MsgSendMessageWithCallerResponseSDKType { + nonce: bigint; +} +export interface MsgReplaceMessage { + from: string; + originalMessage: Uint8Array; + originalAttestation: Uint8Array; + newMessageBody: Uint8Array; + newDestinationCaller: Uint8Array; +} +export interface MsgReplaceMessageProtoMsg { + typeUrl: '/circle.cctp.v1.MsgReplaceMessage'; + value: Uint8Array; +} +export interface MsgReplaceMessageSDKType { + from: string; + original_message: Uint8Array; + original_attestation: Uint8Array; + new_message_body: Uint8Array; + new_destination_caller: Uint8Array; +} +export interface MsgReplaceMessageResponse {} +export interface MsgReplaceMessageResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgReplaceMessageResponse'; + value: Uint8Array; +} +export interface MsgReplaceMessageResponseSDKType {} +export interface MsgUpdateSignatureThreshold { + from: string; + amount: number; +} +export interface MsgUpdateSignatureThresholdProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateSignatureThreshold'; + value: Uint8Array; +} +export interface MsgUpdateSignatureThresholdSDKType { + from: string; + amount: number; +} +export interface MsgUpdateSignatureThresholdResponse {} +export interface MsgUpdateSignatureThresholdResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUpdateSignatureThresholdResponse'; + value: Uint8Array; +} +export interface MsgUpdateSignatureThresholdResponseSDKType {} +export interface MsgLinkTokenPair { + from: string; + remoteDomain: number; + remoteToken: Uint8Array; + localToken: string; +} +export interface MsgLinkTokenPairProtoMsg { + typeUrl: '/circle.cctp.v1.MsgLinkTokenPair'; + value: Uint8Array; +} +export interface MsgLinkTokenPairSDKType { + from: string; + remote_domain: number; + remote_token: Uint8Array; + local_token: string; +} +export interface MsgLinkTokenPairResponse {} +export interface MsgLinkTokenPairResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgLinkTokenPairResponse'; + value: Uint8Array; +} +export interface MsgLinkTokenPairResponseSDKType {} +export interface MsgUnlinkTokenPair { + from: string; + remoteDomain: number; + remoteToken: Uint8Array; + localToken: string; +} +export interface MsgUnlinkTokenPairProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUnlinkTokenPair'; + value: Uint8Array; +} +export interface MsgUnlinkTokenPairSDKType { + from: string; + remote_domain: number; + remote_token: Uint8Array; + local_token: string; +} +export interface MsgUnlinkTokenPairResponse {} +export interface MsgUnlinkTokenPairResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgUnlinkTokenPairResponse'; + value: Uint8Array; +} +export interface MsgUnlinkTokenPairResponseSDKType {} +export interface MsgAddRemoteTokenMessenger { + from: string; + domainId: number; + address: Uint8Array; +} +export interface MsgAddRemoteTokenMessengerProtoMsg { + typeUrl: '/circle.cctp.v1.MsgAddRemoteTokenMessenger'; + value: Uint8Array; +} +export interface MsgAddRemoteTokenMessengerSDKType { + from: string; + domain_id: number; + address: Uint8Array; +} +export interface MsgAddRemoteTokenMessengerResponse {} +export interface MsgAddRemoteTokenMessengerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgAddRemoteTokenMessengerResponse'; + value: Uint8Array; +} +export interface MsgAddRemoteTokenMessengerResponseSDKType {} +export interface MsgRemoveRemoteTokenMessenger { + from: string; + domainId: number; +} +export interface MsgRemoveRemoteTokenMessengerProtoMsg { + typeUrl: '/circle.cctp.v1.MsgRemoveRemoteTokenMessenger'; + value: Uint8Array; +} +export interface MsgRemoveRemoteTokenMessengerSDKType { + from: string; + domain_id: number; +} +export interface MsgRemoveRemoteTokenMessengerResponse {} +export interface MsgRemoveRemoteTokenMessengerResponseProtoMsg { + typeUrl: '/circle.cctp.v1.MsgRemoveRemoteTokenMessengerResponse'; + value: Uint8Array; +} +export interface MsgRemoveRemoteTokenMessengerResponseSDKType {} +function createBaseMsgUpdateOwner(): MsgUpdateOwner { + return { + from: '', + newOwner: '', + }; +} +export const MsgUpdateOwner = { + typeUrl: '/circle.cctp.v1.MsgUpdateOwner', + encode( + message: MsgUpdateOwner, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.newOwner !== '') { + writer.uint32(18).string(message.newOwner); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgUpdateOwner { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateOwner(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.newOwner = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateOwner { + return { + from: isSet(object.from) ? String(object.from) : '', + newOwner: isSet(object.newOwner) ? String(object.newOwner) : '', + }; + }, + toJSON(message: MsgUpdateOwner): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.newOwner !== undefined && (obj.newOwner = message.newOwner); + return obj; + }, + fromPartial(object: Partial): MsgUpdateOwner { + const message = createBaseMsgUpdateOwner(); + message.from = object.from ?? ''; + message.newOwner = object.newOwner ?? ''; + return message; + }, + fromProtoMsg(message: MsgUpdateOwnerProtoMsg): MsgUpdateOwner { + return MsgUpdateOwner.decode(message.value); + }, + toProto(message: MsgUpdateOwner): Uint8Array { + return MsgUpdateOwner.encode(message).finish(); + }, + toProtoMsg(message: MsgUpdateOwner): MsgUpdateOwnerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateOwner', + value: MsgUpdateOwner.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateOwnerResponse(): MsgUpdateOwnerResponse { + return {}; +} +export const MsgUpdateOwnerResponse = { + typeUrl: '/circle.cctp.v1.MsgUpdateOwnerResponse', + encode( + _: MsgUpdateOwnerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateOwnerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateOwnerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateOwnerResponse { + return {}; + }, + toJSON(_: MsgUpdateOwnerResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): MsgUpdateOwnerResponse { + const message = createBaseMsgUpdateOwnerResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateOwnerResponseProtoMsg, + ): MsgUpdateOwnerResponse { + return MsgUpdateOwnerResponse.decode(message.value); + }, + toProto(message: MsgUpdateOwnerResponse): Uint8Array { + return MsgUpdateOwnerResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgUpdateOwnerResponse): MsgUpdateOwnerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateOwnerResponse', + value: MsgUpdateOwnerResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateAttesterManager(): MsgUpdateAttesterManager { + return { + from: '', + newAttesterManager: '', + }; +} +export const MsgUpdateAttesterManager = { + typeUrl: '/circle.cctp.v1.MsgUpdateAttesterManager', + encode( + message: MsgUpdateAttesterManager, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.newAttesterManager !== '') { + writer.uint32(18).string(message.newAttesterManager); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateAttesterManager { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateAttesterManager(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.newAttesterManager = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateAttesterManager { + return { + from: isSet(object.from) ? String(object.from) : '', + newAttesterManager: isSet(object.newAttesterManager) + ? String(object.newAttesterManager) + : '', + }; + }, + toJSON( + message: MsgUpdateAttesterManager, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.newAttesterManager !== undefined && + (obj.newAttesterManager = message.newAttesterManager); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateAttesterManager { + const message = createBaseMsgUpdateAttesterManager(); + message.from = object.from ?? ''; + message.newAttesterManager = object.newAttesterManager ?? ''; + return message; + }, + fromProtoMsg( + message: MsgUpdateAttesterManagerProtoMsg, + ): MsgUpdateAttesterManager { + return MsgUpdateAttesterManager.decode(message.value); + }, + toProto(message: MsgUpdateAttesterManager): Uint8Array { + return MsgUpdateAttesterManager.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateAttesterManager, + ): MsgUpdateAttesterManagerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateAttesterManager', + value: MsgUpdateAttesterManager.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateAttesterManagerResponse(): MsgUpdateAttesterManagerResponse { + return {}; +} +export const MsgUpdateAttesterManagerResponse = { + typeUrl: '/circle.cctp.v1.MsgUpdateAttesterManagerResponse', + encode( + _: MsgUpdateAttesterManagerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateAttesterManagerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateAttesterManagerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateAttesterManagerResponse { + return {}; + }, + toJSON( + _: MsgUpdateAttesterManagerResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateAttesterManagerResponse { + const message = createBaseMsgUpdateAttesterManagerResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateAttesterManagerResponseProtoMsg, + ): MsgUpdateAttesterManagerResponse { + return MsgUpdateAttesterManagerResponse.decode(message.value); + }, + toProto(message: MsgUpdateAttesterManagerResponse): Uint8Array { + return MsgUpdateAttesterManagerResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateAttesterManagerResponse, + ): MsgUpdateAttesterManagerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateAttesterManagerResponse', + value: MsgUpdateAttesterManagerResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateTokenController(): MsgUpdateTokenController { + return { + from: '', + newTokenController: '', + }; +} +export const MsgUpdateTokenController = { + typeUrl: '/circle.cctp.v1.MsgUpdateTokenController', + encode( + message: MsgUpdateTokenController, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.newTokenController !== '') { + writer.uint32(18).string(message.newTokenController); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateTokenController { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateTokenController(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.newTokenController = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateTokenController { + return { + from: isSet(object.from) ? String(object.from) : '', + newTokenController: isSet(object.newTokenController) + ? String(object.newTokenController) + : '', + }; + }, + toJSON( + message: MsgUpdateTokenController, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.newTokenController !== undefined && + (obj.newTokenController = message.newTokenController); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateTokenController { + const message = createBaseMsgUpdateTokenController(); + message.from = object.from ?? ''; + message.newTokenController = object.newTokenController ?? ''; + return message; + }, + fromProtoMsg( + message: MsgUpdateTokenControllerProtoMsg, + ): MsgUpdateTokenController { + return MsgUpdateTokenController.decode(message.value); + }, + toProto(message: MsgUpdateTokenController): Uint8Array { + return MsgUpdateTokenController.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateTokenController, + ): MsgUpdateTokenControllerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateTokenController', + value: MsgUpdateTokenController.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateTokenControllerResponse(): MsgUpdateTokenControllerResponse { + return {}; +} +export const MsgUpdateTokenControllerResponse = { + typeUrl: '/circle.cctp.v1.MsgUpdateTokenControllerResponse', + encode( + _: MsgUpdateTokenControllerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateTokenControllerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateTokenControllerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateTokenControllerResponse { + return {}; + }, + toJSON( + _: MsgUpdateTokenControllerResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateTokenControllerResponse { + const message = createBaseMsgUpdateTokenControllerResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateTokenControllerResponseProtoMsg, + ): MsgUpdateTokenControllerResponse { + return MsgUpdateTokenControllerResponse.decode(message.value); + }, + toProto(message: MsgUpdateTokenControllerResponse): Uint8Array { + return MsgUpdateTokenControllerResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateTokenControllerResponse, + ): MsgUpdateTokenControllerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateTokenControllerResponse', + value: MsgUpdateTokenControllerResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdatePauser(): MsgUpdatePauser { + return { + from: '', + newPauser: '', + }; +} +export const MsgUpdatePauser = { + typeUrl: '/circle.cctp.v1.MsgUpdatePauser', + encode( + message: MsgUpdatePauser, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.newPauser !== '') { + writer.uint32(18).string(message.newPauser); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgUpdatePauser { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdatePauser(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.newPauser = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdatePauser { + return { + from: isSet(object.from) ? String(object.from) : '', + newPauser: isSet(object.newPauser) ? String(object.newPauser) : '', + }; + }, + toJSON(message: MsgUpdatePauser): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.newPauser !== undefined && (obj.newPauser = message.newPauser); + return obj; + }, + fromPartial(object: Partial): MsgUpdatePauser { + const message = createBaseMsgUpdatePauser(); + message.from = object.from ?? ''; + message.newPauser = object.newPauser ?? ''; + return message; + }, + fromProtoMsg(message: MsgUpdatePauserProtoMsg): MsgUpdatePauser { + return MsgUpdatePauser.decode(message.value); + }, + toProto(message: MsgUpdatePauser): Uint8Array { + return MsgUpdatePauser.encode(message).finish(); + }, + toProtoMsg(message: MsgUpdatePauser): MsgUpdatePauserProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdatePauser', + value: MsgUpdatePauser.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdatePauserResponse(): MsgUpdatePauserResponse { + return {}; +} +export const MsgUpdatePauserResponse = { + typeUrl: '/circle.cctp.v1.MsgUpdatePauserResponse', + encode( + _: MsgUpdatePauserResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdatePauserResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdatePauserResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdatePauserResponse { + return {}; + }, + toJSON(_: MsgUpdatePauserResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): MsgUpdatePauserResponse { + const message = createBaseMsgUpdatePauserResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdatePauserResponseProtoMsg, + ): MsgUpdatePauserResponse { + return MsgUpdatePauserResponse.decode(message.value); + }, + toProto(message: MsgUpdatePauserResponse): Uint8Array { + return MsgUpdatePauserResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdatePauserResponse, + ): MsgUpdatePauserResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdatePauserResponse', + value: MsgUpdatePauserResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgAcceptOwner(): MsgAcceptOwner { + return { + from: '', + }; +} +export const MsgAcceptOwner = { + typeUrl: '/circle.cctp.v1.MsgAcceptOwner', + encode( + message: MsgAcceptOwner, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgAcceptOwner { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAcceptOwner(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgAcceptOwner { + return { + from: isSet(object.from) ? String(object.from) : '', + }; + }, + toJSON(message: MsgAcceptOwner): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + return obj; + }, + fromPartial(object: Partial): MsgAcceptOwner { + const message = createBaseMsgAcceptOwner(); + message.from = object.from ?? ''; + return message; + }, + fromProtoMsg(message: MsgAcceptOwnerProtoMsg): MsgAcceptOwner { + return MsgAcceptOwner.decode(message.value); + }, + toProto(message: MsgAcceptOwner): Uint8Array { + return MsgAcceptOwner.encode(message).finish(); + }, + toProtoMsg(message: MsgAcceptOwner): MsgAcceptOwnerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgAcceptOwner', + value: MsgAcceptOwner.encode(message).finish(), + }; + }, +}; +function createBaseMsgAcceptOwnerResponse(): MsgAcceptOwnerResponse { + return {}; +} +export const MsgAcceptOwnerResponse = { + typeUrl: '/circle.cctp.v1.MsgAcceptOwnerResponse', + encode( + _: MsgAcceptOwnerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgAcceptOwnerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAcceptOwnerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgAcceptOwnerResponse { + return {}; + }, + toJSON(_: MsgAcceptOwnerResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): MsgAcceptOwnerResponse { + const message = createBaseMsgAcceptOwnerResponse(); + return message; + }, + fromProtoMsg( + message: MsgAcceptOwnerResponseProtoMsg, + ): MsgAcceptOwnerResponse { + return MsgAcceptOwnerResponse.decode(message.value); + }, + toProto(message: MsgAcceptOwnerResponse): Uint8Array { + return MsgAcceptOwnerResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgAcceptOwnerResponse): MsgAcceptOwnerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgAcceptOwnerResponse', + value: MsgAcceptOwnerResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgEnableAttester(): MsgEnableAttester { + return { + from: '', + attester: '', + }; +} +export const MsgEnableAttester = { + typeUrl: '/circle.cctp.v1.MsgEnableAttester', + encode( + message: MsgEnableAttester, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.attester !== '') { + writer.uint32(18).string(message.attester); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgEnableAttester { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgEnableAttester(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.attester = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgEnableAttester { + return { + from: isSet(object.from) ? String(object.from) : '', + attester: isSet(object.attester) ? String(object.attester) : '', + }; + }, + toJSON(message: MsgEnableAttester): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.attester !== undefined && (obj.attester = message.attester); + return obj; + }, + fromPartial(object: Partial): MsgEnableAttester { + const message = createBaseMsgEnableAttester(); + message.from = object.from ?? ''; + message.attester = object.attester ?? ''; + return message; + }, + fromProtoMsg(message: MsgEnableAttesterProtoMsg): MsgEnableAttester { + return MsgEnableAttester.decode(message.value); + }, + toProto(message: MsgEnableAttester): Uint8Array { + return MsgEnableAttester.encode(message).finish(); + }, + toProtoMsg(message: MsgEnableAttester): MsgEnableAttesterProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgEnableAttester', + value: MsgEnableAttester.encode(message).finish(), + }; + }, +}; +function createBaseMsgEnableAttesterResponse(): MsgEnableAttesterResponse { + return {}; +} +export const MsgEnableAttesterResponse = { + typeUrl: '/circle.cctp.v1.MsgEnableAttesterResponse', + encode( + _: MsgEnableAttesterResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgEnableAttesterResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgEnableAttesterResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgEnableAttesterResponse { + return {}; + }, + toJSON(_: MsgEnableAttesterResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgEnableAttesterResponse { + const message = createBaseMsgEnableAttesterResponse(); + return message; + }, + fromProtoMsg( + message: MsgEnableAttesterResponseProtoMsg, + ): MsgEnableAttesterResponse { + return MsgEnableAttesterResponse.decode(message.value); + }, + toProto(message: MsgEnableAttesterResponse): Uint8Array { + return MsgEnableAttesterResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgEnableAttesterResponse, + ): MsgEnableAttesterResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgEnableAttesterResponse', + value: MsgEnableAttesterResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgDisableAttester(): MsgDisableAttester { + return { + from: '', + attester: '', + }; +} +export const MsgDisableAttester = { + typeUrl: '/circle.cctp.v1.MsgDisableAttester', + encode( + message: MsgDisableAttester, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.attester !== '') { + writer.uint32(18).string(message.attester); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDisableAttester { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDisableAttester(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.attester = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgDisableAttester { + return { + from: isSet(object.from) ? String(object.from) : '', + attester: isSet(object.attester) ? String(object.attester) : '', + }; + }, + toJSON(message: MsgDisableAttester): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.attester !== undefined && (obj.attester = message.attester); + return obj; + }, + fromPartial(object: Partial): MsgDisableAttester { + const message = createBaseMsgDisableAttester(); + message.from = object.from ?? ''; + message.attester = object.attester ?? ''; + return message; + }, + fromProtoMsg(message: MsgDisableAttesterProtoMsg): MsgDisableAttester { + return MsgDisableAttester.decode(message.value); + }, + toProto(message: MsgDisableAttester): Uint8Array { + return MsgDisableAttester.encode(message).finish(); + }, + toProtoMsg(message: MsgDisableAttester): MsgDisableAttesterProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgDisableAttester', + value: MsgDisableAttester.encode(message).finish(), + }; + }, +}; +function createBaseMsgDisableAttesterResponse(): MsgDisableAttesterResponse { + return {}; +} +export const MsgDisableAttesterResponse = { + typeUrl: '/circle.cctp.v1.MsgDisableAttesterResponse', + encode( + _: MsgDisableAttesterResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDisableAttesterResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDisableAttesterResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgDisableAttesterResponse { + return {}; + }, + toJSON(_: MsgDisableAttesterResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgDisableAttesterResponse { + const message = createBaseMsgDisableAttesterResponse(); + return message; + }, + fromProtoMsg( + message: MsgDisableAttesterResponseProtoMsg, + ): MsgDisableAttesterResponse { + return MsgDisableAttesterResponse.decode(message.value); + }, + toProto(message: MsgDisableAttesterResponse): Uint8Array { + return MsgDisableAttesterResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgDisableAttesterResponse, + ): MsgDisableAttesterResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgDisableAttesterResponse', + value: MsgDisableAttesterResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgPauseBurningAndMinting(): MsgPauseBurningAndMinting { + return { + from: '', + }; +} +export const MsgPauseBurningAndMinting = { + typeUrl: '/circle.cctp.v1.MsgPauseBurningAndMinting', + encode( + message: MsgPauseBurningAndMinting, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgPauseBurningAndMinting { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgPauseBurningAndMinting(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgPauseBurningAndMinting { + return { + from: isSet(object.from) ? String(object.from) : '', + }; + }, + toJSON( + message: MsgPauseBurningAndMinting, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + return obj; + }, + fromPartial( + object: Partial, + ): MsgPauseBurningAndMinting { + const message = createBaseMsgPauseBurningAndMinting(); + message.from = object.from ?? ''; + return message; + }, + fromProtoMsg( + message: MsgPauseBurningAndMintingProtoMsg, + ): MsgPauseBurningAndMinting { + return MsgPauseBurningAndMinting.decode(message.value); + }, + toProto(message: MsgPauseBurningAndMinting): Uint8Array { + return MsgPauseBurningAndMinting.encode(message).finish(); + }, + toProtoMsg( + message: MsgPauseBurningAndMinting, + ): MsgPauseBurningAndMintingProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgPauseBurningAndMinting', + value: MsgPauseBurningAndMinting.encode(message).finish(), + }; + }, +}; +function createBaseMsgPauseBurningAndMintingResponse(): MsgPauseBurningAndMintingResponse { + return {}; +} +export const MsgPauseBurningAndMintingResponse = { + typeUrl: '/circle.cctp.v1.MsgPauseBurningAndMintingResponse', + encode( + _: MsgPauseBurningAndMintingResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgPauseBurningAndMintingResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgPauseBurningAndMintingResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgPauseBurningAndMintingResponse { + return {}; + }, + toJSON( + _: MsgPauseBurningAndMintingResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgPauseBurningAndMintingResponse { + const message = createBaseMsgPauseBurningAndMintingResponse(); + return message; + }, + fromProtoMsg( + message: MsgPauseBurningAndMintingResponseProtoMsg, + ): MsgPauseBurningAndMintingResponse { + return MsgPauseBurningAndMintingResponse.decode(message.value); + }, + toProto(message: MsgPauseBurningAndMintingResponse): Uint8Array { + return MsgPauseBurningAndMintingResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgPauseBurningAndMintingResponse, + ): MsgPauseBurningAndMintingResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgPauseBurningAndMintingResponse', + value: MsgPauseBurningAndMintingResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUnpauseBurningAndMinting(): MsgUnpauseBurningAndMinting { + return { + from: '', + }; +} +export const MsgUnpauseBurningAndMinting = { + typeUrl: '/circle.cctp.v1.MsgUnpauseBurningAndMinting', + encode( + message: MsgUnpauseBurningAndMinting, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUnpauseBurningAndMinting { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUnpauseBurningAndMinting(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUnpauseBurningAndMinting { + return { + from: isSet(object.from) ? String(object.from) : '', + }; + }, + toJSON( + message: MsgUnpauseBurningAndMinting, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUnpauseBurningAndMinting { + const message = createBaseMsgUnpauseBurningAndMinting(); + message.from = object.from ?? ''; + return message; + }, + fromProtoMsg( + message: MsgUnpauseBurningAndMintingProtoMsg, + ): MsgUnpauseBurningAndMinting { + return MsgUnpauseBurningAndMinting.decode(message.value); + }, + toProto(message: MsgUnpauseBurningAndMinting): Uint8Array { + return MsgUnpauseBurningAndMinting.encode(message).finish(); + }, + toProtoMsg( + message: MsgUnpauseBurningAndMinting, + ): MsgUnpauseBurningAndMintingProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUnpauseBurningAndMinting', + value: MsgUnpauseBurningAndMinting.encode(message).finish(), + }; + }, +}; +function createBaseMsgUnpauseBurningAndMintingResponse(): MsgUnpauseBurningAndMintingResponse { + return {}; +} +export const MsgUnpauseBurningAndMintingResponse = { + typeUrl: '/circle.cctp.v1.MsgUnpauseBurningAndMintingResponse', + encode( + _: MsgUnpauseBurningAndMintingResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUnpauseBurningAndMintingResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUnpauseBurningAndMintingResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUnpauseBurningAndMintingResponse { + return {}; + }, + toJSON( + _: MsgUnpauseBurningAndMintingResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUnpauseBurningAndMintingResponse { + const message = createBaseMsgUnpauseBurningAndMintingResponse(); + return message; + }, + fromProtoMsg( + message: MsgUnpauseBurningAndMintingResponseProtoMsg, + ): MsgUnpauseBurningAndMintingResponse { + return MsgUnpauseBurningAndMintingResponse.decode(message.value); + }, + toProto(message: MsgUnpauseBurningAndMintingResponse): Uint8Array { + return MsgUnpauseBurningAndMintingResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUnpauseBurningAndMintingResponse, + ): MsgUnpauseBurningAndMintingResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUnpauseBurningAndMintingResponse', + value: MsgUnpauseBurningAndMintingResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgPauseSendingAndReceivingMessages(): MsgPauseSendingAndReceivingMessages { + return { + from: '', + }; +} +export const MsgPauseSendingAndReceivingMessages = { + typeUrl: '/circle.cctp.v1.MsgPauseSendingAndReceivingMessages', + encode( + message: MsgPauseSendingAndReceivingMessages, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgPauseSendingAndReceivingMessages { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgPauseSendingAndReceivingMessages(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgPauseSendingAndReceivingMessages { + return { + from: isSet(object.from) ? String(object.from) : '', + }; + }, + toJSON( + message: MsgPauseSendingAndReceivingMessages, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + return obj; + }, + fromPartial( + object: Partial, + ): MsgPauseSendingAndReceivingMessages { + const message = createBaseMsgPauseSendingAndReceivingMessages(); + message.from = object.from ?? ''; + return message; + }, + fromProtoMsg( + message: MsgPauseSendingAndReceivingMessagesProtoMsg, + ): MsgPauseSendingAndReceivingMessages { + return MsgPauseSendingAndReceivingMessages.decode(message.value); + }, + toProto(message: MsgPauseSendingAndReceivingMessages): Uint8Array { + return MsgPauseSendingAndReceivingMessages.encode(message).finish(); + }, + toProtoMsg( + message: MsgPauseSendingAndReceivingMessages, + ): MsgPauseSendingAndReceivingMessagesProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgPauseSendingAndReceivingMessages', + value: MsgPauseSendingAndReceivingMessages.encode(message).finish(), + }; + }, +}; +function createBaseMsgPauseSendingAndReceivingMessagesResponse(): MsgPauseSendingAndReceivingMessagesResponse { + return {}; +} +export const MsgPauseSendingAndReceivingMessagesResponse = { + typeUrl: '/circle.cctp.v1.MsgPauseSendingAndReceivingMessagesResponse', + encode( + _: MsgPauseSendingAndReceivingMessagesResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgPauseSendingAndReceivingMessagesResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgPauseSendingAndReceivingMessagesResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgPauseSendingAndReceivingMessagesResponse { + return {}; + }, + toJSON( + _: MsgPauseSendingAndReceivingMessagesResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgPauseSendingAndReceivingMessagesResponse { + const message = createBaseMsgPauseSendingAndReceivingMessagesResponse(); + return message; + }, + fromProtoMsg( + message: MsgPauseSendingAndReceivingMessagesResponseProtoMsg, + ): MsgPauseSendingAndReceivingMessagesResponse { + return MsgPauseSendingAndReceivingMessagesResponse.decode(message.value); + }, + toProto(message: MsgPauseSendingAndReceivingMessagesResponse): Uint8Array { + return MsgPauseSendingAndReceivingMessagesResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgPauseSendingAndReceivingMessagesResponse, + ): MsgPauseSendingAndReceivingMessagesResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgPauseSendingAndReceivingMessagesResponse', + value: + MsgPauseSendingAndReceivingMessagesResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUnpauseSendingAndReceivingMessages(): MsgUnpauseSendingAndReceivingMessages { + return { + from: '', + }; +} +export const MsgUnpauseSendingAndReceivingMessages = { + typeUrl: '/circle.cctp.v1.MsgUnpauseSendingAndReceivingMessages', + encode( + message: MsgUnpauseSendingAndReceivingMessages, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUnpauseSendingAndReceivingMessages { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUnpauseSendingAndReceivingMessages(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUnpauseSendingAndReceivingMessages { + return { + from: isSet(object.from) ? String(object.from) : '', + }; + }, + toJSON( + message: MsgUnpauseSendingAndReceivingMessages, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUnpauseSendingAndReceivingMessages { + const message = createBaseMsgUnpauseSendingAndReceivingMessages(); + message.from = object.from ?? ''; + return message; + }, + fromProtoMsg( + message: MsgUnpauseSendingAndReceivingMessagesProtoMsg, + ): MsgUnpauseSendingAndReceivingMessages { + return MsgUnpauseSendingAndReceivingMessages.decode(message.value); + }, + toProto(message: MsgUnpauseSendingAndReceivingMessages): Uint8Array { + return MsgUnpauseSendingAndReceivingMessages.encode(message).finish(); + }, + toProtoMsg( + message: MsgUnpauseSendingAndReceivingMessages, + ): MsgUnpauseSendingAndReceivingMessagesProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUnpauseSendingAndReceivingMessages', + value: MsgUnpauseSendingAndReceivingMessages.encode(message).finish(), + }; + }, +}; +function createBaseMsgUnpauseSendingAndReceivingMessagesResponse(): MsgUnpauseSendingAndReceivingMessagesResponse { + return {}; +} +export const MsgUnpauseSendingAndReceivingMessagesResponse = { + typeUrl: '/circle.cctp.v1.MsgUnpauseSendingAndReceivingMessagesResponse', + encode( + _: MsgUnpauseSendingAndReceivingMessagesResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUnpauseSendingAndReceivingMessagesResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUnpauseSendingAndReceivingMessagesResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUnpauseSendingAndReceivingMessagesResponse { + return {}; + }, + toJSON( + _: MsgUnpauseSendingAndReceivingMessagesResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUnpauseSendingAndReceivingMessagesResponse { + const message = createBaseMsgUnpauseSendingAndReceivingMessagesResponse(); + return message; + }, + fromProtoMsg( + message: MsgUnpauseSendingAndReceivingMessagesResponseProtoMsg, + ): MsgUnpauseSendingAndReceivingMessagesResponse { + return MsgUnpauseSendingAndReceivingMessagesResponse.decode(message.value); + }, + toProto(message: MsgUnpauseSendingAndReceivingMessagesResponse): Uint8Array { + return MsgUnpauseSendingAndReceivingMessagesResponse.encode( + message, + ).finish(); + }, + toProtoMsg( + message: MsgUnpauseSendingAndReceivingMessagesResponse, + ): MsgUnpauseSendingAndReceivingMessagesResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUnpauseSendingAndReceivingMessagesResponse', + value: + MsgUnpauseSendingAndReceivingMessagesResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateMaxMessageBodySize(): MsgUpdateMaxMessageBodySize { + return { + from: '', + messageSize: BigInt(0), + }; +} +export const MsgUpdateMaxMessageBodySize = { + typeUrl: '/circle.cctp.v1.MsgUpdateMaxMessageBodySize', + encode( + message: MsgUpdateMaxMessageBodySize, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.messageSize !== BigInt(0)) { + writer.uint32(16).uint64(message.messageSize); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateMaxMessageBodySize { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateMaxMessageBodySize(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.messageSize = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateMaxMessageBodySize { + return { + from: isSet(object.from) ? String(object.from) : '', + messageSize: isSet(object.messageSize) + ? BigInt(object.messageSize.toString()) + : BigInt(0), + }; + }, + toJSON( + message: MsgUpdateMaxMessageBodySize, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.messageSize !== undefined && + (obj.messageSize = (message.messageSize || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateMaxMessageBodySize { + const message = createBaseMsgUpdateMaxMessageBodySize(); + message.from = object.from ?? ''; + message.messageSize = + object.messageSize !== undefined && object.messageSize !== null + ? BigInt(object.messageSize.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: MsgUpdateMaxMessageBodySizeProtoMsg, + ): MsgUpdateMaxMessageBodySize { + return MsgUpdateMaxMessageBodySize.decode(message.value); + }, + toProto(message: MsgUpdateMaxMessageBodySize): Uint8Array { + return MsgUpdateMaxMessageBodySize.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateMaxMessageBodySize, + ): MsgUpdateMaxMessageBodySizeProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateMaxMessageBodySize', + value: MsgUpdateMaxMessageBodySize.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateMaxMessageBodySizeResponse(): MsgUpdateMaxMessageBodySizeResponse { + return {}; +} +export const MsgUpdateMaxMessageBodySizeResponse = { + typeUrl: '/circle.cctp.v1.MsgUpdateMaxMessageBodySizeResponse', + encode( + _: MsgUpdateMaxMessageBodySizeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateMaxMessageBodySizeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateMaxMessageBodySizeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateMaxMessageBodySizeResponse { + return {}; + }, + toJSON( + _: MsgUpdateMaxMessageBodySizeResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateMaxMessageBodySizeResponse { + const message = createBaseMsgUpdateMaxMessageBodySizeResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateMaxMessageBodySizeResponseProtoMsg, + ): MsgUpdateMaxMessageBodySizeResponse { + return MsgUpdateMaxMessageBodySizeResponse.decode(message.value); + }, + toProto(message: MsgUpdateMaxMessageBodySizeResponse): Uint8Array { + return MsgUpdateMaxMessageBodySizeResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateMaxMessageBodySizeResponse, + ): MsgUpdateMaxMessageBodySizeResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateMaxMessageBodySizeResponse', + value: MsgUpdateMaxMessageBodySizeResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgSetMaxBurnAmountPerMessage(): MsgSetMaxBurnAmountPerMessage { + return { + from: '', + localToken: '', + amount: '', + }; +} +export const MsgSetMaxBurnAmountPerMessage = { + typeUrl: '/circle.cctp.v1.MsgSetMaxBurnAmountPerMessage', + encode( + message: MsgSetMaxBurnAmountPerMessage, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.localToken !== '') { + writer.uint32(18).string(message.localToken); + } + if (message.amount !== '') { + writer.uint32(26).string(message.amount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSetMaxBurnAmountPerMessage { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSetMaxBurnAmountPerMessage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.localToken = reader.string(); + break; + case 3: + message.amount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgSetMaxBurnAmountPerMessage { + return { + from: isSet(object.from) ? String(object.from) : '', + localToken: isSet(object.localToken) ? String(object.localToken) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + }; + }, + toJSON( + message: MsgSetMaxBurnAmountPerMessage, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.localToken !== undefined && (obj.localToken = message.localToken); + message.amount !== undefined && (obj.amount = message.amount); + return obj; + }, + fromPartial( + object: Partial, + ): MsgSetMaxBurnAmountPerMessage { + const message = createBaseMsgSetMaxBurnAmountPerMessage(); + message.from = object.from ?? ''; + message.localToken = object.localToken ?? ''; + message.amount = object.amount ?? ''; + return message; + }, + fromProtoMsg( + message: MsgSetMaxBurnAmountPerMessageProtoMsg, + ): MsgSetMaxBurnAmountPerMessage { + return MsgSetMaxBurnAmountPerMessage.decode(message.value); + }, + toProto(message: MsgSetMaxBurnAmountPerMessage): Uint8Array { + return MsgSetMaxBurnAmountPerMessage.encode(message).finish(); + }, + toProtoMsg( + message: MsgSetMaxBurnAmountPerMessage, + ): MsgSetMaxBurnAmountPerMessageProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgSetMaxBurnAmountPerMessage', + value: MsgSetMaxBurnAmountPerMessage.encode(message).finish(), + }; + }, +}; +function createBaseMsgSetMaxBurnAmountPerMessageResponse(): MsgSetMaxBurnAmountPerMessageResponse { + return {}; +} +export const MsgSetMaxBurnAmountPerMessageResponse = { + typeUrl: '/circle.cctp.v1.MsgSetMaxBurnAmountPerMessageResponse', + encode( + _: MsgSetMaxBurnAmountPerMessageResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSetMaxBurnAmountPerMessageResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSetMaxBurnAmountPerMessageResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgSetMaxBurnAmountPerMessageResponse { + return {}; + }, + toJSON( + _: MsgSetMaxBurnAmountPerMessageResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgSetMaxBurnAmountPerMessageResponse { + const message = createBaseMsgSetMaxBurnAmountPerMessageResponse(); + return message; + }, + fromProtoMsg( + message: MsgSetMaxBurnAmountPerMessageResponseProtoMsg, + ): MsgSetMaxBurnAmountPerMessageResponse { + return MsgSetMaxBurnAmountPerMessageResponse.decode(message.value); + }, + toProto(message: MsgSetMaxBurnAmountPerMessageResponse): Uint8Array { + return MsgSetMaxBurnAmountPerMessageResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgSetMaxBurnAmountPerMessageResponse, + ): MsgSetMaxBurnAmountPerMessageResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgSetMaxBurnAmountPerMessageResponse', + value: MsgSetMaxBurnAmountPerMessageResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgDepositForBurn(): MsgDepositForBurn { + return { + from: '', + amount: '', + destinationDomain: 0, + mintRecipient: new Uint8Array(), + burnToken: '', + }; +} +export const MsgDepositForBurn = { + typeUrl: '/circle.cctp.v1.MsgDepositForBurn', + encode( + message: MsgDepositForBurn, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + if (message.destinationDomain !== 0) { + writer.uint32(24).uint32(message.destinationDomain); + } + if (message.mintRecipient.length !== 0) { + writer.uint32(34).bytes(message.mintRecipient); + } + if (message.burnToken !== '') { + writer.uint32(42).string(message.burnToken); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgDepositForBurn { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDepositForBurn(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.amount = reader.string(); + break; + case 3: + message.destinationDomain = reader.uint32(); + break; + case 4: + message.mintRecipient = reader.bytes(); + break; + case 5: + message.burnToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgDepositForBurn { + return { + from: isSet(object.from) ? String(object.from) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + destinationDomain: isSet(object.destinationDomain) + ? Number(object.destinationDomain) + : 0, + mintRecipient: isSet(object.mintRecipient) + ? bytesFromBase64(object.mintRecipient) + : new Uint8Array(), + burnToken: isSet(object.burnToken) ? String(object.burnToken) : '', + }; + }, + toJSON(message: MsgDepositForBurn): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.amount !== undefined && (obj.amount = message.amount); + message.destinationDomain !== undefined && + (obj.destinationDomain = Math.round(message.destinationDomain)); + message.mintRecipient !== undefined && + (obj.mintRecipient = base64FromBytes( + message.mintRecipient !== undefined + ? message.mintRecipient + : new Uint8Array(), + )); + message.burnToken !== undefined && (obj.burnToken = message.burnToken); + return obj; + }, + fromPartial(object: Partial): MsgDepositForBurn { + const message = createBaseMsgDepositForBurn(); + message.from = object.from ?? ''; + message.amount = object.amount ?? ''; + message.destinationDomain = object.destinationDomain ?? 0; + message.mintRecipient = object.mintRecipient ?? new Uint8Array(); + message.burnToken = object.burnToken ?? ''; + return message; + }, + fromProtoMsg(message: MsgDepositForBurnProtoMsg): MsgDepositForBurn { + return MsgDepositForBurn.decode(message.value); + }, + toProto(message: MsgDepositForBurn): Uint8Array { + return MsgDepositForBurn.encode(message).finish(); + }, + toProtoMsg(message: MsgDepositForBurn): MsgDepositForBurnProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgDepositForBurn', + value: MsgDepositForBurn.encode(message).finish(), + }; + }, +}; +function createBaseMsgDepositForBurnResponse(): MsgDepositForBurnResponse { + return { + nonce: BigInt(0), + }; +} +export const MsgDepositForBurnResponse = { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnResponse', + encode( + message: MsgDepositForBurnResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nonce !== BigInt(0)) { + writer.uint32(8).uint64(message.nonce); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDepositForBurnResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDepositForBurnResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nonce = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgDepositForBurnResponse { + return { + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + }; + }, + toJSON( + message: MsgDepositForBurnResponse, + ): JsonSafe { + const obj: any = {}; + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): MsgDepositForBurnResponse { + const message = createBaseMsgDepositForBurnResponse(); + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: MsgDepositForBurnResponseProtoMsg, + ): MsgDepositForBurnResponse { + return MsgDepositForBurnResponse.decode(message.value); + }, + toProto(message: MsgDepositForBurnResponse): Uint8Array { + return MsgDepositForBurnResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgDepositForBurnResponse, + ): MsgDepositForBurnResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnResponse', + value: MsgDepositForBurnResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgDepositForBurnWithCaller(): MsgDepositForBurnWithCaller { + return { + from: '', + amount: '', + destinationDomain: 0, + mintRecipient: new Uint8Array(), + burnToken: '', + destinationCaller: new Uint8Array(), + }; +} +export const MsgDepositForBurnWithCaller = { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnWithCaller', + encode( + message: MsgDepositForBurnWithCaller, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + if (message.destinationDomain !== 0) { + writer.uint32(24).uint32(message.destinationDomain); + } + if (message.mintRecipient.length !== 0) { + writer.uint32(34).bytes(message.mintRecipient); + } + if (message.burnToken !== '') { + writer.uint32(42).string(message.burnToken); + } + if (message.destinationCaller.length !== 0) { + writer.uint32(50).bytes(message.destinationCaller); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDepositForBurnWithCaller { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDepositForBurnWithCaller(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.amount = reader.string(); + break; + case 3: + message.destinationDomain = reader.uint32(); + break; + case 4: + message.mintRecipient = reader.bytes(); + break; + case 5: + message.burnToken = reader.string(); + break; + case 6: + message.destinationCaller = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgDepositForBurnWithCaller { + return { + from: isSet(object.from) ? String(object.from) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + destinationDomain: isSet(object.destinationDomain) + ? Number(object.destinationDomain) + : 0, + mintRecipient: isSet(object.mintRecipient) + ? bytesFromBase64(object.mintRecipient) + : new Uint8Array(), + burnToken: isSet(object.burnToken) ? String(object.burnToken) : '', + destinationCaller: isSet(object.destinationCaller) + ? bytesFromBase64(object.destinationCaller) + : new Uint8Array(), + }; + }, + toJSON( + message: MsgDepositForBurnWithCaller, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.amount !== undefined && (obj.amount = message.amount); + message.destinationDomain !== undefined && + (obj.destinationDomain = Math.round(message.destinationDomain)); + message.mintRecipient !== undefined && + (obj.mintRecipient = base64FromBytes( + message.mintRecipient !== undefined + ? message.mintRecipient + : new Uint8Array(), + )); + message.burnToken !== undefined && (obj.burnToken = message.burnToken); + message.destinationCaller !== undefined && + (obj.destinationCaller = base64FromBytes( + message.destinationCaller !== undefined + ? message.destinationCaller + : new Uint8Array(), + )); + return obj; + }, + fromPartial( + object: Partial, + ): MsgDepositForBurnWithCaller { + const message = createBaseMsgDepositForBurnWithCaller(); + message.from = object.from ?? ''; + message.amount = object.amount ?? ''; + message.destinationDomain = object.destinationDomain ?? 0; + message.mintRecipient = object.mintRecipient ?? new Uint8Array(); + message.burnToken = object.burnToken ?? ''; + message.destinationCaller = object.destinationCaller ?? new Uint8Array(); + return message; + }, + fromProtoMsg( + message: MsgDepositForBurnWithCallerProtoMsg, + ): MsgDepositForBurnWithCaller { + return MsgDepositForBurnWithCaller.decode(message.value); + }, + toProto(message: MsgDepositForBurnWithCaller): Uint8Array { + return MsgDepositForBurnWithCaller.encode(message).finish(); + }, + toProtoMsg( + message: MsgDepositForBurnWithCaller, + ): MsgDepositForBurnWithCallerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnWithCaller', + value: MsgDepositForBurnWithCaller.encode(message).finish(), + }; + }, +}; +function createBaseMsgDepositForBurnWithCallerResponse(): MsgDepositForBurnWithCallerResponse { + return { + nonce: BigInt(0), + }; +} +export const MsgDepositForBurnWithCallerResponse = { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnWithCallerResponse', + encode( + message: MsgDepositForBurnWithCallerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nonce !== BigInt(0)) { + writer.uint32(8).uint64(message.nonce); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDepositForBurnWithCallerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDepositForBurnWithCallerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nonce = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgDepositForBurnWithCallerResponse { + return { + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + }; + }, + toJSON( + message: MsgDepositForBurnWithCallerResponse, + ): JsonSafe { + const obj: any = {}; + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): MsgDepositForBurnWithCallerResponse { + const message = createBaseMsgDepositForBurnWithCallerResponse(); + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: MsgDepositForBurnWithCallerResponseProtoMsg, + ): MsgDepositForBurnWithCallerResponse { + return MsgDepositForBurnWithCallerResponse.decode(message.value); + }, + toProto(message: MsgDepositForBurnWithCallerResponse): Uint8Array { + return MsgDepositForBurnWithCallerResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgDepositForBurnWithCallerResponse, + ): MsgDepositForBurnWithCallerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgDepositForBurnWithCallerResponse', + value: MsgDepositForBurnWithCallerResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgReplaceDepositForBurn(): MsgReplaceDepositForBurn { + return { + from: '', + originalMessage: new Uint8Array(), + originalAttestation: new Uint8Array(), + newDestinationCaller: new Uint8Array(), + newMintRecipient: new Uint8Array(), + }; +} +export const MsgReplaceDepositForBurn = { + typeUrl: '/circle.cctp.v1.MsgReplaceDepositForBurn', + encode( + message: MsgReplaceDepositForBurn, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.originalMessage.length !== 0) { + writer.uint32(18).bytes(message.originalMessage); + } + if (message.originalAttestation.length !== 0) { + writer.uint32(26).bytes(message.originalAttestation); + } + if (message.newDestinationCaller.length !== 0) { + writer.uint32(34).bytes(message.newDestinationCaller); + } + if (message.newMintRecipient.length !== 0) { + writer.uint32(42).bytes(message.newMintRecipient); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgReplaceDepositForBurn { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgReplaceDepositForBurn(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.originalMessage = reader.bytes(); + break; + case 3: + message.originalAttestation = reader.bytes(); + break; + case 4: + message.newDestinationCaller = reader.bytes(); + break; + case 5: + message.newMintRecipient = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgReplaceDepositForBurn { + return { + from: isSet(object.from) ? String(object.from) : '', + originalMessage: isSet(object.originalMessage) + ? bytesFromBase64(object.originalMessage) + : new Uint8Array(), + originalAttestation: isSet(object.originalAttestation) + ? bytesFromBase64(object.originalAttestation) + : new Uint8Array(), + newDestinationCaller: isSet(object.newDestinationCaller) + ? bytesFromBase64(object.newDestinationCaller) + : new Uint8Array(), + newMintRecipient: isSet(object.newMintRecipient) + ? bytesFromBase64(object.newMintRecipient) + : new Uint8Array(), + }; + }, + toJSON( + message: MsgReplaceDepositForBurn, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.originalMessage !== undefined && + (obj.originalMessage = base64FromBytes( + message.originalMessage !== undefined + ? message.originalMessage + : new Uint8Array(), + )); + message.originalAttestation !== undefined && + (obj.originalAttestation = base64FromBytes( + message.originalAttestation !== undefined + ? message.originalAttestation + : new Uint8Array(), + )); + message.newDestinationCaller !== undefined && + (obj.newDestinationCaller = base64FromBytes( + message.newDestinationCaller !== undefined + ? message.newDestinationCaller + : new Uint8Array(), + )); + message.newMintRecipient !== undefined && + (obj.newMintRecipient = base64FromBytes( + message.newMintRecipient !== undefined + ? message.newMintRecipient + : new Uint8Array(), + )); + return obj; + }, + fromPartial( + object: Partial, + ): MsgReplaceDepositForBurn { + const message = createBaseMsgReplaceDepositForBurn(); + message.from = object.from ?? ''; + message.originalMessage = object.originalMessage ?? new Uint8Array(); + message.originalAttestation = + object.originalAttestation ?? new Uint8Array(); + message.newDestinationCaller = + object.newDestinationCaller ?? new Uint8Array(); + message.newMintRecipient = object.newMintRecipient ?? new Uint8Array(); + return message; + }, + fromProtoMsg( + message: MsgReplaceDepositForBurnProtoMsg, + ): MsgReplaceDepositForBurn { + return MsgReplaceDepositForBurn.decode(message.value); + }, + toProto(message: MsgReplaceDepositForBurn): Uint8Array { + return MsgReplaceDepositForBurn.encode(message).finish(); + }, + toProtoMsg( + message: MsgReplaceDepositForBurn, + ): MsgReplaceDepositForBurnProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgReplaceDepositForBurn', + value: MsgReplaceDepositForBurn.encode(message).finish(), + }; + }, +}; +function createBaseMsgReplaceDepositForBurnResponse(): MsgReplaceDepositForBurnResponse { + return {}; +} +export const MsgReplaceDepositForBurnResponse = { + typeUrl: '/circle.cctp.v1.MsgReplaceDepositForBurnResponse', + encode( + _: MsgReplaceDepositForBurnResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgReplaceDepositForBurnResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgReplaceDepositForBurnResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgReplaceDepositForBurnResponse { + return {}; + }, + toJSON( + _: MsgReplaceDepositForBurnResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgReplaceDepositForBurnResponse { + const message = createBaseMsgReplaceDepositForBurnResponse(); + return message; + }, + fromProtoMsg( + message: MsgReplaceDepositForBurnResponseProtoMsg, + ): MsgReplaceDepositForBurnResponse { + return MsgReplaceDepositForBurnResponse.decode(message.value); + }, + toProto(message: MsgReplaceDepositForBurnResponse): Uint8Array { + return MsgReplaceDepositForBurnResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgReplaceDepositForBurnResponse, + ): MsgReplaceDepositForBurnResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgReplaceDepositForBurnResponse', + value: MsgReplaceDepositForBurnResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgReceiveMessage(): MsgReceiveMessage { + return { + from: '', + message: new Uint8Array(), + attestation: new Uint8Array(), + }; +} +export const MsgReceiveMessage = { + typeUrl: '/circle.cctp.v1.MsgReceiveMessage', + encode( + message: MsgReceiveMessage, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.message.length !== 0) { + writer.uint32(18).bytes(message.message); + } + if (message.attestation.length !== 0) { + writer.uint32(26).bytes(message.attestation); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgReceiveMessage { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgReceiveMessage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.message = reader.bytes(); + break; + case 3: + message.attestation = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgReceiveMessage { + return { + from: isSet(object.from) ? String(object.from) : '', + message: isSet(object.message) + ? bytesFromBase64(object.message) + : new Uint8Array(), + attestation: isSet(object.attestation) + ? bytesFromBase64(object.attestation) + : new Uint8Array(), + }; + }, + toJSON(message: MsgReceiveMessage): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.message !== undefined && + (obj.message = base64FromBytes( + message.message !== undefined ? message.message : new Uint8Array(), + )); + message.attestation !== undefined && + (obj.attestation = base64FromBytes( + message.attestation !== undefined + ? message.attestation + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): MsgReceiveMessage { + const message = createBaseMsgReceiveMessage(); + message.from = object.from ?? ''; + message.message = object.message ?? new Uint8Array(); + message.attestation = object.attestation ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: MsgReceiveMessageProtoMsg): MsgReceiveMessage { + return MsgReceiveMessage.decode(message.value); + }, + toProto(message: MsgReceiveMessage): Uint8Array { + return MsgReceiveMessage.encode(message).finish(); + }, + toProtoMsg(message: MsgReceiveMessage): MsgReceiveMessageProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgReceiveMessage', + value: MsgReceiveMessage.encode(message).finish(), + }; + }, +}; +function createBaseMsgReceiveMessageResponse(): MsgReceiveMessageResponse { + return { + success: false, + }; +} +export const MsgReceiveMessageResponse = { + typeUrl: '/circle.cctp.v1.MsgReceiveMessageResponse', + encode( + message: MsgReceiveMessageResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.success === true) { + writer.uint32(8).bool(message.success); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgReceiveMessageResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgReceiveMessageResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.success = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgReceiveMessageResponse { + return { + success: isSet(object.success) ? Boolean(object.success) : false, + }; + }, + toJSON( + message: MsgReceiveMessageResponse, + ): JsonSafe { + const obj: any = {}; + message.success !== undefined && (obj.success = message.success); + return obj; + }, + fromPartial( + object: Partial, + ): MsgReceiveMessageResponse { + const message = createBaseMsgReceiveMessageResponse(); + message.success = object.success ?? false; + return message; + }, + fromProtoMsg( + message: MsgReceiveMessageResponseProtoMsg, + ): MsgReceiveMessageResponse { + return MsgReceiveMessageResponse.decode(message.value); + }, + toProto(message: MsgReceiveMessageResponse): Uint8Array { + return MsgReceiveMessageResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgReceiveMessageResponse, + ): MsgReceiveMessageResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgReceiveMessageResponse', + value: MsgReceiveMessageResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgSendMessage(): MsgSendMessage { + return { + from: '', + destinationDomain: 0, + recipient: new Uint8Array(), + messageBody: new Uint8Array(), + }; +} +export const MsgSendMessage = { + typeUrl: '/circle.cctp.v1.MsgSendMessage', + encode( + message: MsgSendMessage, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.destinationDomain !== 0) { + writer.uint32(16).uint32(message.destinationDomain); + } + if (message.recipient.length !== 0) { + writer.uint32(26).bytes(message.recipient); + } + if (message.messageBody.length !== 0) { + writer.uint32(34).bytes(message.messageBody); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgSendMessage { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSendMessage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.destinationDomain = reader.uint32(); + break; + case 3: + message.recipient = reader.bytes(); + break; + case 4: + message.messageBody = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgSendMessage { + return { + from: isSet(object.from) ? String(object.from) : '', + destinationDomain: isSet(object.destinationDomain) + ? Number(object.destinationDomain) + : 0, + recipient: isSet(object.recipient) + ? bytesFromBase64(object.recipient) + : new Uint8Array(), + messageBody: isSet(object.messageBody) + ? bytesFromBase64(object.messageBody) + : new Uint8Array(), + }; + }, + toJSON(message: MsgSendMessage): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.destinationDomain !== undefined && + (obj.destinationDomain = Math.round(message.destinationDomain)); + message.recipient !== undefined && + (obj.recipient = base64FromBytes( + message.recipient !== undefined ? message.recipient : new Uint8Array(), + )); + message.messageBody !== undefined && + (obj.messageBody = base64FromBytes( + message.messageBody !== undefined + ? message.messageBody + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): MsgSendMessage { + const message = createBaseMsgSendMessage(); + message.from = object.from ?? ''; + message.destinationDomain = object.destinationDomain ?? 0; + message.recipient = object.recipient ?? new Uint8Array(); + message.messageBody = object.messageBody ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: MsgSendMessageProtoMsg): MsgSendMessage { + return MsgSendMessage.decode(message.value); + }, + toProto(message: MsgSendMessage): Uint8Array { + return MsgSendMessage.encode(message).finish(); + }, + toProtoMsg(message: MsgSendMessage): MsgSendMessageProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgSendMessage', + value: MsgSendMessage.encode(message).finish(), + }; + }, +}; +function createBaseMsgSendMessageResponse(): MsgSendMessageResponse { + return { + nonce: BigInt(0), + }; +} +export const MsgSendMessageResponse = { + typeUrl: '/circle.cctp.v1.MsgSendMessageResponse', + encode( + message: MsgSendMessageResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nonce !== BigInt(0)) { + writer.uint32(8).uint64(message.nonce); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSendMessageResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSendMessageResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nonce = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgSendMessageResponse { + return { + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + }; + }, + toJSON(message: MsgSendMessageResponse): JsonSafe { + const obj: any = {}; + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): MsgSendMessageResponse { + const message = createBaseMsgSendMessageResponse(); + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: MsgSendMessageResponseProtoMsg, + ): MsgSendMessageResponse { + return MsgSendMessageResponse.decode(message.value); + }, + toProto(message: MsgSendMessageResponse): Uint8Array { + return MsgSendMessageResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgSendMessageResponse): MsgSendMessageResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgSendMessageResponse', + value: MsgSendMessageResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgSendMessageWithCaller(): MsgSendMessageWithCaller { + return { + from: '', + destinationDomain: 0, + recipient: new Uint8Array(), + messageBody: new Uint8Array(), + destinationCaller: new Uint8Array(), + }; +} +export const MsgSendMessageWithCaller = { + typeUrl: '/circle.cctp.v1.MsgSendMessageWithCaller', + encode( + message: MsgSendMessageWithCaller, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.destinationDomain !== 0) { + writer.uint32(16).uint32(message.destinationDomain); + } + if (message.recipient.length !== 0) { + writer.uint32(26).bytes(message.recipient); + } + if (message.messageBody.length !== 0) { + writer.uint32(34).bytes(message.messageBody); + } + if (message.destinationCaller.length !== 0) { + writer.uint32(42).bytes(message.destinationCaller); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSendMessageWithCaller { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSendMessageWithCaller(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.destinationDomain = reader.uint32(); + break; + case 3: + message.recipient = reader.bytes(); + break; + case 4: + message.messageBody = reader.bytes(); + break; + case 5: + message.destinationCaller = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgSendMessageWithCaller { + return { + from: isSet(object.from) ? String(object.from) : '', + destinationDomain: isSet(object.destinationDomain) + ? Number(object.destinationDomain) + : 0, + recipient: isSet(object.recipient) + ? bytesFromBase64(object.recipient) + : new Uint8Array(), + messageBody: isSet(object.messageBody) + ? bytesFromBase64(object.messageBody) + : new Uint8Array(), + destinationCaller: isSet(object.destinationCaller) + ? bytesFromBase64(object.destinationCaller) + : new Uint8Array(), + }; + }, + toJSON( + message: MsgSendMessageWithCaller, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.destinationDomain !== undefined && + (obj.destinationDomain = Math.round(message.destinationDomain)); + message.recipient !== undefined && + (obj.recipient = base64FromBytes( + message.recipient !== undefined ? message.recipient : new Uint8Array(), + )); + message.messageBody !== undefined && + (obj.messageBody = base64FromBytes( + message.messageBody !== undefined + ? message.messageBody + : new Uint8Array(), + )); + message.destinationCaller !== undefined && + (obj.destinationCaller = base64FromBytes( + message.destinationCaller !== undefined + ? message.destinationCaller + : new Uint8Array(), + )); + return obj; + }, + fromPartial( + object: Partial, + ): MsgSendMessageWithCaller { + const message = createBaseMsgSendMessageWithCaller(); + message.from = object.from ?? ''; + message.destinationDomain = object.destinationDomain ?? 0; + message.recipient = object.recipient ?? new Uint8Array(); + message.messageBody = object.messageBody ?? new Uint8Array(); + message.destinationCaller = object.destinationCaller ?? new Uint8Array(); + return message; + }, + fromProtoMsg( + message: MsgSendMessageWithCallerProtoMsg, + ): MsgSendMessageWithCaller { + return MsgSendMessageWithCaller.decode(message.value); + }, + toProto(message: MsgSendMessageWithCaller): Uint8Array { + return MsgSendMessageWithCaller.encode(message).finish(); + }, + toProtoMsg( + message: MsgSendMessageWithCaller, + ): MsgSendMessageWithCallerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgSendMessageWithCaller', + value: MsgSendMessageWithCaller.encode(message).finish(), + }; + }, +}; +function createBaseMsgSendMessageWithCallerResponse(): MsgSendMessageWithCallerResponse { + return { + nonce: BigInt(0), + }; +} +export const MsgSendMessageWithCallerResponse = { + typeUrl: '/circle.cctp.v1.MsgSendMessageWithCallerResponse', + encode( + message: MsgSendMessageWithCallerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nonce !== BigInt(0)) { + writer.uint32(8).uint64(message.nonce); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSendMessageWithCallerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSendMessageWithCallerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nonce = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgSendMessageWithCallerResponse { + return { + nonce: isSet(object.nonce) ? BigInt(object.nonce.toString()) : BigInt(0), + }; + }, + toJSON( + message: MsgSendMessageWithCallerResponse, + ): JsonSafe { + const obj: any = {}; + message.nonce !== undefined && + (obj.nonce = (message.nonce || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): MsgSendMessageWithCallerResponse { + const message = createBaseMsgSendMessageWithCallerResponse(); + message.nonce = + object.nonce !== undefined && object.nonce !== null + ? BigInt(object.nonce.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: MsgSendMessageWithCallerResponseProtoMsg, + ): MsgSendMessageWithCallerResponse { + return MsgSendMessageWithCallerResponse.decode(message.value); + }, + toProto(message: MsgSendMessageWithCallerResponse): Uint8Array { + return MsgSendMessageWithCallerResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgSendMessageWithCallerResponse, + ): MsgSendMessageWithCallerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgSendMessageWithCallerResponse', + value: MsgSendMessageWithCallerResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgReplaceMessage(): MsgReplaceMessage { + return { + from: '', + originalMessage: new Uint8Array(), + originalAttestation: new Uint8Array(), + newMessageBody: new Uint8Array(), + newDestinationCaller: new Uint8Array(), + }; +} +export const MsgReplaceMessage = { + typeUrl: '/circle.cctp.v1.MsgReplaceMessage', + encode( + message: MsgReplaceMessage, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.originalMessage.length !== 0) { + writer.uint32(18).bytes(message.originalMessage); + } + if (message.originalAttestation.length !== 0) { + writer.uint32(26).bytes(message.originalAttestation); + } + if (message.newMessageBody.length !== 0) { + writer.uint32(34).bytes(message.newMessageBody); + } + if (message.newDestinationCaller.length !== 0) { + writer.uint32(42).bytes(message.newDestinationCaller); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgReplaceMessage { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgReplaceMessage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.originalMessage = reader.bytes(); + break; + case 3: + message.originalAttestation = reader.bytes(); + break; + case 4: + message.newMessageBody = reader.bytes(); + break; + case 5: + message.newDestinationCaller = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgReplaceMessage { + return { + from: isSet(object.from) ? String(object.from) : '', + originalMessage: isSet(object.originalMessage) + ? bytesFromBase64(object.originalMessage) + : new Uint8Array(), + originalAttestation: isSet(object.originalAttestation) + ? bytesFromBase64(object.originalAttestation) + : new Uint8Array(), + newMessageBody: isSet(object.newMessageBody) + ? bytesFromBase64(object.newMessageBody) + : new Uint8Array(), + newDestinationCaller: isSet(object.newDestinationCaller) + ? bytesFromBase64(object.newDestinationCaller) + : new Uint8Array(), + }; + }, + toJSON(message: MsgReplaceMessage): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.originalMessage !== undefined && + (obj.originalMessage = base64FromBytes( + message.originalMessage !== undefined + ? message.originalMessage + : new Uint8Array(), + )); + message.originalAttestation !== undefined && + (obj.originalAttestation = base64FromBytes( + message.originalAttestation !== undefined + ? message.originalAttestation + : new Uint8Array(), + )); + message.newMessageBody !== undefined && + (obj.newMessageBody = base64FromBytes( + message.newMessageBody !== undefined + ? message.newMessageBody + : new Uint8Array(), + )); + message.newDestinationCaller !== undefined && + (obj.newDestinationCaller = base64FromBytes( + message.newDestinationCaller !== undefined + ? message.newDestinationCaller + : new Uint8Array(), + )); + return obj; + }, + fromPartial(object: Partial): MsgReplaceMessage { + const message = createBaseMsgReplaceMessage(); + message.from = object.from ?? ''; + message.originalMessage = object.originalMessage ?? new Uint8Array(); + message.originalAttestation = + object.originalAttestation ?? new Uint8Array(); + message.newMessageBody = object.newMessageBody ?? new Uint8Array(); + message.newDestinationCaller = + object.newDestinationCaller ?? new Uint8Array(); + return message; + }, + fromProtoMsg(message: MsgReplaceMessageProtoMsg): MsgReplaceMessage { + return MsgReplaceMessage.decode(message.value); + }, + toProto(message: MsgReplaceMessage): Uint8Array { + return MsgReplaceMessage.encode(message).finish(); + }, + toProtoMsg(message: MsgReplaceMessage): MsgReplaceMessageProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgReplaceMessage', + value: MsgReplaceMessage.encode(message).finish(), + }; + }, +}; +function createBaseMsgReplaceMessageResponse(): MsgReplaceMessageResponse { + return {}; +} +export const MsgReplaceMessageResponse = { + typeUrl: '/circle.cctp.v1.MsgReplaceMessageResponse', + encode( + _: MsgReplaceMessageResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgReplaceMessageResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgReplaceMessageResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgReplaceMessageResponse { + return {}; + }, + toJSON(_: MsgReplaceMessageResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgReplaceMessageResponse { + const message = createBaseMsgReplaceMessageResponse(); + return message; + }, + fromProtoMsg( + message: MsgReplaceMessageResponseProtoMsg, + ): MsgReplaceMessageResponse { + return MsgReplaceMessageResponse.decode(message.value); + }, + toProto(message: MsgReplaceMessageResponse): Uint8Array { + return MsgReplaceMessageResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgReplaceMessageResponse, + ): MsgReplaceMessageResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgReplaceMessageResponse', + value: MsgReplaceMessageResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateSignatureThreshold(): MsgUpdateSignatureThreshold { + return { + from: '', + amount: 0, + }; +} +export const MsgUpdateSignatureThreshold = { + typeUrl: '/circle.cctp.v1.MsgUpdateSignatureThreshold', + encode( + message: MsgUpdateSignatureThreshold, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.amount !== 0) { + writer.uint32(16).uint32(message.amount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateSignatureThreshold { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateSignatureThreshold(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.amount = reader.uint32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateSignatureThreshold { + return { + from: isSet(object.from) ? String(object.from) : '', + amount: isSet(object.amount) ? Number(object.amount) : 0, + }; + }, + toJSON( + message: MsgUpdateSignatureThreshold, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.amount !== undefined && (obj.amount = Math.round(message.amount)); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateSignatureThreshold { + const message = createBaseMsgUpdateSignatureThreshold(); + message.from = object.from ?? ''; + message.amount = object.amount ?? 0; + return message; + }, + fromProtoMsg( + message: MsgUpdateSignatureThresholdProtoMsg, + ): MsgUpdateSignatureThreshold { + return MsgUpdateSignatureThreshold.decode(message.value); + }, + toProto(message: MsgUpdateSignatureThreshold): Uint8Array { + return MsgUpdateSignatureThreshold.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateSignatureThreshold, + ): MsgUpdateSignatureThresholdProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateSignatureThreshold', + value: MsgUpdateSignatureThreshold.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateSignatureThresholdResponse(): MsgUpdateSignatureThresholdResponse { + return {}; +} +export const MsgUpdateSignatureThresholdResponse = { + typeUrl: '/circle.cctp.v1.MsgUpdateSignatureThresholdResponse', + encode( + _: MsgUpdateSignatureThresholdResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateSignatureThresholdResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateSignatureThresholdResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateSignatureThresholdResponse { + return {}; + }, + toJSON( + _: MsgUpdateSignatureThresholdResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateSignatureThresholdResponse { + const message = createBaseMsgUpdateSignatureThresholdResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateSignatureThresholdResponseProtoMsg, + ): MsgUpdateSignatureThresholdResponse { + return MsgUpdateSignatureThresholdResponse.decode(message.value); + }, + toProto(message: MsgUpdateSignatureThresholdResponse): Uint8Array { + return MsgUpdateSignatureThresholdResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateSignatureThresholdResponse, + ): MsgUpdateSignatureThresholdResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUpdateSignatureThresholdResponse', + value: MsgUpdateSignatureThresholdResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgLinkTokenPair(): MsgLinkTokenPair { + return { + from: '', + remoteDomain: 0, + remoteToken: new Uint8Array(), + localToken: '', + }; +} +export const MsgLinkTokenPair = { + typeUrl: '/circle.cctp.v1.MsgLinkTokenPair', + encode( + message: MsgLinkTokenPair, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.remoteDomain !== 0) { + writer.uint32(16).uint32(message.remoteDomain); + } + if (message.remoteToken.length !== 0) { + writer.uint32(26).bytes(message.remoteToken); + } + if (message.localToken !== '') { + writer.uint32(34).string(message.localToken); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgLinkTokenPair { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLinkTokenPair(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.remoteDomain = reader.uint32(); + break; + case 3: + message.remoteToken = reader.bytes(); + break; + case 4: + message.localToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLinkTokenPair { + return { + from: isSet(object.from) ? String(object.from) : '', + remoteDomain: isSet(object.remoteDomain) + ? Number(object.remoteDomain) + : 0, + remoteToken: isSet(object.remoteToken) + ? bytesFromBase64(object.remoteToken) + : new Uint8Array(), + localToken: isSet(object.localToken) ? String(object.localToken) : '', + }; + }, + toJSON(message: MsgLinkTokenPair): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.remoteDomain !== undefined && + (obj.remoteDomain = Math.round(message.remoteDomain)); + message.remoteToken !== undefined && + (obj.remoteToken = base64FromBytes( + message.remoteToken !== undefined + ? message.remoteToken + : new Uint8Array(), + )); + message.localToken !== undefined && (obj.localToken = message.localToken); + return obj; + }, + fromPartial(object: Partial): MsgLinkTokenPair { + const message = createBaseMsgLinkTokenPair(); + message.from = object.from ?? ''; + message.remoteDomain = object.remoteDomain ?? 0; + message.remoteToken = object.remoteToken ?? new Uint8Array(); + message.localToken = object.localToken ?? ''; + return message; + }, + fromProtoMsg(message: MsgLinkTokenPairProtoMsg): MsgLinkTokenPair { + return MsgLinkTokenPair.decode(message.value); + }, + toProto(message: MsgLinkTokenPair): Uint8Array { + return MsgLinkTokenPair.encode(message).finish(); + }, + toProtoMsg(message: MsgLinkTokenPair): MsgLinkTokenPairProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgLinkTokenPair', + value: MsgLinkTokenPair.encode(message).finish(), + }; + }, +}; +function createBaseMsgLinkTokenPairResponse(): MsgLinkTokenPairResponse { + return {}; +} +export const MsgLinkTokenPairResponse = { + typeUrl: '/circle.cctp.v1.MsgLinkTokenPairResponse', + encode( + _: MsgLinkTokenPairResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgLinkTokenPairResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLinkTokenPairResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgLinkTokenPairResponse { + return {}; + }, + toJSON(_: MsgLinkTokenPairResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): MsgLinkTokenPairResponse { + const message = createBaseMsgLinkTokenPairResponse(); + return message; + }, + fromProtoMsg( + message: MsgLinkTokenPairResponseProtoMsg, + ): MsgLinkTokenPairResponse { + return MsgLinkTokenPairResponse.decode(message.value); + }, + toProto(message: MsgLinkTokenPairResponse): Uint8Array { + return MsgLinkTokenPairResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgLinkTokenPairResponse, + ): MsgLinkTokenPairResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgLinkTokenPairResponse', + value: MsgLinkTokenPairResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUnlinkTokenPair(): MsgUnlinkTokenPair { + return { + from: '', + remoteDomain: 0, + remoteToken: new Uint8Array(), + localToken: '', + }; +} +export const MsgUnlinkTokenPair = { + typeUrl: '/circle.cctp.v1.MsgUnlinkTokenPair', + encode( + message: MsgUnlinkTokenPair, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.remoteDomain !== 0) { + writer.uint32(16).uint32(message.remoteDomain); + } + if (message.remoteToken.length !== 0) { + writer.uint32(26).bytes(message.remoteToken); + } + if (message.localToken !== '') { + writer.uint32(34).string(message.localToken); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUnlinkTokenPair { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUnlinkTokenPair(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.remoteDomain = reader.uint32(); + break; + case 3: + message.remoteToken = reader.bytes(); + break; + case 4: + message.localToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUnlinkTokenPair { + return { + from: isSet(object.from) ? String(object.from) : '', + remoteDomain: isSet(object.remoteDomain) + ? Number(object.remoteDomain) + : 0, + remoteToken: isSet(object.remoteToken) + ? bytesFromBase64(object.remoteToken) + : new Uint8Array(), + localToken: isSet(object.localToken) ? String(object.localToken) : '', + }; + }, + toJSON(message: MsgUnlinkTokenPair): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.remoteDomain !== undefined && + (obj.remoteDomain = Math.round(message.remoteDomain)); + message.remoteToken !== undefined && + (obj.remoteToken = base64FromBytes( + message.remoteToken !== undefined + ? message.remoteToken + : new Uint8Array(), + )); + message.localToken !== undefined && (obj.localToken = message.localToken); + return obj; + }, + fromPartial(object: Partial): MsgUnlinkTokenPair { + const message = createBaseMsgUnlinkTokenPair(); + message.from = object.from ?? ''; + message.remoteDomain = object.remoteDomain ?? 0; + message.remoteToken = object.remoteToken ?? new Uint8Array(); + message.localToken = object.localToken ?? ''; + return message; + }, + fromProtoMsg(message: MsgUnlinkTokenPairProtoMsg): MsgUnlinkTokenPair { + return MsgUnlinkTokenPair.decode(message.value); + }, + toProto(message: MsgUnlinkTokenPair): Uint8Array { + return MsgUnlinkTokenPair.encode(message).finish(); + }, + toProtoMsg(message: MsgUnlinkTokenPair): MsgUnlinkTokenPairProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUnlinkTokenPair', + value: MsgUnlinkTokenPair.encode(message).finish(), + }; + }, +}; +function createBaseMsgUnlinkTokenPairResponse(): MsgUnlinkTokenPairResponse { + return {}; +} +export const MsgUnlinkTokenPairResponse = { + typeUrl: '/circle.cctp.v1.MsgUnlinkTokenPairResponse', + encode( + _: MsgUnlinkTokenPairResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUnlinkTokenPairResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUnlinkTokenPairResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUnlinkTokenPairResponse { + return {}; + }, + toJSON(_: MsgUnlinkTokenPairResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUnlinkTokenPairResponse { + const message = createBaseMsgUnlinkTokenPairResponse(); + return message; + }, + fromProtoMsg( + message: MsgUnlinkTokenPairResponseProtoMsg, + ): MsgUnlinkTokenPairResponse { + return MsgUnlinkTokenPairResponse.decode(message.value); + }, + toProto(message: MsgUnlinkTokenPairResponse): Uint8Array { + return MsgUnlinkTokenPairResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUnlinkTokenPairResponse, + ): MsgUnlinkTokenPairResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgUnlinkTokenPairResponse', + value: MsgUnlinkTokenPairResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgAddRemoteTokenMessenger(): MsgAddRemoteTokenMessenger { + return { + from: '', + domainId: 0, + address: new Uint8Array(), + }; +} +export const MsgAddRemoteTokenMessenger = { + typeUrl: '/circle.cctp.v1.MsgAddRemoteTokenMessenger', + encode( + message: MsgAddRemoteTokenMessenger, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.domainId !== 0) { + writer.uint32(16).uint32(message.domainId); + } + if (message.address.length !== 0) { + writer.uint32(26).bytes(message.address); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgAddRemoteTokenMessenger { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAddRemoteTokenMessenger(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.domainId = reader.uint32(); + break; + case 3: + message.address = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgAddRemoteTokenMessenger { + return { + from: isSet(object.from) ? String(object.from) : '', + domainId: isSet(object.domainId) ? Number(object.domainId) : 0, + address: isSet(object.address) + ? bytesFromBase64(object.address) + : new Uint8Array(), + }; + }, + toJSON( + message: MsgAddRemoteTokenMessenger, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.domainId !== undefined && + (obj.domainId = Math.round(message.domainId)); + message.address !== undefined && + (obj.address = base64FromBytes( + message.address !== undefined ? message.address : new Uint8Array(), + )); + return obj; + }, + fromPartial( + object: Partial, + ): MsgAddRemoteTokenMessenger { + const message = createBaseMsgAddRemoteTokenMessenger(); + message.from = object.from ?? ''; + message.domainId = object.domainId ?? 0; + message.address = object.address ?? new Uint8Array(); + return message; + }, + fromProtoMsg( + message: MsgAddRemoteTokenMessengerProtoMsg, + ): MsgAddRemoteTokenMessenger { + return MsgAddRemoteTokenMessenger.decode(message.value); + }, + toProto(message: MsgAddRemoteTokenMessenger): Uint8Array { + return MsgAddRemoteTokenMessenger.encode(message).finish(); + }, + toProtoMsg( + message: MsgAddRemoteTokenMessenger, + ): MsgAddRemoteTokenMessengerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgAddRemoteTokenMessenger', + value: MsgAddRemoteTokenMessenger.encode(message).finish(), + }; + }, +}; +function createBaseMsgAddRemoteTokenMessengerResponse(): MsgAddRemoteTokenMessengerResponse { + return {}; +} +export const MsgAddRemoteTokenMessengerResponse = { + typeUrl: '/circle.cctp.v1.MsgAddRemoteTokenMessengerResponse', + encode( + _: MsgAddRemoteTokenMessengerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgAddRemoteTokenMessengerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAddRemoteTokenMessengerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgAddRemoteTokenMessengerResponse { + return {}; + }, + toJSON( + _: MsgAddRemoteTokenMessengerResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgAddRemoteTokenMessengerResponse { + const message = createBaseMsgAddRemoteTokenMessengerResponse(); + return message; + }, + fromProtoMsg( + message: MsgAddRemoteTokenMessengerResponseProtoMsg, + ): MsgAddRemoteTokenMessengerResponse { + return MsgAddRemoteTokenMessengerResponse.decode(message.value); + }, + toProto(message: MsgAddRemoteTokenMessengerResponse): Uint8Array { + return MsgAddRemoteTokenMessengerResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgAddRemoteTokenMessengerResponse, + ): MsgAddRemoteTokenMessengerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgAddRemoteTokenMessengerResponse', + value: MsgAddRemoteTokenMessengerResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRemoveRemoteTokenMessenger(): MsgRemoveRemoteTokenMessenger { + return { + from: '', + domainId: 0, + }; +} +export const MsgRemoveRemoteTokenMessenger = { + typeUrl: '/circle.cctp.v1.MsgRemoveRemoteTokenMessenger', + encode( + message: MsgRemoveRemoteTokenMessenger, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.from !== '') { + writer.uint32(10).string(message.from); + } + if (message.domainId !== 0) { + writer.uint32(16).uint32(message.domainId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRemoveRemoteTokenMessenger { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRemoveRemoteTokenMessenger(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.from = reader.string(); + break; + case 2: + message.domainId = reader.uint32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRemoveRemoteTokenMessenger { + return { + from: isSet(object.from) ? String(object.from) : '', + domainId: isSet(object.domainId) ? Number(object.domainId) : 0, + }; + }, + toJSON( + message: MsgRemoveRemoteTokenMessenger, + ): JsonSafe { + const obj: any = {}; + message.from !== undefined && (obj.from = message.from); + message.domainId !== undefined && + (obj.domainId = Math.round(message.domainId)); + return obj; + }, + fromPartial( + object: Partial, + ): MsgRemoveRemoteTokenMessenger { + const message = createBaseMsgRemoveRemoteTokenMessenger(); + message.from = object.from ?? ''; + message.domainId = object.domainId ?? 0; + return message; + }, + fromProtoMsg( + message: MsgRemoveRemoteTokenMessengerProtoMsg, + ): MsgRemoveRemoteTokenMessenger { + return MsgRemoveRemoteTokenMessenger.decode(message.value); + }, + toProto(message: MsgRemoveRemoteTokenMessenger): Uint8Array { + return MsgRemoveRemoteTokenMessenger.encode(message).finish(); + }, + toProtoMsg( + message: MsgRemoveRemoteTokenMessenger, + ): MsgRemoveRemoteTokenMessengerProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgRemoveRemoteTokenMessenger', + value: MsgRemoveRemoteTokenMessenger.encode(message).finish(), + }; + }, +}; +function createBaseMsgRemoveRemoteTokenMessengerResponse(): MsgRemoveRemoteTokenMessengerResponse { + return {}; +} +export const MsgRemoveRemoteTokenMessengerResponse = { + typeUrl: '/circle.cctp.v1.MsgRemoveRemoteTokenMessengerResponse', + encode( + _: MsgRemoveRemoteTokenMessengerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRemoveRemoteTokenMessengerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRemoveRemoteTokenMessengerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgRemoveRemoteTokenMessengerResponse { + return {}; + }, + toJSON( + _: MsgRemoveRemoteTokenMessengerResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgRemoveRemoteTokenMessengerResponse { + const message = createBaseMsgRemoveRemoteTokenMessengerResponse(); + return message; + }, + fromProtoMsg( + message: MsgRemoveRemoteTokenMessengerResponseProtoMsg, + ): MsgRemoveRemoteTokenMessengerResponse { + return MsgRemoveRemoteTokenMessengerResponse.decode(message.value); + }, + toProto(message: MsgRemoveRemoteTokenMessengerResponse): Uint8Array { + return MsgRemoveRemoteTokenMessengerResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgRemoveRemoteTokenMessengerResponse, + ): MsgRemoveRemoteTokenMessengerResponseProtoMsg { + return { + typeUrl: '/circle.cctp.v1.MsgRemoveRemoteTokenMessengerResponse', + value: MsgRemoveRemoteTokenMessengerResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/cosmos/bundle.ts b/packages/cosmic-proto/src/codegen/cosmos/bundle.ts index c056109f021..83e26c8cb16 100644 --- a/packages/cosmic-proto/src/codegen/cosmos/bundle.ts +++ b/packages/cosmic-proto/src/codegen/cosmos/bundle.ts @@ -1,225 +1,225 @@ //@ts-nocheck -import * as _18 from './auth/v1beta1/auth.js'; -import * as _19 from './auth/v1beta1/genesis.js'; -import * as _20 from './auth/v1beta1/query.js'; -import * as _21 from './authz/v1beta1/authz.js'; -import * as _22 from './authz/v1beta1/event.js'; -import * as _23 from './authz/v1beta1/genesis.js'; -import * as _24 from './authz/v1beta1/query.js'; -import * as _25 from './authz/v1beta1/tx.js'; -import * as _26 from './bank/v1beta1/authz.js'; -import * as _27 from './bank/v1beta1/bank.js'; -import * as _28 from './bank/v1beta1/genesis.js'; -import * as _29 from './bank/v1beta1/query.js'; -import * as _30 from './bank/v1beta1/tx.js'; -import * as _31 from './base/abci/v1beta1/abci.js'; -import * as _32 from './base/node/v1beta1/query.js'; -import * as _33 from './base/query/v1beta1/pagination.js'; -import * as _34 from './base/reflection/v2alpha1/reflection.js'; -import * as _35 from './base/v1beta1/coin.js'; -import * as _36 from './crypto/ed25519/keys.js'; -import * as _37 from './crypto/hd/v1/hd.js'; -import * as _38 from './crypto/keyring/v1/record.js'; -import * as _39 from './crypto/multisig/keys.js'; -import * as _40 from './crypto/secp256k1/keys.js'; -import * as _41 from './crypto/secp256r1/keys.js'; -import * as _42 from './distribution/v1beta1/distribution.js'; -import * as _43 from './distribution/v1beta1/genesis.js'; -import * as _44 from './distribution/v1beta1/query.js'; -import * as _45 from './distribution/v1beta1/tx.js'; -import * as _46 from './feegrant/v1beta1/feegrant.js'; -import * as _47 from './feegrant/v1beta1/genesis.js'; -import * as _48 from './feegrant/v1beta1/query.js'; -import * as _49 from './feegrant/v1beta1/tx.js'; -import * as _50 from './gov/v1/genesis.js'; -import * as _51 from './gov/v1/gov.js'; -import * as _52 from './gov/v1/query.js'; -import * as _53 from './gov/v1/tx.js'; -import * as _54 from './gov/v1beta1/genesis.js'; -import * as _55 from './gov/v1beta1/gov.js'; -import * as _56 from './gov/v1beta1/query.js'; -import * as _57 from './gov/v1beta1/tx.js'; -import * as _58 from './group/v1/events.js'; -import * as _59 from './group/v1/genesis.js'; -import * as _60 from './group/v1/query.js'; -import * as _61 from './group/v1/tx.js'; -import * as _62 from './group/v1/types.js'; -import * as _63 from './mint/v1beta1/genesis.js'; -import * as _64 from './mint/v1beta1/mint.js'; -import * as _65 from './mint/v1beta1/query.js'; -import * as _66 from './params/v1beta1/params.js'; -import * as _67 from './params/v1beta1/query.js'; -import * as _68 from './staking/v1beta1/authz.js'; -import * as _69 from './staking/v1beta1/genesis.js'; -import * as _70 from './staking/v1beta1/query.js'; -import * as _71 from './staking/v1beta1/staking.js'; -import * as _72 from './staking/v1beta1/tx.js'; -import * as _73 from './tx/signing/v1beta1/signing.js'; -import * as _74 from './tx/v1beta1/service.js'; -import * as _75 from './tx/v1beta1/tx.js'; -import * as _76 from './upgrade/v1beta1/query.js'; -import * as _77 from './upgrade/v1beta1/tx.js'; -import * as _78 from './upgrade/v1beta1/upgrade.js'; -import * as _79 from './vesting/v1beta1/tx.js'; -import * as _80 from './vesting/v1beta1/vesting.js'; +import * as _33 from './auth/v1beta1/auth.js'; +import * as _34 from './auth/v1beta1/genesis.js'; +import * as _35 from './auth/v1beta1/query.js'; +import * as _36 from './authz/v1beta1/authz.js'; +import * as _37 from './authz/v1beta1/event.js'; +import * as _38 from './authz/v1beta1/genesis.js'; +import * as _39 from './authz/v1beta1/query.js'; +import * as _40 from './authz/v1beta1/tx.js'; +import * as _41 from './bank/v1beta1/authz.js'; +import * as _42 from './bank/v1beta1/bank.js'; +import * as _43 from './bank/v1beta1/genesis.js'; +import * as _44 from './bank/v1beta1/query.js'; +import * as _45 from './bank/v1beta1/tx.js'; +import * as _46 from './base/abci/v1beta1/abci.js'; +import * as _47 from './base/node/v1beta1/query.js'; +import * as _48 from './base/query/v1beta1/pagination.js'; +import * as _49 from './base/reflection/v2alpha1/reflection.js'; +import * as _50 from './base/v1beta1/coin.js'; +import * as _51 from './crypto/ed25519/keys.js'; +import * as _52 from './crypto/hd/v1/hd.js'; +import * as _53 from './crypto/keyring/v1/record.js'; +import * as _54 from './crypto/multisig/keys.js'; +import * as _55 from './crypto/secp256k1/keys.js'; +import * as _56 from './crypto/secp256r1/keys.js'; +import * as _57 from './distribution/v1beta1/distribution.js'; +import * as _58 from './distribution/v1beta1/genesis.js'; +import * as _59 from './distribution/v1beta1/query.js'; +import * as _60 from './distribution/v1beta1/tx.js'; +import * as _61 from './feegrant/v1beta1/feegrant.js'; +import * as _62 from './feegrant/v1beta1/genesis.js'; +import * as _63 from './feegrant/v1beta1/query.js'; +import * as _64 from './feegrant/v1beta1/tx.js'; +import * as _65 from './gov/v1/genesis.js'; +import * as _66 from './gov/v1/gov.js'; +import * as _67 from './gov/v1/query.js'; +import * as _68 from './gov/v1/tx.js'; +import * as _69 from './gov/v1beta1/genesis.js'; +import * as _70 from './gov/v1beta1/gov.js'; +import * as _71 from './gov/v1beta1/query.js'; +import * as _72 from './gov/v1beta1/tx.js'; +import * as _73 from './group/v1/events.js'; +import * as _74 from './group/v1/genesis.js'; +import * as _75 from './group/v1/query.js'; +import * as _76 from './group/v1/tx.js'; +import * as _77 from './group/v1/types.js'; +import * as _78 from './mint/v1beta1/genesis.js'; +import * as _79 from './mint/v1beta1/mint.js'; +import * as _80 from './mint/v1beta1/query.js'; +import * as _81 from './params/v1beta1/params.js'; +import * as _82 from './params/v1beta1/query.js'; +import * as _83 from './staking/v1beta1/authz.js'; +import * as _84 from './staking/v1beta1/genesis.js'; +import * as _85 from './staking/v1beta1/query.js'; +import * as _86 from './staking/v1beta1/staking.js'; +import * as _87 from './staking/v1beta1/tx.js'; +import * as _88 from './tx/signing/v1beta1/signing.js'; +import * as _89 from './tx/v1beta1/service.js'; +import * as _90 from './tx/v1beta1/tx.js'; +import * as _91 from './upgrade/v1beta1/query.js'; +import * as _92 from './upgrade/v1beta1/tx.js'; +import * as _93 from './upgrade/v1beta1/upgrade.js'; +import * as _94 from './vesting/v1beta1/tx.js'; +import * as _95 from './vesting/v1beta1/vesting.js'; export namespace cosmos { export namespace auth { export const v1beta1 = { - ..._18, - ..._19, - ..._20, + ..._33, + ..._34, + ..._35, }; } export namespace authz { export const v1beta1 = { - ..._21, - ..._22, - ..._23, - ..._24, - ..._25, + ..._36, + ..._37, + ..._38, + ..._39, + ..._40, }; } export namespace bank { export const v1beta1 = { - ..._26, - ..._27, - ..._28, - ..._29, - ..._30, + ..._41, + ..._42, + ..._43, + ..._44, + ..._45, }; } export namespace base { export namespace abci { export const v1beta1 = { - ..._31, + ..._46, }; } export namespace node { export const v1beta1 = { - ..._32, + ..._47, }; } export namespace query { export const v1beta1 = { - ..._33, + ..._48, }; } export namespace reflection { export const v2alpha1 = { - ..._34, + ..._49, }; } export const v1beta1 = { - ..._35, + ..._50, }; } export namespace crypto { export const ed25519 = { - ..._36, + ..._51, }; export namespace hd { export const v1 = { - ..._37, + ..._52, }; } export namespace keyring { export const v1 = { - ..._38, + ..._53, }; } export const multisig = { - ..._39, + ..._54, }; export const secp256k1 = { - ..._40, + ..._55, }; export const secp256r1 = { - ..._41, + ..._56, }; } export namespace distribution { export const v1beta1 = { - ..._42, - ..._43, - ..._44, - ..._45, + ..._57, + ..._58, + ..._59, + ..._60, }; } export namespace feegrant { export const v1beta1 = { - ..._46, - ..._47, - ..._48, - ..._49, + ..._61, + ..._62, + ..._63, + ..._64, }; } export namespace gov { export const v1 = { - ..._50, - ..._51, - ..._52, - ..._53, + ..._65, + ..._66, + ..._67, + ..._68, }; export const v1beta1 = { - ..._54, - ..._55, - ..._56, - ..._57, + ..._69, + ..._70, + ..._71, + ..._72, }; } export namespace group { export const v1 = { - ..._58, - ..._59, - ..._60, - ..._61, - ..._62, + ..._73, + ..._74, + ..._75, + ..._76, + ..._77, }; } export namespace mint { export const v1beta1 = { - ..._63, - ..._64, - ..._65, + ..._78, + ..._79, + ..._80, }; } export namespace params { export const v1beta1 = { - ..._66, - ..._67, + ..._81, + ..._82, }; } export namespace staking { export const v1beta1 = { - ..._68, - ..._69, - ..._70, - ..._71, - ..._72, + ..._83, + ..._84, + ..._85, + ..._86, + ..._87, }; } export namespace tx { export namespace signing { export const v1beta1 = { - ..._73, + ..._88, }; } export const v1beta1 = { - ..._74, - ..._75, + ..._89, + ..._90, }; } export namespace upgrade { export const v1beta1 = { - ..._76, - ..._77, - ..._78, + ..._91, + ..._92, + ..._93, }; } export namespace vesting { export const v1beta1 = { - ..._79, - ..._80, + ..._94, + ..._95, }; } } diff --git a/packages/cosmic-proto/src/codegen/cosmos_proto/bundle.ts b/packages/cosmic-proto/src/codegen/cosmos_proto/bundle.ts index b94e74aa8ee..57d3b2af566 100644 --- a/packages/cosmic-proto/src/codegen/cosmos_proto/bundle.ts +++ b/packages/cosmic-proto/src/codegen/cosmos_proto/bundle.ts @@ -1,5 +1,5 @@ //@ts-nocheck -import * as _17 from './cosmos.js'; +import * as _32 from './cosmos.js'; export const cosmos_proto = { - ..._17, + ..._32, }; diff --git a/packages/cosmic-proto/src/codegen/gogoproto/bundle.ts b/packages/cosmic-proto/src/codegen/gogoproto/bundle.ts index 889428238c6..e00058de59b 100644 --- a/packages/cosmic-proto/src/codegen/gogoproto/bundle.ts +++ b/packages/cosmic-proto/src/codegen/gogoproto/bundle.ts @@ -1,5 +1,5 @@ //@ts-nocheck -import * as _81 from './gogo.js'; +import * as _96 from './gogo.js'; export const gogoproto = { - ..._81, + ..._96, }; diff --git a/packages/cosmic-proto/src/codegen/google/bundle.ts b/packages/cosmic-proto/src/codegen/google/bundle.ts index b8c0712f2cc..e3e1e98de07 100644 --- a/packages/cosmic-proto/src/codegen/google/bundle.ts +++ b/packages/cosmic-proto/src/codegen/google/bundle.ts @@ -1,15 +1,15 @@ //@ts-nocheck -import * as _82 from './protobuf/any.js'; -import * as _83 from './protobuf/descriptor.js'; -import * as _84 from './protobuf/duration.js'; -import * as _85 from './protobuf/empty.js'; -import * as _86 from './protobuf/timestamp.js'; +import * as _97 from './protobuf/any.js'; +import * as _98 from './protobuf/descriptor.js'; +import * as _99 from './protobuf/duration.js'; +import * as _100 from './protobuf/empty.js'; +import * as _101 from './protobuf/timestamp.js'; export namespace google { export const protobuf = { - ..._82, - ..._83, - ..._84, - ..._85, - ..._86, + ..._97, + ..._98, + ..._99, + ..._100, + ..._101, }; } diff --git a/packages/cosmic-proto/src/codegen/ibc/bundle.ts b/packages/cosmic-proto/src/codegen/ibc/bundle.ts index 880163d3334..a6d602c1813 100644 --- a/packages/cosmic-proto/src/codegen/ibc/bundle.ts +++ b/packages/cosmic-proto/src/codegen/ibc/bundle.ts @@ -1,124 +1,124 @@ //@ts-nocheck -import * as _87 from './applications/interchain_accounts/controller/v1/controller.js'; -import * as _88 from './applications/interchain_accounts/controller/v1/query.js'; -import * as _89 from './applications/interchain_accounts/controller/v1/tx.js'; -import * as _90 from './applications/interchain_accounts/genesis/v1/genesis.js'; -import * as _91 from './applications/interchain_accounts/host/v1/host.js'; -import * as _92 from './applications/interchain_accounts/host/v1/query.js'; -import * as _93 from './applications/interchain_accounts/v1/account.js'; -import * as _94 from './applications/interchain_accounts/v1/metadata.js'; -import * as _95 from './applications/interchain_accounts/v1/packet.js'; -import * as _96 from './applications/transfer/v1/authz.js'; -import * as _97 from './applications/transfer/v1/genesis.js'; -import * as _98 from './applications/transfer/v1/query.js'; -import * as _99 from './applications/transfer/v1/transfer.js'; -import * as _100 from './applications/transfer/v1/tx.js'; -import * as _101 from './applications/transfer/v2/packet.js'; -import * as _102 from './core/channel/v1/channel.js'; -import * as _103 from './core/channel/v1/genesis.js'; -import * as _104 from './core/channel/v1/query.js'; -import * as _105 from './core/channel/v1/tx.js'; -import * as _106 from './core/client/v1/client.js'; -import * as _107 from './core/client/v1/genesis.js'; -import * as _108 from './core/client/v1/query.js'; -import * as _109 from './core/client/v1/tx.js'; -import * as _110 from './core/commitment/v1/commitment.js'; -import * as _111 from './core/connection/v1/connection.js'; -import * as _112 from './core/connection/v1/genesis.js'; -import * as _113 from './core/connection/v1/query.js'; -import * as _114 from './core/connection/v1/tx.js'; -import * as _115 from './lightclients/localhost/v1/localhost.js'; -import * as _116 from './lightclients/solomachine/v1/solomachine.js'; -import * as _117 from './lightclients/solomachine/v2/solomachine.js'; -import * as _118 from './lightclients/tendermint/v1/tendermint.js'; +import * as _102 from './applications/interchain_accounts/controller/v1/controller.js'; +import * as _103 from './applications/interchain_accounts/controller/v1/query.js'; +import * as _104 from './applications/interchain_accounts/controller/v1/tx.js'; +import * as _105 from './applications/interchain_accounts/genesis/v1/genesis.js'; +import * as _106 from './applications/interchain_accounts/host/v1/host.js'; +import * as _107 from './applications/interchain_accounts/host/v1/query.js'; +import * as _108 from './applications/interchain_accounts/v1/account.js'; +import * as _109 from './applications/interchain_accounts/v1/metadata.js'; +import * as _110 from './applications/interchain_accounts/v1/packet.js'; +import * as _111 from './applications/transfer/v1/authz.js'; +import * as _112 from './applications/transfer/v1/genesis.js'; +import * as _113 from './applications/transfer/v1/query.js'; +import * as _114 from './applications/transfer/v1/transfer.js'; +import * as _115 from './applications/transfer/v1/tx.js'; +import * as _116 from './applications/transfer/v2/packet.js'; +import * as _117 from './core/channel/v1/channel.js'; +import * as _118 from './core/channel/v1/genesis.js'; +import * as _119 from './core/channel/v1/query.js'; +import * as _120 from './core/channel/v1/tx.js'; +import * as _121 from './core/client/v1/client.js'; +import * as _122 from './core/client/v1/genesis.js'; +import * as _123 from './core/client/v1/query.js'; +import * as _124 from './core/client/v1/tx.js'; +import * as _125 from './core/commitment/v1/commitment.js'; +import * as _126 from './core/connection/v1/connection.js'; +import * as _127 from './core/connection/v1/genesis.js'; +import * as _128 from './core/connection/v1/query.js'; +import * as _129 from './core/connection/v1/tx.js'; +import * as _130 from './lightclients/localhost/v1/localhost.js'; +import * as _131 from './lightclients/solomachine/v1/solomachine.js'; +import * as _132 from './lightclients/solomachine/v2/solomachine.js'; +import * as _133 from './lightclients/tendermint/v1/tendermint.js'; export namespace ibc { export namespace applications { export namespace interchain_accounts { export namespace controller { export const v1 = { - ..._87, - ..._88, - ..._89, + ..._102, + ..._103, + ..._104, }; } export namespace genesis { export const v1 = { - ..._90, + ..._105, }; } export namespace host { export const v1 = { - ..._91, - ..._92, + ..._106, + ..._107, }; } export const v1 = { - ..._93, - ..._94, - ..._95, + ..._108, + ..._109, + ..._110, }; } export namespace transfer { export const v1 = { - ..._96, - ..._97, - ..._98, - ..._99, - ..._100, + ..._111, + ..._112, + ..._113, + ..._114, + ..._115, }; export const v2 = { - ..._101, + ..._116, }; } } export namespace core { export namespace channel { export const v1 = { - ..._102, - ..._103, - ..._104, - ..._105, + ..._117, + ..._118, + ..._119, + ..._120, }; } export namespace client { export const v1 = { - ..._106, - ..._107, - ..._108, - ..._109, + ..._121, + ..._122, + ..._123, + ..._124, }; } export namespace commitment { export const v1 = { - ..._110, + ..._125, }; } export namespace connection { export const v1 = { - ..._111, - ..._112, - ..._113, - ..._114, + ..._126, + ..._127, + ..._128, + ..._129, }; } } export namespace lightclients { export namespace localhost { export const v1 = { - ..._115, + ..._130, }; } export namespace solomachine { export const v1 = { - ..._116, + ..._131, }; export const v2 = { - ..._117, + ..._132, }; } export namespace tendermint { export const v1 = { - ..._118, + ..._133, }; } } diff --git a/packages/cosmic-proto/src/codegen/icq/bundle.ts b/packages/cosmic-proto/src/codegen/icq/bundle.ts index eccbc640be8..aca3930ace1 100644 --- a/packages/cosmic-proto/src/codegen/icq/bundle.ts +++ b/packages/cosmic-proto/src/codegen/icq/bundle.ts @@ -1,15 +1,15 @@ //@ts-nocheck -import * as _119 from './v1/genesis.js'; -import * as _120 from './v1/icq.js'; -import * as _121 from './v1/packet.js'; -import * as _122 from './v1/query.js'; -import * as _123 from './v1/tx.js'; +import * as _134 from './v1/genesis.js'; +import * as _135 from './v1/icq.js'; +import * as _136 from './v1/packet.js'; +import * as _137 from './v1/query.js'; +import * as _138 from './v1/tx.js'; export namespace icq { export const v1 = { - ..._119, - ..._120, - ..._121, - ..._122, - ..._123, + ..._134, + ..._135, + ..._136, + ..._137, + ..._138, }; } diff --git a/packages/cosmic-proto/src/codegen/ics23/bundle.ts b/packages/cosmic-proto/src/codegen/ics23/bundle.ts index f3a5cbe5c65..3c14abc26b8 100644 --- a/packages/cosmic-proto/src/codegen/ics23/bundle.ts +++ b/packages/cosmic-proto/src/codegen/ics23/bundle.ts @@ -1,5 +1,5 @@ //@ts-nocheck -import * as _124 from '../proofs.js'; +import * as _139 from '../proofs.js'; export const ics23 = { - ..._124, + ..._139, }; diff --git a/packages/cosmic-proto/src/codegen/index.ts b/packages/cosmic-proto/src/codegen/index.ts index e6e4d93d04b..b252c2f50f7 100644 --- a/packages/cosmic-proto/src/codegen/index.ts +++ b/packages/cosmic-proto/src/codegen/index.ts @@ -7,6 +7,7 @@ export * from './agoric/bundle.js'; export * from './amino/bundle.js'; +export * from './circle/bundle.js'; export * from './cosmos_proto/bundle.js'; export * from './cosmos/bundle.js'; export * from './gogoproto/bundle.js'; diff --git a/packages/cosmic-proto/src/codegen/tendermint/bundle.ts b/packages/cosmic-proto/src/codegen/tendermint/bundle.ts index 1b92cd5629a..48cdbb29f8b 100644 --- a/packages/cosmic-proto/src/codegen/tendermint/bundle.ts +++ b/packages/cosmic-proto/src/codegen/tendermint/bundle.ts @@ -1,39 +1,39 @@ //@ts-nocheck -import * as _125 from './abci/types.js'; -import * as _126 from './crypto/keys.js'; -import * as _127 from './crypto/proof.js'; -import * as _128 from './libs/bits/types.js'; -import * as _129 from './p2p/types.js'; -import * as _130 from './types/block.js'; -import * as _131 from './types/evidence.js'; -import * as _132 from './types/params.js'; -import * as _133 from './types/types.js'; -import * as _134 from './types/validator.js'; -import * as _135 from './version/types.js'; +import * as _140 from './abci/types.js'; +import * as _141 from './crypto/keys.js'; +import * as _142 from './crypto/proof.js'; +import * as _143 from './libs/bits/types.js'; +import * as _144 from './p2p/types.js'; +import * as _145 from './types/block.js'; +import * as _146 from './types/evidence.js'; +import * as _147 from './types/params.js'; +import * as _148 from './types/types.js'; +import * as _149 from './types/validator.js'; +import * as _150 from './version/types.js'; export namespace tendermint { export const abci = { - ..._125, + ..._140, }; export const crypto = { - ..._126, - ..._127, + ..._141, + ..._142, }; export namespace libs { export const bits = { - ..._128, + ..._143, }; } export const p2p = { - ..._129, + ..._144, }; export const types = { - ..._130, - ..._131, - ..._132, - ..._133, - ..._134, + ..._145, + ..._146, + ..._147, + ..._148, + ..._149, }; export const version = { - ..._135, + ..._150, }; } From 5f7834b0f28eb600b5a8d05a5cb80d7b372b32eb Mon Sep 17 00:00:00 2001 From: Turadg Aleahmad Date: Tue, 11 Feb 2025 14:42:03 -0800 Subject: [PATCH 3/5] feat: `circle/cctp/v1/tx` Co-authored-by: 0xPatrick --- packages/cosmic-proto/package.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/cosmic-proto/package.json b/packages/cosmic-proto/package.json index 98f54f314ee..006bf5c153c 100644 --- a/packages/cosmic-proto/package.json +++ b/packages/cosmic-proto/package.json @@ -32,6 +32,10 @@ "types": "./dist/codegen/cosmos/*.d.ts", "default": "./dist/codegen/cosmos/*.js" }, + "./circle/cctp/v1/tx.js": { + "types": "./dist/codegen/circle/cctp/v1/tx.d.ts", + "default": "./dist/codegen/circle/cctp/v1/tx.js" + }, "./cosmos/bank/v1beta1/query.js": { "types": "./dist/codegen/cosmos/bank/v1beta1/query.d.ts", "default": "./dist/codegen/cosmos/bank/v1beta1/query.js" From d63ac7dfb97168ce2cc78138d1c2fe3b46407b38 Mon Sep 17 00:00:00 2001 From: 99adarsh Date: Fri, 7 Feb 2025 18:09:15 +0530 Subject: [PATCH 4/5] chore: add stride staking protos pulled rom stride's main branch, https://github.com/Stride-Labs/stride/tree/main/proto/stride , Commit 41eb417 --- .../proto/stride/epochs/genesis.proto | 36 ++ .../proto/stride/epochs/query.proto | 74 +++ .../proto/stride/records/callbacks.proto | 10 + .../proto/stride/records/genesis.proto | 24 + .../proto/stride/records/params.proto | 7 + .../proto/stride/records/query.proto | 185 ++++++++ .../proto/stride/records/records.proto | 129 ++++++ .../proto/stride/stakedym/genesis.proto | 37 ++ .../proto/stride/stakedym/query.proto | 118 +++++ .../proto/stride/stakedym/stakedym.proto | 208 +++++++++ .../proto/stride/stakedym/tx.proto | 236 ++++++++++ .../proto/stride/stakeibc/README.md | 5 + .../stride/stakeibc/address_unbonding.proto | 19 + .../proto/stride/stakeibc/callbacks.proto | 101 +++++ .../proto/stride/stakeibc/epoch_tracker.proto | 11 + .../proto/stride/stakeibc/genesis.proto | 21 + .../proto/stride/stakeibc/gov.proto | 29 ++ .../proto/stride/stakeibc/host_zone.proto | 140 ++++++ .../proto/stride/stakeibc/ica_account.proto | 22 + .../proto/stride/stakeibc/packet.proto | 17 + .../proto/stride/stakeibc/params.proto | 32 ++ .../proto/stride/stakeibc/query.proto | 161 +++++++ .../proto/stride/stakeibc/trade_route.proto | 106 +++++ .../proto/stride/stakeibc/tx.proto | 428 ++++++++++++++++++ .../proto/stride/stakeibc/validator.proto | 31 ++ .../proto/stride/staketia/genesis.proto | 37 ++ .../proto/stride/staketia/query.proto | 118 +++++ .../proto/stride/staketia/staketia.proto | 173 +++++++ .../proto/stride/staketia/tx.proto | 243 ++++++++++ 29 files changed, 2758 insertions(+) create mode 100755 packages/cosmic-proto/proto/stride/epochs/genesis.proto create mode 100644 packages/cosmic-proto/proto/stride/epochs/query.proto create mode 100644 packages/cosmic-proto/proto/stride/records/callbacks.proto create mode 100644 packages/cosmic-proto/proto/stride/records/genesis.proto create mode 100644 packages/cosmic-proto/proto/stride/records/params.proto create mode 100644 packages/cosmic-proto/proto/stride/records/query.proto create mode 100644 packages/cosmic-proto/proto/stride/records/records.proto create mode 100644 packages/cosmic-proto/proto/stride/stakedym/genesis.proto create mode 100644 packages/cosmic-proto/proto/stride/stakedym/query.proto create mode 100644 packages/cosmic-proto/proto/stride/stakedym/stakedym.proto create mode 100644 packages/cosmic-proto/proto/stride/stakedym/tx.proto create mode 100755 packages/cosmic-proto/proto/stride/stakeibc/README.md create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/address_unbonding.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/callbacks.proto create mode 100755 packages/cosmic-proto/proto/stride/stakeibc/epoch_tracker.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/genesis.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/gov.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/host_zone.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/ica_account.proto create mode 100755 packages/cosmic-proto/proto/stride/stakeibc/packet.proto create mode 100755 packages/cosmic-proto/proto/stride/stakeibc/params.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/query.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/trade_route.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/tx.proto create mode 100644 packages/cosmic-proto/proto/stride/stakeibc/validator.proto create mode 100644 packages/cosmic-proto/proto/stride/staketia/genesis.proto create mode 100644 packages/cosmic-proto/proto/stride/staketia/query.proto create mode 100644 packages/cosmic-proto/proto/stride/staketia/staketia.proto create mode 100644 packages/cosmic-proto/proto/stride/staketia/tx.proto diff --git a/packages/cosmic-proto/proto/stride/epochs/genesis.proto b/packages/cosmic-proto/proto/stride/epochs/genesis.proto new file mode 100755 index 00000000000..14fc7718c73 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/epochs/genesis.proto @@ -0,0 +1,36 @@ +syntax = "proto3"; +package stride.epochs; + +import "gogoproto/gogo.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/timestamp.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/epochs/types"; + +message EpochInfo { + string identifier = 1; + google.protobuf.Timestamp start_time = 2 [ + (gogoproto.stdtime) = true, + (gogoproto.nullable) = false, + (gogoproto.moretags) = "yaml:\"start_time\"" + ]; + google.protobuf.Duration duration = 3 [ + (gogoproto.nullable) = false, + (gogoproto.stdduration) = true, + (gogoproto.jsontag) = "duration,omitempty", + (gogoproto.moretags) = "yaml:\"duration\"" + ]; + int64 current_epoch = 4; + google.protobuf.Timestamp current_epoch_start_time = 5 [ + (gogoproto.stdtime) = true, + (gogoproto.nullable) = false, + (gogoproto.moretags) = "yaml:\"current_epoch_start_time\"" + ]; + bool epoch_counting_started = 6; + int64 current_epoch_start_height = 7; +} + +// GenesisState defines the epochs module's genesis state. +message GenesisState { + repeated EpochInfo epochs = 1 [ (gogoproto.nullable) = false ]; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/epochs/query.proto b/packages/cosmic-proto/proto/stride/epochs/query.proto new file mode 100644 index 00000000000..272e3498256 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/epochs/query.proto @@ -0,0 +1,74 @@ +syntax = "proto3"; +package stride.epochs; + +import "gogoproto/gogo.proto"; +import "google/api/annotations.proto"; +import "cosmos/base/query/v1beta1/pagination.proto"; +import "stride/epochs/genesis.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/epochs/types"; + +// Query defines the gRPC querier service. +service Query { + // EpochInfos provide running epochInfos + rpc EpochInfos(QueryEpochsInfoRequest) returns (QueryEpochsInfoResponse) { + option (google.api.http).get = "/Stridelabs/stride/epochs"; + } + // CurrentEpoch provide current epoch of specified identifier + rpc CurrentEpoch(QueryCurrentEpochRequest) + returns (QueryCurrentEpochResponse) { + option (google.api.http).get = "/Stridelabs/stride/epochs/current_epoch"; + } + // CurrentEpoch provide current epoch of specified identifier + rpc EpochInfo(QueryEpochInfoRequest) returns (QueryEpochInfoResponse) { + option (google.api.http).get = "/Stridelabs/stride/epochs/epoch_info"; + } +} + +message QueryEpochsInfoRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +message QueryEpochsInfoResponse { + repeated EpochInfo epochs = 1 [ (gogoproto.nullable) = false ]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +message QueryCurrentEpochRequest { string identifier = 1; } +message QueryCurrentEpochResponse { int64 current_epoch = 1; } + +message QueryEpochInfoRequest { string identifier = 1; } +message QueryEpochInfoResponse { + EpochInfo epoch = 1 [ (gogoproto.nullable) = false ]; +} + +// syntax = "proto3"; +// package stride.epochs; + +// import "gogoproto/gogo.proto"; +// import "google/api/annotations.proto"; +// import "cosmos/base/query/v1beta1/pagination.proto"; +// import "epochs/params.proto"; +// // this line is used by starport scaffolding # 1 + +// option go_package = "github.com/Stride-Labs/stride/v25/x/epochs/types"; + +// // Query defines the gRPC querier service. +// service Query { +// // Parameters queries the parameters of the module. +// rpc Params(QueryParamsRequest) returns (QueryParamsResponse) { +// option (google.api.http).get = "/Stridelabs/stride/epochs/params"; +// } +// // this line is used by starport scaffolding # 2 +// } + +// // QueryParamsRequest is request type for the Query/Params RPC method. +// message QueryParamsRequest {} + +// // QueryParamsResponse is response type for the Query/Params RPC method. +// message QueryParamsResponse { +// // params holds all the parameters of this module. +// Params params = 1 [(gogoproto.nullable) = false]; +// } + +// // this line is used by starport scaffolding # 3 diff --git a/packages/cosmic-proto/proto/stride/records/callbacks.proto b/packages/cosmic-proto/proto/stride/records/callbacks.proto new file mode 100644 index 00000000000..0a1e8981575 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/records/callbacks.proto @@ -0,0 +1,10 @@ +syntax = "proto3"; +package stride.records; + +import "stride/records/records.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/records/types"; + +message TransferCallback { uint64 deposit_record_id = 1; } + +message TransferLSMTokenCallback { LSMTokenDeposit deposit = 1; } diff --git a/packages/cosmic-proto/proto/stride/records/genesis.proto b/packages/cosmic-proto/proto/stride/records/genesis.proto new file mode 100644 index 00000000000..4662fb94893 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/records/genesis.proto @@ -0,0 +1,24 @@ +syntax = "proto3"; +package stride.records; + +import "stride/records/params.proto"; +import "stride/records/records.proto"; +import "gogoproto/gogo.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/records/types"; + +// GenesisState defines the records module's genesis state. +message GenesisState { + Params params = 1 [ (gogoproto.nullable) = false ]; + string port_id = 2; + repeated UserRedemptionRecord user_redemption_record_list = 3 + [ (gogoproto.nullable) = false ]; + uint64 user_redemption_record_count = 4; + repeated EpochUnbondingRecord epoch_unbonding_record_list = 5 + [ (gogoproto.nullable) = false ]; + repeated DepositRecord deposit_record_list = 7 + [ (gogoproto.nullable) = false ]; + uint64 deposit_record_count = 8; + repeated LSMTokenDeposit lsm_token_deposit_list = 9 + [ (gogoproto.nullable) = false ]; +} diff --git a/packages/cosmic-proto/proto/stride/records/params.proto b/packages/cosmic-proto/proto/stride/records/params.proto new file mode 100644 index 00000000000..147d05f0321 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/records/params.proto @@ -0,0 +1,7 @@ +syntax = "proto3"; +package stride.records; + +option go_package = "github.com/Stride-Labs/stride/v25/x/records/types"; + +// Params defines the parameters for the module. +message Params {} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/records/query.proto b/packages/cosmic-proto/proto/stride/records/query.proto new file mode 100644 index 00000000000..716decb6b77 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/records/query.proto @@ -0,0 +1,185 @@ +syntax = "proto3"; +package stride.records; + +import "stride/records/records.proto"; +import "stride/records/params.proto"; + +import "gogoproto/gogo.proto"; +import "google/api/annotations.proto"; +import "cosmos/base/query/v1beta1/pagination.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/records/types"; + +// Query defines the gRPC querier service. +service Query { + // Parameters queries the parameters of the module. + rpc Params(QueryParamsRequest) returns (QueryParamsResponse) { + option (google.api.http).get = "/StrideLabs/stride/records/params"; + } + // Queries a UserRedemptionRecord by id. + rpc UserRedemptionRecord(QueryGetUserRedemptionRecordRequest) + returns (QueryGetUserRedemptionRecordResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/records/user_redemption_record/{id}"; + } + + // Queries a list of UserRedemptionRecord items. + rpc UserRedemptionRecordAll(QueryAllUserRedemptionRecordRequest) + returns (QueryAllUserRedemptionRecordResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/records/user_redemption_record"; + } + + // Queries a list of UserRedemptionRecord items by chainId / userId pair. + rpc UserRedemptionRecordForUser(QueryAllUserRedemptionRecordForUserRequest) + returns (QueryAllUserRedemptionRecordForUserResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/records/user_redemption_record_for_user/" + "{chain_id}/{day}/{address}/{limit}"; + } + + // Queries a EpochUnbondingRecord by id. + rpc EpochUnbondingRecord(QueryGetEpochUnbondingRecordRequest) + returns (QueryGetEpochUnbondingRecordResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/records/epoch_unbonding_record/{epoch_number}"; + } + + // Queries a list of EpochUnbondingRecord items. + rpc EpochUnbondingRecordAll(QueryAllEpochUnbondingRecordRequest) + returns (QueryAllEpochUnbondingRecordResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/records/epoch_unbonding_record"; + } + + // Queries a DepositRecord by id. + rpc DepositRecord(QueryGetDepositRecordRequest) + returns (QueryGetDepositRecordResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/records/deposit_record/{id}"; + } + + // Queries a list of DepositRecord items. + rpc DepositRecordAll(QueryAllDepositRecordRequest) + returns (QueryAllDepositRecordResponse) { + option (google.api.http).get = "/Stride-Labs/stride/records/deposit_record"; + } + + // Queries a list of DepositRecord items for a given host zone + rpc DepositRecordByHost(QueryDepositRecordByHostRequest) + returns (QueryDepositRecordByHostResponse) { + option (google.api.http).get = "/Stride-Labs/stride/records/" + "deposit_record_by_host_zone/{host_zone_id}"; + } + + // Queries the existing LSMTokenDeposits for one specific deposit + rpc LSMDeposit(QueryLSMDepositRequest) returns (QueryLSMDepositResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakeibc/lsm_deposit/{chain_id}/{denom}"; + } + + // Queries the existing LSMTokenDeposits for all which match filters + // intended use: + // ...stakeibc/lsm_deposits?chain_id=X&validator_address=Y&status=Z + rpc LSMDeposits(QueryLSMDepositsRequest) returns (QueryLSMDepositsResponse) { + option (google.api.http).get = "/Stride-Labs/stride/stakeibc/lsm_deposits"; + } +} + +// QueryParamsRequest is request type for the Query/Params RPC method. +message QueryParamsRequest {} + +// QueryParamsResponse is response type for the Query/Params RPC method. +message QueryParamsResponse { + // params holds all the parameters of this module. + Params params = 1 [ (gogoproto.nullable) = false ]; +} + +message QueryGetDepositRecordRequest { uint64 id = 1; } + +message QueryGetDepositRecordResponse { + DepositRecord deposit_record = 1 [ (gogoproto.nullable) = false ]; +} + +message QueryAllDepositRecordRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +message QueryAllDepositRecordResponse { + repeated DepositRecord deposit_record = 1 [ (gogoproto.nullable) = false ]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +message QueryDepositRecordByHostRequest { string host_zone_id = 1; } + +message QueryDepositRecordByHostResponse { + repeated DepositRecord deposit_record = 1 [ (gogoproto.nullable) = false ]; +} + +message QueryGetUserRedemptionRecordRequest { string id = 1; } + +message QueryGetUserRedemptionRecordResponse { + UserRedemptionRecord user_redemption_record = 1 + [ (gogoproto.nullable) = false ]; +} + +message QueryAllUserRedemptionRecordRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +message QueryAllUserRedemptionRecordResponse { + repeated UserRedemptionRecord user_redemption_record = 1 + [ (gogoproto.nullable) = false ]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +// Query UserRedemptionRecords by chainId / userId pair +message QueryAllUserRedemptionRecordForUserRequest { + string chain_id = 1; + uint64 day = 2; + string address = 3; + uint64 limit = 4; + cosmos.base.query.v1beta1.PageRequest pagination = 5; +} + +message QueryAllUserRedemptionRecordForUserResponse { + repeated UserRedemptionRecord user_redemption_record = 1 + [ (gogoproto.nullable) = false ]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +message QueryGetEpochUnbondingRecordRequest { uint64 epoch_number = 1; } + +message QueryGetEpochUnbondingRecordResponse { + EpochUnbondingRecord epoch_unbonding_record = 1 + [ (gogoproto.nullable) = false ]; +} + +message QueryAllEpochUnbondingRecordRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +message QueryAllEpochUnbondingRecordResponse { + repeated EpochUnbondingRecord epoch_unbonding_record = 1 + [ (gogoproto.nullable) = false ]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +message QueryLSMDepositRequest { + string chain_id = 1; + string denom = 2; +} + +message QueryLSMDepositResponse { + LSMTokenDeposit deposit = 1 [ (gogoproto.nullable) = false ]; +} + +message QueryLSMDepositsRequest { + string chain_id = 1; + string validator_address = 2; + string status = 3; +} + +message QueryLSMDepositsResponse { + repeated LSMTokenDeposit deposits = 1 [ (gogoproto.nullable) = false ]; +} diff --git a/packages/cosmic-proto/proto/stride/records/records.proto b/packages/cosmic-proto/proto/stride/records/records.proto new file mode 100644 index 00000000000..501aa19ce81 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/records/records.proto @@ -0,0 +1,129 @@ +syntax = "proto3"; +package stride.records; + +import "cosmos/base/v1beta1/coin.proto"; +import "gogoproto/gogo.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/records/types"; + +message UserRedemptionRecord { + string id = 1; // {chain_id}.{epoch}.{receiver} + string receiver = 3; + string native_token_amount = 4 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string denom = 5; + string host_zone_id = 6; + uint64 epoch_number = 7; + bool claim_is_pending = 8; + reserved 2; + string st_token_amount = 9 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +message DepositRecord { + uint64 id = 1; + string amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string denom = 3; + string host_zone_id = 4; + enum Status { + // in transfer queue to be sent to the delegation ICA + TRANSFER_QUEUE = 0; + // transfer in progress (IBC packet sent, ack not received) + TRANSFER_IN_PROGRESS = 2; + // in staking queue on delegation ICA + DELEGATION_QUEUE = 1; + // staking in progress (ICA packet sent, ack not received) + DELEGATION_IN_PROGRESS = 3; + } + enum Source { + STRIDE = 0; + WITHDRAWAL_ICA = 1; + } + Status status = 6; + uint64 deposit_epoch_number = 7; + Source source = 8; + uint64 delegation_txs_in_progress = 9; + + reserved 5; +} + +message HostZoneUnbonding { + enum Status { + // tokens bonded on delegate account + UNBONDING_QUEUE = 0; + // unbonding ICA has been submitted + UNBONDING_IN_PROGRESS = 3; + // unbonding ICA failed for at least one batch and need to be retried + UNBONDING_RETRY_QUEUE = 5; + // unbonding completed on delegate account + EXIT_TRANSFER_QUEUE = 1; + // redemption sweep has been submitted + EXIT_TRANSFER_IN_PROGRESS = 4; + // transfer success + CLAIMABLE = 2; + } + string st_token_amount = 1 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string native_token_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string st_tokens_to_burn = 8 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string native_tokens_to_unbond = 9 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string claimable_native_tokens = 10 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + uint64 undelegation_txs_in_progress = 11; + string denom = 3; + string host_zone_id = 4; + uint64 unbonding_time = 5; + Status status = 6; + repeated string user_redemption_records = 7; +} + +message EpochUnbondingRecord { + uint64 epoch_number = 1; + repeated HostZoneUnbonding host_zone_unbondings = 3; + reserved 2; +} + +message LSMTokenDeposit { + enum Status { + DEPOSIT_PENDING = 0; + TRANSFER_QUEUE = 1; + TRANSFER_IN_PROGRESS = 2; + TRANSFER_FAILED = 3; + DETOKENIZATION_QUEUE = 4; + DETOKENIZATION_IN_PROGRESS = 5; + DETOKENIZATION_FAILED = 6; + } + + string deposit_id = 1; + string chain_id = 2; + string denom = 3; + string ibc_denom = 4; + string staker_address = 5; + string validator_address = 6; + string amount = 7 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + cosmos.base.v1beta1.Coin st_token = 8 [ (gogoproto.nullable) = false ]; + Status status = 9; +} diff --git a/packages/cosmic-proto/proto/stride/stakedym/genesis.proto b/packages/cosmic-proto/proto/stride/stakedym/genesis.proto new file mode 100644 index 00000000000..d3593688dc9 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakedym/genesis.proto @@ -0,0 +1,37 @@ +syntax = "proto3"; +package stride.stakedym; + +import "gogoproto/gogo.proto"; +import "stride/stakedym/stakedym.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakedym/types"; + +// Params defines the stakedym module parameters. +message Params {} + +// TransferInProgressRecordIds stores record IDs for delegation records +// that have a transfer in progress +message TransferInProgressRecordIds { + string channel_id = 1; + uint64 sequence = 2; + uint64 record_id = 3; +} + +// GenesisState defines the stakedym module's genesis state. +message GenesisState { + Params params = 1 [ + (gogoproto.moretags) = "yaml:\"params\"", + (gogoproto.nullable) = false + ]; + + HostZone host_zone = 2 [ (gogoproto.nullable) = false ]; + repeated DelegationRecord delegation_records = 3 + [ (gogoproto.nullable) = false ]; + repeated UnbondingRecord unbonding_records = 4 + [ (gogoproto.nullable) = false ]; + repeated RedemptionRecord redemption_records = 5 + [ (gogoproto.nullable) = false ]; + repeated SlashRecord slash_records = 6 [ (gogoproto.nullable) = false ]; + repeated TransferInProgressRecordIds transfer_in_progress_record_ids = 7 + [ (gogoproto.nullable) = false ]; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/stakedym/query.proto b/packages/cosmic-proto/proto/stride/stakedym/query.proto new file mode 100644 index 00000000000..b31509b03fc --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakedym/query.proto @@ -0,0 +1,118 @@ + +syntax = "proto3"; +package stride.stakedym; + +import "stride/stakedym/stakedym.proto"; +import "gogoproto/gogo.proto"; +import "google/api/annotations.proto"; +import "cosmos/base/query/v1beta1/pagination.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakedym/types"; + +// Query defines the gRPC querier service. +service Query { + // Queries the host zone struct + rpc HostZone(QueryHostZoneRequest) returns (QueryHostZoneResponse) { + option (google.api.http).get = "/Stride-Labs/stride/stakedym/host_zone"; + } + + // Queries the delegation records with an optional to include archived records + // Ex: + // - /delegation_records + // - /delegation_records?include_archived=true + rpc DelegationRecords(QueryDelegationRecordsRequest) + returns (QueryDelegationRecordsResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakedym/delegation_records"; + } + + // Queries the unbonding records with an optional to include archived records + // Ex: + // - /unbonding_records + // - /unbonding_records?include_archived=true + rpc UnbondingRecords(QueryUnbondingRecordsRequest) + returns (QueryUnbondingRecordsResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakedym/unbonding_records"; + } + + // Queries a single user redemption record + rpc RedemptionRecord(QueryRedemptionRecordRequest) + returns (QueryRedemptionRecordResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakedym/redemption_record/{unbonding_record_id}/" + "{address}"; + } + + // Queries all redemption records with optional filters + // Ex: + // - /redemption_records + // - /redemption_records?address=strideXXX + // - /redemption_records?unbonding_record_id=100 + rpc RedemptionRecords(QueryRedemptionRecordsRequest) + returns (QueryRedemptionRecordsResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakedym/redemption_records"; + } + + // Queries slash records + rpc SlashRecords(QuerySlashRecordsRequest) + returns (QuerySlashRecordsResponse) { + option (google.api.http).get = "/Stride-Labs/stride/stakedym/slash_records"; + } +} + +// Host Zone +message QueryHostZoneRequest {}; +message QueryHostZoneResponse { HostZone host_zone = 1; } + +// All Delegation Records +message QueryDelegationRecordsRequest { bool include_archived = 1; }; +message QueryDelegationRecordsResponse { + repeated DelegationRecord delegation_records = 1 + [ (gogoproto.nullable) = false ]; +} + +// All Unbonding Records +message QueryUnbondingRecordsRequest { bool include_archived = 1; }; +message QueryUnbondingRecordsResponse { + repeated UnbondingRecord unbonding_records = 1 + [ (gogoproto.nullable) = false ]; +} + +// Single Redemption Record +message QueryRedemptionRecordRequest { + uint64 unbonding_record_id = 1; + string address = 2; +}; +message QueryRedemptionRecordResponse { + RedemptionRecordResponse redemption_record_response = 1; +} + +// All Redemption Records +message QueryRedemptionRecordsRequest { + string address = 1; + uint64 unbonding_record_id = 2; + cosmos.base.query.v1beta1.PageRequest pagination = 3; +}; +message QueryRedemptionRecordsResponse { + repeated RedemptionRecordResponse redemption_record_responses = 1 + [ (gogoproto.nullable) = false ]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +// All Slash Records +message QuerySlashRecordsRequest {}; +message QuerySlashRecordsResponse { + repeated SlashRecord slash_records = 1 [ (gogoproto.nullable) = false ]; +} + +// Data structure for frontend to consume +message RedemptionRecordResponse { + // Redemption record + RedemptionRecord redemption_record = 1; + + // The Unix timestamp (in seconds) at which the unbonding for the UR + // associated with this RR completes + uint64 unbonding_completion_time_seconds = 2; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/stakedym/stakedym.proto b/packages/cosmic-proto/proto/stride/stakedym/stakedym.proto new file mode 100644 index 00000000000..89eef2e119e --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakedym/stakedym.proto @@ -0,0 +1,208 @@ +syntax = "proto3"; +package stride.stakedym; + +import "cosmos_proto/cosmos.proto"; +import "gogoproto/gogo.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakedym/types"; + +message HostZone { + // Chain ID + string chain_id = 1; + // Native token denom on the host zone (e.g. adym) + string native_token_denom = 2; + // IBC denom of the native token as it lives on stride (e.g. ibc/...) + string native_token_ibc_denom = 3; + // Transfer channel ID from stride to the host zone + string transfer_channel_id = 4; + + // Operator controlled delegation address on the host zone + string delegation_address = 5 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Operator controlled reward address on the host zone + string reward_address = 6 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Deposit address on stride + string deposit_address = 7 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Redemption address on stride + string redemption_address = 8 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Claim address on stride + string claim_address = 9 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // operator address set by safe, on stride + string operator_address_on_stride = 10 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // admin address set upon host zone creation, on stride + string safe_address_on_stride = 11 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + + // Previous redemption rate + string last_redemption_rate = 12 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // Current redemption rate + string redemption_rate = 13 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // Min outer redemption rate - adjusted by governance + string min_redemption_rate = 14 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // Max outer redemption rate - adjusted by governance + string max_redemption_rate = 15 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // Min inner redemption rate - adjusted by controller + string min_inner_redemption_rate = 16 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // Max inner redemption rate - adjusted by controller + string max_inner_redemption_rate = 17 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + + // Total delegated balance on the host zone delegation account + string delegated_balance = 18 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + + // The undelegation period for Dymension in days + uint64 unbonding_period_seconds = 19; + // Indicates whether the host zone has been halted + bool halted = 20; +} + +// Status fields for a delegation record +// Note: There is an important assumption here that tokens in the deposit +// account should not be tracked by these records. The record is created as soon +// as the tokens leave stride +// Additionally, the GetActiveDelegationRecords query filters for records that +// are either TRANSFER_IN_PROGERSS or DELEGATION_QUEUE. If a new active status +// is added, the keeper must be modified +enum DelegationRecordStatus { + option (gogoproto.goproto_enum_prefix) = false; + + // TRANSFER_IN_PROGRESS indicates the native tokens are being sent from the + // deposit account to the delegation account + TRANSFER_IN_PROGRESS = 0; + // TRANSFER_FAILED indicates that the transfer either timed out or was an ack + // failure + TRANSFER_FAILED = 1; + // DELEGATION_QUEUE indicates the tokens have landed on the host zone and are + // ready to be delegated + DELEGATION_QUEUE = 2; + // DELEGATION_COMPLETE indicates the delegation has been completed + DELEGATION_COMPLETE = 3; +} + +// Status fields for an unbonding record +enum UnbondingRecordStatus { + option (gogoproto.goproto_enum_prefix) = false; + + // ACCUMULATING_REDEMPTIONS indicates redemptions are still being accumulated + // on this record + ACCUMULATING_REDEMPTIONS = 0; + // UNBONDING_QUEUE indicates the unbond amount for this epoch has been froze + // and the tokens are ready to be unbonded on the host zone + UNBONDING_QUEUE = 1; + // UNBONDING_IN_PROGRESS indicates the unbonding is currently in progress on + // the host zone + UNBONDING_IN_PROGRESS = 2; + // UNBONDED indicates the unbonding is finished on the host zone and the + // tokens are still in the delegation account + UNBONDED = 3; + // CLAIMABLE indicates the unbonded tokens have been swept to stride and are + // ready to be distributed to users + CLAIMABLE = 4; + // CLAIMED indicates the full unbonding cycle has been completed + CLAIMED = 5; +} + +// DelegationRecords track the aggregate liquid stakes and delegations +// for a given epoch +// Note: There is an important assumption here that tokens in the deposit +// account should not be tracked by these records. The record is created as soon +// as the tokens leave stride +message DelegationRecord { + // Deposit record unique ID + uint64 id = 1; + // The amount of native tokens that should be delegated + string native_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The status indicating the point in the delegation's lifecycle + DelegationRecordStatus status = 3; + // The tx hash of the delegation on the host zone + string tx_hash = 4; +} + +// UnbondingRecords track the aggregate unbondings across an epoch +message UnbondingRecord { + // Unbonding record ID + uint64 id = 1; + // The status indicating the point in the delegation's lifecycle + UnbondingRecordStatus status = 2; + // The amount of stTokens that were redeemed + string st_token_amount = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The corresponding amount of native tokens that should be unbonded + string native_amount = 4 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The Unix timestamp (in seconds) at which the unbonding completes + uint64 unbonding_completion_time_seconds = 5; + // The tx hash of the undelegation on the host zone + string undelegation_tx_hash = 6; + // The tx hash of the unbonded token sweep on the host zone + string unbonded_token_sweep_tx_hash = 7; +} + +// RedemptionRecords track an individual user's redemption claims +message RedemptionRecord { + // Unbonding record ID + uint64 unbonding_record_id = 1; + // Redeemer + string redeemer = 2; + // The amount of stTokens that were redeemed + string st_token_amount = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The corresponding amount of native tokens that should be unbonded + string native_amount = 4 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +// SlashRecords log adjustments to the delegated balance +message SlashRecord { + // The slash record monotonically increasing ID + uint64 id = 1; + // The Unix timestamp (in seconds) when the slash adjustment was processed on + // stride + uint64 time = 2; + // The delta by which the total delegated amount changed from slash + string native_amount = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The address (or addresses) of the validator that was slashed + string validator_address = 4; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/stakedym/tx.proto b/packages/cosmic-proto/proto/stride/stakedym/tx.proto new file mode 100644 index 00000000000..6f65c423700 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakedym/tx.proto @@ -0,0 +1,236 @@ + +syntax = "proto3"; +package stride.stakedym; + +import "cosmos/msg/v1/msg.proto"; +import "amino/amino.proto"; +import "gogoproto/gogo.proto"; +import "cosmos/base/v1beta1/coin.proto"; +import "cosmos_proto/cosmos.proto"; +import "stride/stakedym/stakedym.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakedym/types"; + +enum OverwritableRecordType { + option (gogoproto.goproto_enum_prefix) = false; + + RECORD_TYPE_DELEGATION = 0; + RECORD_TYPE_UNBONDING = 1; + RECORD_TYPE_REDEMPTION = 2; +} + +// Msg defines the Msg service. +service Msg { + // User transaction to liquid stake native tokens into stTokens + rpc LiquidStake(MsgLiquidStake) returns (MsgLiquidStakeResponse); + + // User transaction to redeem stake stTokens into native tokens + rpc RedeemStake(MsgRedeemStake) returns (MsgRedeemStakeResponse); + + // Operator transaction to confirm a delegation was submitted + // on the host chain + rpc ConfirmDelegation(MsgConfirmDelegation) + returns (MsgConfirmDelegationResponse); + + // Operator transaction to confirm an undelegation was submitted + // on the host chain + rpc ConfirmUndelegation(MsgConfirmUndelegation) + returns (MsgConfirmUndelegationResponse); + + // Operator transaction to confirm unbonded tokens were transferred back to + // stride + rpc ConfirmUnbondedTokenSweep(MsgConfirmUnbondedTokenSweep) + returns (MsgConfirmUnbondedTokenSweepResponse); + + // Operator transaction to adjust the delegated balance after a validator was + // slashed + rpc AdjustDelegatedBalance(MsgAdjustDelegatedBalance) + returns (MsgAdjustDelegatedBalanceResponse); + + // Adjusts the inner redemption rate bounds on the host zone + rpc UpdateInnerRedemptionRateBounds(MsgUpdateInnerRedemptionRateBounds) + returns (MsgUpdateInnerRedemptionRateBoundsResponse); + + // Unhalts the host zone if redemption rates were exceeded + rpc ResumeHostZone(MsgResumeHostZone) returns (MsgResumeHostZoneResponse); + + // Trigger updating the redemption rate + rpc RefreshRedemptionRate(MsgRefreshRedemptionRate) + returns (MsgRefreshRedemptionRateResponse); + + // Overwrites a delegation record + rpc OverwriteDelegationRecord(MsgOverwriteDelegationRecord) + returns (MsgOverwriteDelegationRecordResponse); + + // Overwrites a unbonding record + rpc OverwriteUnbondingRecord(MsgOverwriteUnbondingRecord) + returns (MsgOverwriteUnbondingRecordResponse); + + // Overwrites a redemption record + rpc OverwriteRedemptionRecord(MsgOverwriteRedemptionRecord) + returns (MsgOverwriteRedemptionRecordResponse); + + // Sets the operator address + rpc SetOperatorAddress(MsgSetOperatorAddress) + returns (MsgSetOperatorAddressResponse); +} + +// LiquidStake +message MsgLiquidStake { + option (cosmos.msg.v1.signer) = "staker"; + option (amino.name) = "stakedym/MsgLiquidStake"; + + string staker = 1; + string native_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} +message MsgLiquidStakeResponse { + cosmos.base.v1beta1.Coin st_token = 1 [ + (gogoproto.nullable) = false, + (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins" + ]; +} + +// RedeemStake +message MsgRedeemStake { + option (cosmos.msg.v1.signer) = "redeemer"; + option (amino.name) = "stakedym/MsgRedeemStake"; + + string redeemer = 1; + string st_token_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} +message MsgRedeemStakeResponse { + cosmos.base.v1beta1.Coin native_token = 1 [ + (gogoproto.nullable) = false, + (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins" + ]; +} + +// ConfirmDelegation +message MsgConfirmDelegation { + option (cosmos.msg.v1.signer) = "operator"; + option (amino.name) = "stakedym/MsgConfirmDelegation"; + + string operator = 1; + uint64 record_id = 2; + string tx_hash = 3; +} +message MsgConfirmDelegationResponse {} + +// ConfirmUndelegation +message MsgConfirmUndelegation { + option (cosmos.msg.v1.signer) = "operator"; + option (amino.name) = "stakedym/MsgConfirmUndelegation"; + + string operator = 1; + uint64 record_id = 2; + string tx_hash = 3; +} +message MsgConfirmUndelegationResponse {} + +// ConfirmUnbondedTokenSweep +message MsgConfirmUnbondedTokenSweep { + option (cosmos.msg.v1.signer) = "operator"; + option (amino.name) = "stakedym/MsgConfirmUnbondedTokenSweep"; + + string operator = 1; + uint64 record_id = 2; + string tx_hash = 3; +} +message MsgConfirmUnbondedTokenSweepResponse {} + +// AdjustDelegatedBalance +message MsgAdjustDelegatedBalance { + option (cosmos.msg.v1.signer) = "operator"; + option (amino.name) = "stakedym/MsgAdjustDelegatedBalance"; + + string operator = 1; + string delegation_offset = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string validator_address = 3; +} +message MsgAdjustDelegatedBalanceResponse {} + +// UpdateInnerRedemptionRate +message MsgUpdateInnerRedemptionRateBounds { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "stakedym/MsgUpdateRedemptionRateBounds"; + + string creator = 1; + string min_inner_redemption_rate = 2 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + string max_inner_redemption_rate = 3 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; +} +message MsgUpdateInnerRedemptionRateBoundsResponse {} + +// ResumeHostZone +message MsgResumeHostZone { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "stakedym/MsgResumeHostZone"; + + string creator = 1; +} +message MsgResumeHostZoneResponse {} + +// RefreshRedemptionRate +message MsgRefreshRedemptionRate { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "stakedym/MsgRefreshRedemptionRate"; + + string creator = 1; +} +message MsgRefreshRedemptionRateResponse {} + +// OverwriteDelegationRecord +message MsgOverwriteDelegationRecord { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "stakedym/MsgOverwriteDelegationRecord"; + + string creator = 1; + DelegationRecord delegation_record = 2; +} +message MsgOverwriteDelegationRecordResponse {} + +// OverwriteUnbondingRecord +message MsgOverwriteUnbondingRecord { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "stakedym/MsgOverwriteUnbondingRecord"; + + string creator = 1; + UnbondingRecord unbonding_record = 2; +} +message MsgOverwriteUnbondingRecordResponse {} + +// OverwriteRedemptionRecord +message MsgOverwriteRedemptionRecord { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "stakedym/MsgOverwriteRedemptionRecord"; + + string creator = 1; + RedemptionRecord redemption_record = 2; +} +message MsgOverwriteRedemptionRecordResponse {} + +// SetOperatorAddress +message MsgSetOperatorAddress { + option (cosmos.msg.v1.signer) = "signer"; + option (amino.name) = "stakedym/MsgSetOperatorAddress"; + + string signer = 1; + string operator = 2; +} +message MsgSetOperatorAddressResponse {} diff --git a/packages/cosmic-proto/proto/stride/stakeibc/README.md b/packages/cosmic-proto/proto/stride/stakeibc/README.md new file mode 100755 index 00000000000..6ab06a4a5a5 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/README.md @@ -0,0 +1,5 @@ +Some of the data structures used in this module were inspired by Quicksilver. + +Specifically, we used their modeling of interchain accounts and zones (although the implementation has since diverged) for the following data structures +- Icaaccount +- HostZone diff --git a/packages/cosmic-proto/proto/stride/stakeibc/address_unbonding.proto b/packages/cosmic-proto/proto/stride/stakeibc/address_unbonding.proto new file mode 100644 index 00000000000..2790f813c01 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/address_unbonding.proto @@ -0,0 +1,19 @@ +syntax = "proto3"; +package stride.stakeibc; + +import "gogoproto/gogo.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +message AddressUnbonding { + string address = 1; + string receiver = 2; + string unbonding_estimated_time = 3; + string amount = 4 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string denom = 5; + bool claim_is_pending = 8; + uint64 epoch_number = 9; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/stakeibc/callbacks.proto b/packages/cosmic-proto/proto/stride/stakeibc/callbacks.proto new file mode 100644 index 00000000000..9d9e32edd34 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/callbacks.proto @@ -0,0 +1,101 @@ +syntax = "proto3"; +package stride.stakeibc; +import "gogoproto/gogo.proto"; +import "cosmos/base/v1beta1/coin.proto"; +import "stride/records/records.proto"; +import "stride/stakeibc/host_zone.proto"; +import "stride/stakeibc/validator.proto"; +import "stride/stakeibc/ica_account.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +message SplitDelegation { + string validator = 1; + string amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +message SplitUndelegation { + string validator = 1; + string native_token_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +message DelegateCallback { + string host_zone_id = 1; + uint64 deposit_record_id = 2; + repeated SplitDelegation split_delegations = 3; +} + +message ClaimCallback { + string user_redemption_record_id = 1; + string chain_id = 2; + uint64 epoch_number = 3; +} + +message ReinvestCallback { + cosmos.base.v1beta1.Coin reinvest_amount = 1 [ + (gogoproto.nullable) = false, + (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coin" + ]; + string host_zone_id = 3; +} + +message UndelegateCallback { + string host_zone_id = 1; + repeated SplitUndelegation split_undelegations = 2; + repeated uint64 epoch_unbonding_record_ids = 3; +} + +message RedemptionCallback { + string host_zone_id = 1; + repeated uint64 epoch_unbonding_record_ids = 2; +} + +message Rebalancing { + string src_validator = 1; + string dst_validator = 2; + string amt = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +message RebalanceCallback { + string host_zone_id = 1; + repeated Rebalancing rebalancings = 2; +} + +message DetokenizeSharesCallback { records.LSMTokenDeposit deposit = 1; } + +message LSMLiquidStake { + records.LSMTokenDeposit deposit = 1; + HostZone host_zone = 2; + Validator validator = 3; +} + +message ValidatorSharesToTokensQueryCallback { + LSMLiquidStake lsm_liquid_stake = 1; +} + +message DelegatorSharesQueryCallback { + // Validator delegation at the time the query is submitted + string initial_validator_delegation = 1 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +message CommunityPoolBalanceQueryCallback { + ICAAccountType ica_type = 1; + string denom = 2; +} + +message TradeRouteCallback { + string reward_denom = 1; + string host_denom = 2; +} diff --git a/packages/cosmic-proto/proto/stride/stakeibc/epoch_tracker.proto b/packages/cosmic-proto/proto/stride/stakeibc/epoch_tracker.proto new file mode 100755 index 00000000000..e38db55a7d3 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/epoch_tracker.proto @@ -0,0 +1,11 @@ +syntax = "proto3"; +package stride.stakeibc; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +message EpochTracker { + string epoch_identifier = 1; + uint64 epoch_number = 2; + uint64 next_epoch_start_time = 3; + uint64 duration = 4; +} diff --git a/packages/cosmic-proto/proto/stride/stakeibc/genesis.proto b/packages/cosmic-proto/proto/stride/stakeibc/genesis.proto new file mode 100644 index 00000000000..b4875bbbb58 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/genesis.proto @@ -0,0 +1,21 @@ +syntax = "proto3"; +package stride.stakeibc; + +import "gogoproto/gogo.proto"; +import "stride/stakeibc/params.proto"; +import "stride/stakeibc/host_zone.proto"; +import "stride/stakeibc/epoch_tracker.proto"; +import "stride/stakeibc/trade_route.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +// GenesisState defines the stakeibc module's genesis state. +message GenesisState { + Params params = 1 [ (gogoproto.nullable) = false ]; + string port_id = 2; + repeated HostZone host_zone_list = 5 [ (gogoproto.nullable) = false ]; + repeated EpochTracker epoch_tracker_list = 10 + [ (gogoproto.nullable) = false ]; + repeated TradeRoute trade_routes = 12 [ (gogoproto.nullable) = false ]; + reserved 3, 4, 6, 9, 11; +} diff --git a/packages/cosmic-proto/proto/stride/stakeibc/gov.proto b/packages/cosmic-proto/proto/stride/stakeibc/gov.proto new file mode 100644 index 00000000000..c4328308435 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/gov.proto @@ -0,0 +1,29 @@ +syntax = "proto3"; +package stride.stakeibc; +import "gogoproto/gogo.proto"; +import "stride/stakeibc/validator.proto"; +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +message AddValidatorsProposal { + option (gogoproto.equal) = true; + option (gogoproto.goproto_getters) = false; + option (gogoproto.goproto_stringer) = false; + + string title = 1; + string description = 2; + string host_zone = 3; + repeated Validator validators = 4; + string deposit = 5 [ (gogoproto.moretags) = "yaml:\"deposit\"" ]; +} + +message ToggleLSMProposal { + option (gogoproto.equal) = true; + option (gogoproto.goproto_getters) = false; + option (gogoproto.goproto_stringer) = false; + + string title = 1; + string description = 2; + string host_zone = 3; + bool enabled = 4; + string deposit = 5 [ (gogoproto.moretags) = "yaml:\"deposit\"" ]; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/stakeibc/host_zone.proto b/packages/cosmic-proto/proto/stride/stakeibc/host_zone.proto new file mode 100644 index 00000000000..174859edc75 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/host_zone.proto @@ -0,0 +1,140 @@ +syntax = "proto3"; +package stride.stakeibc; + +import "stride/stakeibc/validator.proto"; +import "gogoproto/gogo.proto"; +import "cosmos_proto/cosmos.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +// CommunityPoolRebate stores the size of the community pool liquid stake +// (denominated in stTokens) and the rebate rate as a decimal +message CommunityPoolRebate { + // Rebate percentage as a decimal (e.g. 0.2 for 20%) + string rebate_rate = 1 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // Number of stTokens received from the community pool liquid stake + string liquid_staked_st_token_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +// Core data structure to track liquid staking zones +message HostZone { + // Chain ID of the host zone + string chain_id = 1; + // Bech32 prefix of host zone's address + string bech32prefix = 17; + // ConnectionID from Stride to the host zone (ID is on the stride side) + string connection_id = 2; + // Transfer Channel ID from Stride to the host zone (ID is on the stride side) + string transfer_channel_id = 12; + // ibc denom of the host zone's native token on stride + string ibc_denom = 8; + // native denom on host zone + string host_denom = 9; + // The unbonding period in days (e.g. 21) + uint64 unbonding_period = 26; + // List of validators that are delegated to + repeated Validator validators = 3; + // Address that custodies native tokens during a liquid stake + string deposit_address = 18 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // ICA Address on the host zone responsible for collecting rewards + string withdrawal_ica_address = 22 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // ICA Address on the host zone responsible for commission + string fee_ica_address = 23 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // ICA Address on the host zone responsible for staking and unstaking + string delegation_ica_address = 24 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // ICA Address that receives unstaked tokens after they've finished unbonding + string redemption_ica_address = 25 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // ICA Address that receives tokens from a community pool to liquid stake or + // redeem In the case of a liquid stake, the community pool deposits native + // tokens In the case of a redemption, the community pool deposits stTokens + string community_pool_deposit_ica_address = 30 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // ICA Address that distributes tokens back to the community pool during a + // community pool liquid stake or redeem In the case of a liquid stake, the + // return address sends back stTokens In the case of a redemption, the return + // address sends back native tokens + string community_pool_return_ica_address = 31 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Module account on Stride that receives native tokens from the deposit ICA + // and liquid stakes them + string community_pool_stake_holding_address = 32 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Module account on Stride that receives stTokens from the deposit ICA and + // redeems them + string community_pool_redeem_holding_address = 33 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Optional community pool address to send tokens to after a community pool + // liquid stake or redemption If this address is empty, the tokens are sent to + // the main community pool + string community_pool_treasury_address = 35 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // The total delegated balance on the host zone + string total_delegations = 13 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The redemption rate from the previous epoch + string last_redemption_rate = 10 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // The current redemption rate + string redemption_rate = 11 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // The min outer redemption rate bound - controlled only be governance + // The min inner bound cannot exceed this bound + string min_redemption_rate = 20 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // The max outer redemption rate bound - controlled only be governance + // The max inner bound cannot exceed this bound + string max_redemption_rate = 21 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // The min minner redemption rate bound - controlled by the admin + // If the redemption rate exceeds this bound, the host zone is halted + string min_inner_redemption_rate = 28 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // The max minner redemption rate bound - controlled by the admin + // If the redemption rate exceeds this bound, the host zone is halted + string max_inner_redemption_rate = 29 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // The max number of messages that can be sent in a delegation + // or undelegation ICA tx + uint64 max_messages_per_ica_tx = 36; + // Indicates whether redemptions are allowed through this module + bool redemptions_enabled = 37; + // An optional fee rebate + // If there is no rebate for the host zone, this will be nil + CommunityPoolRebate community_pool_rebate = 34; + // A boolean indicating whether the chain has LSM enabled + bool lsm_liquid_stake_enabled = 27; + // A boolean indicating whether the chain is currently halted + bool halted = 19; + reserved 4, 5, 6, 7, 14, 15, 16; +} diff --git a/packages/cosmic-proto/proto/stride/stakeibc/ica_account.proto b/packages/cosmic-proto/proto/stride/stakeibc/ica_account.proto new file mode 100644 index 00000000000..bf228433c87 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/ica_account.proto @@ -0,0 +1,22 @@ +syntax = "proto3"; +package stride.stakeibc; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +enum ICAAccountType { + DELEGATION = 0; + FEE = 1; + WITHDRAWAL = 2; + REDEMPTION = 3; + COMMUNITY_POOL_DEPOSIT = 4; + COMMUNITY_POOL_RETURN = 5; + CONVERTER_UNWIND = 6; + CONVERTER_TRADE = 7; +} + +message ICAAccount { + string chain_id = 1; + ICAAccountType type = 2; + string connection_id = 3; + string address = 4; +} diff --git a/packages/cosmic-proto/proto/stride/stakeibc/packet.proto b/packages/cosmic-proto/proto/stride/stakeibc/packet.proto new file mode 100755 index 00000000000..1d69c4bf398 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/packet.proto @@ -0,0 +1,17 @@ +syntax = "proto3"; +package stride.stakeibc; + +// this line is used by starport scaffolding # proto/packet/import + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +message StakeibcPacketData { + oneof packet { + NoData no_data = 1; + // this line is used by starport scaffolding # ibc/packet/proto/field + } +} + +message NoData {} + +// this line is used by starport scaffolding # ibc/packet/proto/message \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/stakeibc/params.proto b/packages/cosmic-proto/proto/stride/stakeibc/params.proto new file mode 100755 index 00000000000..f2aa7281e12 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/params.proto @@ -0,0 +1,32 @@ +syntax = "proto3"; +package stride.stakeibc; + +import "gogoproto/gogo.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +// Params defines the parameters for the module. +// next id: 20 +message Params { + option (gogoproto.goproto_stringer) = false; + + // define epoch lengths, in stride_epochs + uint64 rewards_interval = 1; + uint64 delegate_interval = 6; + uint64 deposit_interval = 2; + uint64 redemption_rate_interval = 3; + uint64 stride_commission = 4; + uint64 reinvest_interval = 7; + uint64 ica_timeout_nanos = 9; + uint64 buffer_size = 10; + uint64 ibc_timeout_blocks = 11; + uint64 fee_transfer_timeout_nanos = 12; + uint64 max_stake_ica_calls_per_epoch = 13; + uint64 default_min_redemption_rate_threshold = 14; + uint64 default_max_redemption_rate_threshold = 15; + uint64 ibc_transfer_timeout_nanos = 16; + uint64 validator_slash_query_threshold = 19; + uint64 validator_weight_cap = 20; + + reserved 8, 17, 18; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/stakeibc/query.proto b/packages/cosmic-proto/proto/stride/stakeibc/query.proto new file mode 100644 index 00000000000..501555fde25 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/query.proto @@ -0,0 +1,161 @@ +syntax = "proto3"; +package stride.stakeibc; + +import "gogoproto/gogo.proto"; +import "google/api/annotations.proto"; +import "cosmos/base/query/v1beta1/pagination.proto"; +import "stride/stakeibc/params.proto"; +import "stride/stakeibc/validator.proto"; +import "stride/stakeibc/host_zone.proto"; +import "stride/stakeibc/epoch_tracker.proto"; +import "stride/stakeibc/address_unbonding.proto"; +import "stride/stakeibc/trade_route.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +// Query defines the gRPC querier service. +service Query { + // Parameters queries the parameters of the module. + rpc Params(QueryParamsRequest) returns (QueryParamsResponse) { + option (google.api.http).get = "/Stridelabs/stride/stakeibc/params"; + } + // Queries a Validator by host zone. + rpc Validators(QueryGetValidatorsRequest) + returns (QueryGetValidatorsResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakeibc/validators/{chain_id}"; + } + // Queries a HostZone by id. + rpc HostZone(QueryGetHostZoneRequest) returns (QueryGetHostZoneResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakeibc/host_zone/{chain_id}"; + } + + // Queries a list of HostZone items. + rpc HostZoneAll(QueryAllHostZoneRequest) returns (QueryAllHostZoneResponse) { + option (google.api.http).get = "/Stride-Labs/stride/stakeibc/host_zone"; + } + + // Queries a list of ModuleAddress items. + rpc ModuleAddress(QueryModuleAddressRequest) + returns (QueryModuleAddressResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakeibc/module_address/{name}"; + } + // QueryInterchainAccountFromAddress returns the interchain account for given + // owner address on a given connection pair + rpc InterchainAccountFromAddress(QueryInterchainAccountFromAddressRequest) + returns (QueryInterchainAccountFromAddressResponse); + + // Queries a EpochTracker by index. + rpc EpochTracker(QueryGetEpochTrackerRequest) + returns (QueryGetEpochTrackerResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakeibc/epoch_tracker/{epoch_identifier}"; + } + + // Queries a list of EpochTracker items. + rpc EpochTrackerAll(QueryAllEpochTrackerRequest) + returns (QueryAllEpochTrackerResponse) { + option (google.api.http).get = "/Stride-Labs/stride/stakeibc/epoch_tracker"; + } + + // Queries the next packet sequence for one for a given channel + rpc NextPacketSequence(QueryGetNextPacketSequenceRequest) + returns (QueryGetNextPacketSequenceResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakeibc/next_packet_sequence/{channel_id}/" + "{port_id}"; + } + + // Queries an address's unbondings + rpc AddressUnbondings(QueryAddressUnbondings) + returns (QueryAddressUnbondingsResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/stakeibc/unbondings/{address}"; + } + + // Queries all trade routes + rpc AllTradeRoutes(QueryAllTradeRoutes) + returns (QueryAllTradeRoutesResponse) { + option (google.api.http).get = "/Stride-Labs/stride/stakeibc/trade_routes"; + } +} + +// QueryInterchainAccountFromAddressRequest is the request type for the +// Query/InterchainAccountAddress RPC +message QueryInterchainAccountFromAddressRequest { + string owner = 1; + string connection_id = 2 [ (gogoproto.moretags) = "yaml:\"connection_id\"" ]; +} + +// QueryInterchainAccountFromAddressResponse the response type for the +// Query/InterchainAccountAddress RPC +message QueryInterchainAccountFromAddressResponse { + string interchain_account_address = 1 + [ (gogoproto.moretags) = "yaml:\"interchain_account_address\"" ]; +} + +// QueryParamsRequest is request type for the Query/Params RPC method. +message QueryParamsRequest {} + +// QueryParamsResponse is response type for the Query/Params RPC method. +message QueryParamsResponse { + // params holds all the parameters of this module. + Params params = 1 [ (gogoproto.nullable) = false ]; +} + +message QueryGetValidatorsRequest { string chain_id = 1; } + +message QueryGetValidatorsResponse { repeated Validator validators = 1; } + +message QueryGetHostZoneRequest { string chain_id = 1; } + +message QueryGetHostZoneResponse { + HostZone host_zone = 1 [ (gogoproto.nullable) = false ]; +} + +message QueryAllHostZoneRequest { + cosmos.base.query.v1beta1.PageRequest pagination = 1; +} + +message QueryAllHostZoneResponse { + repeated HostZone host_zone = 1 [ (gogoproto.nullable) = false ]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +message QueryModuleAddressRequest { string name = 1; } + +message QueryModuleAddressResponse { string addr = 1; } + +message QueryGetEpochTrackerRequest { string epoch_identifier = 1; } + +message QueryGetEpochTrackerResponse { + EpochTracker epoch_tracker = 1 [ (gogoproto.nullable) = false ]; +} + +message QueryAllEpochTrackerRequest {} + +message QueryAllEpochTrackerResponse { + repeated EpochTracker epoch_tracker = 1 [ (gogoproto.nullable) = false ]; +} + +message QueryGetNextPacketSequenceRequest { + string channel_id = 1; + string port_id = 2; +} + +message QueryGetNextPacketSequenceResponse { uint64 sequence = 1; } + +message QueryAddressUnbondings { string address = 1; } + +message QueryAddressUnbondingsResponse { + repeated AddressUnbonding address_unbondings = 1 + [ (gogoproto.nullable) = false ]; +} + +message QueryAllTradeRoutes {}; + +message QueryAllTradeRoutesResponse { + repeated TradeRoute trade_routes = 1 [ (gogoproto.nullable) = false ]; +} diff --git a/packages/cosmic-proto/proto/stride/stakeibc/trade_route.proto b/packages/cosmic-proto/proto/stride/stakeibc/trade_route.proto new file mode 100644 index 00000000000..7b542f80db7 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/trade_route.proto @@ -0,0 +1,106 @@ +syntax = "proto3"; +package stride.stakeibc; + +import "gogoproto/gogo.proto"; +import "stride/stakeibc/ica_account.proto"; +import "cosmos_proto/cosmos.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +// Deprecated, this configuration is no longer needed since swaps +// are executed off-chain via authz +// +// Stores pool information needed to execute the swap along a trade route +message TradeConfig { + option deprecated = true; + + // Currently Osmosis is the only trade chain so this is an osmosis pool id + uint64 pool_id = 1; + + // Spot price in the pool to convert the reward denom to the host denom + // output_tokens = swap_price * input tokens + // This value may be slightly stale as it is updated by an ICQ + string swap_price = 2 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // unix time in seconds that the price was last updated + uint64 price_update_timestamp = 3; + + // Threshold defining the percentage of tokens that could be lost in the trade + // This captures both the loss from slippage and from a stale price on stride + // 0.05 means the output from the trade can be no less than a 5% deviation + // from the current value + string max_allowed_swap_loss_rate = 4 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + + // min and max set boundaries of reward denom on trade chain we will swap + // min also decides when reward token transfers are worth it (transfer fees) + string min_swap_amount = 5 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string max_swap_amount = 6 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +// TradeRoute represents a round trip including info on transfer and how to do +// the swap. It makes the assumption that the reward token is always foreign to +// the host so therefore the first two hops are to unwind the ibc denom enroute +// to the trade chain and the last hop is the return so funds start/end in the +// withdrawl ICA on hostZone +// The structure is key'd on reward denom and host denom in their native forms +// (i.e. reward_denom_on_reward_zone and host_denom_on_host_zone) +message TradeRoute { + // ibc denom for the reward on the host zone + string reward_denom_on_host_zone = 1; + // should be the native denom for the reward chain + string reward_denom_on_reward_zone = 2; + // ibc denom of the reward on the trade chain, input to the swap + string reward_denom_on_trade_zone = 3; + // ibc of the host denom on the trade chain, output from the swap + string host_denom_on_trade_zone = 4; + // should be the same as the native host denom on the host chain + string host_denom_on_host_zone = 5; + + // ICAAccount on the host zone with the reward tokens + // This is the same as the host zone withdrawal ICA account + ICAAccount host_account = 6 [ (gogoproto.nullable) = false ]; + // ICAAccount on the reward zone that is acts as the intermediate + // receiver of the transfer from host zone to trade zone + ICAAccount reward_account = 7 [ (gogoproto.nullable) = false ]; + // ICAAccount responsible for executing the swap of reward + // tokens for host tokens + ICAAccount trade_account = 8 [ (gogoproto.nullable) = false ]; + + // Channel responsible for the transfer of reward tokens from the host + // zone to the reward zone. This is the channel ID on the host zone side + string host_to_reward_channel_id = 9; + // Channel responsible for the transfer of reward tokens from the reward + // zone to the trade zone. This is the channel ID on the reward zone side + string reward_to_trade_channel_id = 10; + // Channel responsible for the transfer of host tokens from the trade + // zone, back to the host zone. This is the channel ID on the trade zone side + string trade_to_host_channel_id = 11; + + // Minimum amount of reward token that must be accumulated before + // the tokens are transferred to the trade ICA + string min_transfer_amount = 13 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + + // Deprecated, the trades are now executed off-chain via authz + // so the trade configuration is no longer needed + // + // specifies the configuration needed to execute the swap + // such as pool_id, slippage, min trade amount, etc. + TradeConfig trade_config = 12 + [ deprecated = true, (gogoproto.nullable) = false ]; +} diff --git a/packages/cosmic-proto/proto/stride/stakeibc/tx.proto b/packages/cosmic-proto/proto/stride/stakeibc/tx.proto new file mode 100644 index 00000000000..398fcc7ac17 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/tx.proto @@ -0,0 +1,428 @@ +syntax = "proto3"; +package stride.stakeibc; + +import "stride/stakeibc/validator.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; +import "gogoproto/gogo.proto"; +import "cosmos_proto/cosmos.proto"; +import "cosmos/base/v1beta1/coin.proto"; +import "cosmos/msg/v1/msg.proto"; +import "amino/amino.proto"; + +// Msg defines the Msg service. +service Msg { + rpc LiquidStake(MsgLiquidStake) returns (MsgLiquidStakeResponse); + rpc LSMLiquidStake(MsgLSMLiquidStake) returns (MsgLSMLiquidStakeResponse); + rpc RedeemStake(MsgRedeemStake) returns (MsgRedeemStakeResponse); + rpc RegisterHostZone(MsgRegisterHostZone) + returns (MsgRegisterHostZoneResponse); + rpc ClaimUndelegatedTokens(MsgClaimUndelegatedTokens) + returns (MsgClaimUndelegatedTokensResponse); + rpc RebalanceValidators(MsgRebalanceValidators) + returns (MsgRebalanceValidatorsResponse); + rpc AddValidators(MsgAddValidators) returns (MsgAddValidatorsResponse); + rpc ChangeValidatorWeight(MsgChangeValidatorWeights) + returns (MsgChangeValidatorWeightsResponse); + rpc DeleteValidator(MsgDeleteValidator) returns (MsgDeleteValidatorResponse); + rpc RestoreInterchainAccount(MsgRestoreInterchainAccount) + returns (MsgRestoreInterchainAccountResponse); + rpc CloseDelegationChannel(MsgCloseDelegationChannel) + returns (MsgCloseDelegationChannelResponse); + rpc UpdateValidatorSharesExchRate(MsgUpdateValidatorSharesExchRate) + returns (MsgUpdateValidatorSharesExchRateResponse); + rpc CalibrateDelegation(MsgCalibrateDelegation) + returns (MsgCalibrateDelegationResponse); + rpc ClearBalance(MsgClearBalance) returns (MsgClearBalanceResponse); + rpc UpdateInnerRedemptionRateBounds(MsgUpdateInnerRedemptionRateBounds) + returns (MsgUpdateInnerRedemptionRateBoundsResponse); + rpc ResumeHostZone(MsgResumeHostZone) returns (MsgResumeHostZoneResponse); + rpc CreateTradeRoute(MsgCreateTradeRoute) + returns (MsgCreateTradeRouteResponse); + rpc DeleteTradeRoute(MsgDeleteTradeRoute) + returns (MsgDeleteTradeRouteResponse); + rpc UpdateTradeRoute(MsgUpdateTradeRoute) + returns (MsgUpdateTradeRouteResponse); + rpc SetCommunityPoolRebate(MsgSetCommunityPoolRebate) + returns (MsgSetCommunityPoolRebateResponse); + rpc ToggleTradeController(MsgToggleTradeController) + returns (MsgToggleTradeControllerResponse); + rpc UpdateHostZoneParams(MsgUpdateHostZoneParams) + returns (MsgUpdateHostZoneParamsResponse); +} + +message MsgUpdateInnerRedemptionRateBounds { + string creator = 1; + string chain_id = 2; + string min_inner_redemption_rate = 3 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + string max_inner_redemption_rate = 4 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; +} + +message MsgUpdateInnerRedemptionRateBoundsResponse {} + +message MsgLiquidStake { + string creator = 1; + string amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string host_denom = 3; +} +message MsgLiquidStakeResponse { + cosmos.base.v1beta1.Coin st_token = 1 [ + (gogoproto.nullable) = false, + (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins" + ]; +} + +message MsgLSMLiquidStake { + string creator = 1; + string amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string lsm_token_ibc_denom = 3; +} +message MsgLSMLiquidStakeResponse { bool transaction_complete = 1; } + +message MsgClearBalance { + string creator = 1; + string chain_id = 2; + string amount = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string channel = 4; +} +message MsgClearBalanceResponse {} + +message MsgRedeemStake { + string creator = 1; + string amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string host_zone = 3; + string receiver = 4; +} +message MsgRedeemStakeResponse {} + +// next: 15 +message MsgRegisterHostZone { + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string connection_id = 2 [ (gogoproto.moretags) = "yaml:\"connection_id\"" ]; + string bech32prefix = 12; + string host_denom = 4 [ (gogoproto.moretags) = "yaml:\"host_denom\"" ]; + string ibc_denom = 5 [ (gogoproto.moretags) = "yaml:\"ibc_denom\"" ]; + string creator = 6; + string transfer_channel_id = 10 + [ (gogoproto.moretags) = "yaml:\"transfer_channel_id\"" ]; + uint64 unbonding_period = 11 + [ (gogoproto.moretags) = "yaml:\"unbonding_period\"" ]; + string min_redemption_rate = 13 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + string max_redemption_rate = 14 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + bool lsm_liquid_stake_enabled = 15; + string community_pool_treasury_address = 16; + uint64 max_messages_per_ica_tx = 17; +} +message MsgRegisterHostZoneResponse {} + +message MsgClaimUndelegatedTokens { + string creator = 1; + // UserUnbondingRecords are keyed on {chain_id}.{epoch}.{receiver} + string host_zone_id = 2; + uint64 epoch = 3; + string receiver = 5; + reserved 4; +} +message MsgClaimUndelegatedTokensResponse {} + +message MsgRebalanceValidators { + string creator = 1; + string host_zone = 2; + uint64 num_rebalance = 3; +} +message MsgRebalanceValidatorsResponse {} + +message MsgAddValidators { + string creator = 1; + string host_zone = 2; + repeated Validator validators = 3; +} +message MsgAddValidatorsResponse {} + +message ValidatorWeight { + string address = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + uint64 weight = 2; +} +message MsgChangeValidatorWeights { + string creator = 1; + string host_zone = 2; + repeated ValidatorWeight validator_weights = 3; +} +message MsgChangeValidatorWeightsResponse {} + +message MsgDeleteValidator { + string creator = 1; + string host_zone = 2; + string val_addr = 3 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; +} +message MsgDeleteValidatorResponse {} + +message MsgRestoreInterchainAccount { + string creator = 1; + string chain_id = 2; + string connection_id = 3; + string account_owner = 4; +} +message MsgRestoreInterchainAccountResponse {} + +message MsgCloseDelegationChannel { + string creator = 1; + string chain_id = 2; +} +message MsgCloseDelegationChannelResponse {} + +message MsgUpdateValidatorSharesExchRate { + string creator = 1; + string chain_id = 2; + string valoper = 3; +} +message MsgUpdateValidatorSharesExchRateResponse {} + +message MsgCalibrateDelegation { + string creator = 1; + string chain_id = 2; + string valoper = 3; +} +message MsgCalibrateDelegationResponse {} + +message MsgResumeHostZone { + string creator = 1; + string chain_id = 2; +} +message MsgResumeHostZoneResponse {} + +// Creates a new trade route +message MsgCreateTradeRoute { + option (cosmos.msg.v1.signer) = "authority"; + option (amino.name) = "stride/x/stakeibc/MsgCreateTradeRoute"; + + // authority is the address that controls the module (defaults to x/gov unless + // overwritten). + string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + + // The chain ID of the host zone + string host_chain_id = 2; + + // Connection IDs between stride and the other zones + string stride_to_reward_connection_id = 3; + string stride_to_trade_connection_id = 4; + + // Transfer channels between the host, reward, and trade zones + string host_to_reward_transfer_channel_id = 5; + string reward_to_trade_transfer_channel_id = 6; + string trade_to_host_transfer_channel_id = 7; + + // ibc denom for the reward token on the host zone (e.g. ibc/usdc on dYdX) + string reward_denom_on_host = 8; + // native denom of reward token on the reward zone (e.g. usdc on Noble) + string reward_denom_on_reward = 9; + // ibc denom of the reward token on the trade zone (e.g. ibc/usdc on Osmosis) + string reward_denom_on_trade = 10; + // ibc denom of the host's token on the trade zone (e.g. ibc/dydx on Osmosis) + string host_denom_on_trade = 11; + // the host zone's native denom (e.g. dydx on dYdX) + string host_denom_on_host = 12; + + // Deprecated, the trades are now executed off-chain via authz + // + // The osmosis pool ID + uint64 pool_id = 13 [ deprecated = true ]; + + // Deprecated, the trades are now executed off-chain via authz + // + // Threshold defining the percentage of tokens that could be lost in the trade + // This captures both the loss from slippage and from a stale price on stride + // "0.05" means the output from the trade can be no less than a 5% deviation + // from the current value + string max_allowed_swap_loss_rate = 14 [ deprecated = true ]; + + // Deprecated, the trades are now executed off-chain via authz + // + // minimum amount of reward tokens to initate a swap + // if not provided, defaults to 0 + string min_swap_amount = 15 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // Deprecated, the trades are now executed off-chain via authz + // + // maximum amount of reward tokens in a single swap + // if not provided, defaults to 10e24 + string max_swap_amount = 16 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + + // Minimum amount of reward token that must be accumulated before + // the tokens are transferred to the trade ICA + string min_transfer_amount = 17 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} +message MsgCreateTradeRouteResponse {} + +// Deletes a trade route +message MsgDeleteTradeRoute { + option (cosmos.msg.v1.signer) = "authority"; + option (amino.name) = "stride/x/stakeibc/MsgDeleteTradeRoute"; + + // authority is the address that controls the module (defaults to x/gov unless + // overwritten). + string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + + // The reward denom of the route in it's native form (e.g. usdc) + string reward_denom = 2; + // The host zone's denom in it's native form (e.g. dydx) + string host_denom = 3; +} +message MsgDeleteTradeRouteResponse {} + +// Updates the config of a trade route +message MsgUpdateTradeRoute { + option (cosmos.msg.v1.signer) = "authority"; + option (amino.name) = "stride/x/stakeibc/MsgUpdateTradeRoute"; + + // authority is the address that controls the module (defaults to x/gov unless + // overwritten). + string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + + // The reward denom of the route in it's native form (e.g. usdc) + string reward_denom = 2; + // The host zone's denom in it's native form (e.g. dydx) + string host_denom = 3; + + // Deprecated, the trades are now executed off-chain via authz + // + // The osmosis pool ID + uint64 pool_id = 4 [ deprecated = true ]; + + // Deprecated, the trades are now executed off-chain via authz + // + // Threshold defining the percentage of tokens that could be lost in the trade + // This captures both the loss from slippage and from a stale price on stride + // "0.05" means the output from the trade can be no less than a 5% deviation + // from the current value + string max_allowed_swap_loss_rate = 5 [ deprecated = true ]; + + // Deprecated, the trades are now executed off-chain via authz + // + // minimum amount of reward tokens to initate a swap + // if not provided, defaults to 0 + string min_swap_amount = 6 [ + deprecated = true, + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // Deprecated, the trades are now executed off-chain via authz + // + // maximum amount of reward tokens in a single swap + // if not provided, defaults to 10e24 + string max_swap_amount = 7 [ + deprecated = true, + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + + // Minimum amount of reward token that must be accumulated before + // the tokens are transferred to the trade ICA + string min_transfer_amount = 17 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} +message MsgUpdateTradeRouteResponse {} + +// Registers or updates a community pool rebate by specifying the amount liquid +// staked +message MsgSetCommunityPoolRebate { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "stride/x/stakeibc/MsgSetCommunityPoolRebate"; + + // Message signer (admin only) + string creator = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Chain id of the chain whose community pool has a liquid staking rebate + // arrangement with stride + string chain_id = 2; + // Rebate percentage represented as a decimal (e.g. 0.2 for 20%) + string rebate_rate = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + // Number of stTokens recieved by the community pool after liquid staking + string liquid_staked_st_token_amount = 4 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} +message MsgSetCommunityPoolRebateResponse {} + +enum AuthzPermissionChange { + // Grant the address trade permissions + GRANT = 0; + // Revoke trade permissions from the address + REVOKE = 1; +} + +// Grants or revokes trade permissions to a given address via authz +message MsgToggleTradeController { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "stride/x/stakeibc/MsgToggleTradeController"; + + // Message signer (admin only) + string creator = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Chain ID of the trade account + string chain_id = 2; + // Permission change (either grant or revoke) + AuthzPermissionChange permission_change = 3; + // Address of trade operator + string address = 4; + // Option to grant/revoke the legacy osmosis swap message + bool legacy = 5; +} +message MsgToggleTradeControllerResponse {} + +// Updates host zone params +message MsgUpdateHostZoneParams { + option (cosmos.msg.v1.signer) = "authority"; + option (amino.name) = "stride/x/stakeibc/MsgUpdateHostZoneParams"; + + // authority is the address that controls the module (defaults to x/gov unless + // overwritten). + string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Chain ID of the host zone + string chain_id = 2; + // Max messages that can be sent in a single ICA message + uint64 max_messages_per_ica_tx = 3; +} +message MsgUpdateHostZoneParamsResponse {} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/stakeibc/validator.proto b/packages/cosmic-proto/proto/stride/stakeibc/validator.proto new file mode 100644 index 00000000000..4eb4202ba51 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/stakeibc/validator.proto @@ -0,0 +1,31 @@ +syntax = "proto3"; +package stride.stakeibc; +import "cosmos_proto/cosmos.proto"; +import "gogoproto/gogo.proto"; +option go_package = "github.com/Stride-Labs/stride/v25/x/stakeibc/types"; + +message Validator { + string name = 1; + string address = 2 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + uint64 weight = 6; + string delegation = 5 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string slash_query_progress_tracker = 9 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string slash_query_checkpoint = 12 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string shares_to_tokens_rate = 10 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + int64 delegation_changes_in_progress = 11; + bool slash_query_in_progress = 13; + reserved 3, 4, 7, 8; +} diff --git a/packages/cosmic-proto/proto/stride/staketia/genesis.proto b/packages/cosmic-proto/proto/stride/staketia/genesis.proto new file mode 100644 index 00000000000..2fbc6f330bc --- /dev/null +++ b/packages/cosmic-proto/proto/stride/staketia/genesis.proto @@ -0,0 +1,37 @@ +syntax = "proto3"; +package stride.staketia; + +import "gogoproto/gogo.proto"; +import "stride/staketia/staketia.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/staketia/types"; + +// Params defines the staketia module parameters. +message Params {} + +// TransferInProgressRecordIds stores record IDs for delegation records +// that have a transfer in progress +message TransferInProgressRecordIds { + string channel_id = 1; + uint64 sequence = 2; + uint64 record_id = 3; +} + +// GenesisState defines the staketia module's genesis state. +message GenesisState { + Params params = 1 [ + (gogoproto.moretags) = "yaml:\"params\"", + (gogoproto.nullable) = false + ]; + + HostZone host_zone = 2 [ (gogoproto.nullable) = false ]; + repeated DelegationRecord delegation_records = 3 + [ (gogoproto.nullable) = false ]; + repeated UnbondingRecord unbonding_records = 4 + [ (gogoproto.nullable) = false ]; + repeated RedemptionRecord redemption_records = 5 + [ (gogoproto.nullable) = false ]; + repeated SlashRecord slash_records = 6 [ (gogoproto.nullable) = false ]; + repeated TransferInProgressRecordIds transfer_in_progress_record_ids = 7 + [ (gogoproto.nullable) = false ]; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/staketia/query.proto b/packages/cosmic-proto/proto/stride/staketia/query.proto new file mode 100644 index 00000000000..0e9bd8dc294 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/staketia/query.proto @@ -0,0 +1,118 @@ + +syntax = "proto3"; +package stride.staketia; + +import "stride/staketia/staketia.proto"; +import "gogoproto/gogo.proto"; +import "google/api/annotations.proto"; +import "cosmos/base/query/v1beta1/pagination.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/staketia/types"; + +// Query defines the gRPC querier service. +service Query { + // Queries the host zone struct + rpc HostZone(QueryHostZoneRequest) returns (QueryHostZoneResponse) { + option (google.api.http).get = "/Stride-Labs/stride/staketia/host_zone"; + } + + // Queries the delegation records with an optional to include archived records + // Ex: + // - /delegation_records + // - /delegation_records?include_archived=true + rpc DelegationRecords(QueryDelegationRecordsRequest) + returns (QueryDelegationRecordsResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/staketia/delegation_records"; + } + + // Queries the unbonding records with an optional to include archived records + // Ex: + // - /unbonding_records + // - /unbonding_records?include_archived=true + rpc UnbondingRecords(QueryUnbondingRecordsRequest) + returns (QueryUnbondingRecordsResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/staketia/unbonding_records"; + } + + // Queries a single user redemption record + rpc RedemptionRecord(QueryRedemptionRecordRequest) + returns (QueryRedemptionRecordResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/staketia/redemption_record/{unbonding_record_id}/" + "{address}"; + } + + // Queries all redemption records with optional filters + // Ex: + // - /redemption_records + // - /redemption_records?address=strideXXX + // - /redemption_records?unbonding_record_id=100 + rpc RedemptionRecords(QueryRedemptionRecordsRequest) + returns (QueryRedemptionRecordsResponse) { + option (google.api.http).get = + "/Stride-Labs/stride/staketia/redemption_records"; + } + + // Queries slash records + rpc SlashRecords(QuerySlashRecordsRequest) + returns (QuerySlashRecordsResponse) { + option (google.api.http).get = "/Stride-Labs/stride/staketia/slash_records"; + } +} + +// Host Zone +message QueryHostZoneRequest {}; +message QueryHostZoneResponse { HostZone host_zone = 1; } + +// All Delegation Records +message QueryDelegationRecordsRequest { bool include_archived = 1; }; +message QueryDelegationRecordsResponse { + repeated DelegationRecord delegation_records = 1 + [ (gogoproto.nullable) = false ]; +} + +// All Unbonding Records +message QueryUnbondingRecordsRequest { bool include_archived = 1; }; +message QueryUnbondingRecordsResponse { + repeated UnbondingRecord unbonding_records = 1 + [ (gogoproto.nullable) = false ]; +} + +// Single Redemption Record +message QueryRedemptionRecordRequest { + uint64 unbonding_record_id = 1; + string address = 2; +}; +message QueryRedemptionRecordResponse { + RedemptionRecordResponse redemption_record_response = 1; +} + +// All Redemption Records +message QueryRedemptionRecordsRequest { + string address = 1; + uint64 unbonding_record_id = 2; + cosmos.base.query.v1beta1.PageRequest pagination = 3; +}; +message QueryRedemptionRecordsResponse { + repeated RedemptionRecordResponse redemption_record_responses = 1 + [ (gogoproto.nullable) = false ]; + cosmos.base.query.v1beta1.PageResponse pagination = 2; +} + +// All Slash Records +message QuerySlashRecordsRequest {}; +message QuerySlashRecordsResponse { + repeated SlashRecord slash_records = 1 [ (gogoproto.nullable) = false ]; +} + +// Data structure for frontend to consume +message RedemptionRecordResponse { + // Redemption record + RedemptionRecord redemption_record = 1; + + // The Unix timestamp (in seconds) at which the unbonding for the UR + // associated with this RR completes + uint64 unbonding_completion_time_seconds = 2; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/staketia/staketia.proto b/packages/cosmic-proto/proto/stride/staketia/staketia.proto new file mode 100644 index 00000000000..f8699d9f787 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/staketia/staketia.proto @@ -0,0 +1,173 @@ +syntax = "proto3"; +package stride.staketia; + +import "cosmos_proto/cosmos.proto"; +import "gogoproto/gogo.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/staketia/types"; + +message HostZone { + // Chain ID + string chain_id = 1; + // Native token denom on the host zone (e.g. utia) + string native_token_denom = 2; + // IBC denom of the native token as it lives on stride (e.g. ibc/...) + string native_token_ibc_denom = 3; + // Transfer channel ID from stride to the host zone + string transfer_channel_id = 4; + + // Operator controlled delegation address on the host zone + string delegation_address = 5 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Operator controlled reward address on the host zone + string reward_address = 6 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Deposit address on stride + string deposit_address = 7 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Redemption address on stride + string redemption_address = 8 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // Claim address on stride + string claim_address = 9 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // operator address set by safe, on stride + string operator_address_on_stride = 10 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + // admin address set upon host zone creation, on stride + string safe_address_on_stride = 11 + [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; + + // Total delegated balance on the host zone delegation account + string remaining_delegated_balance = 18 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + + // The undelegation period for Celestia in days + uint64 unbonding_period_seconds = 19; + // Indicates whether the host zone has been halted + bool halted = 20; + + reserved 13; +} + +// Status fields for a delegation record +// Note: There is an important assumption here that tokens in the deposit +// account should not be tracked by these records. The record is created as soon +// as the tokens leave stride +// Additionally, the GetActiveDelegationRecords query filters for records that +// are either TRANSFER_IN_PROGERSS or DELEGATION_QUEUE. If a new active status +// is added, the keeper must be modified +enum DelegationRecordStatus { + option (gogoproto.goproto_enum_prefix) = false; + + // TRANSFER_IN_PROGRESS indicates the native tokens are being sent from the + // deposit account to the delegation account + TRANSFER_IN_PROGRESS = 0; + // TRANSFER_FAILED indicates that the transfer either timed out or was an ack + // failure + TRANSFER_FAILED = 1; + // DELEGATION_QUEUE indicates the tokens have landed on the host zone and are + // ready to be delegated + DELEGATION_QUEUE = 2; + // DELEGATION_COMPLETE indicates the delegation has been completed + DELEGATION_COMPLETE = 3; +} + +// Status fields for an unbonding record +enum UnbondingRecordStatus { + option (gogoproto.goproto_enum_prefix) = false; + + // ACCUMULATING_REDEMPTIONS indicates redemptions are still being accumulated + // on this record + ACCUMULATING_REDEMPTIONS = 0; + // UNBONDING_QUEUE indicates the unbond amount for this epoch has been froze + // and the tokens are ready to be unbonded on the host zone + UNBONDING_QUEUE = 1; + // UNBONDING_IN_PROGRESS indicates the unbonding is currently in progress on + // the host zone + UNBONDING_IN_PROGRESS = 2; + // UNBONDED indicates the unbonding is finished on the host zone and the + // tokens are still in the delegation account + UNBONDED = 3; + // CLAIMABLE indicates the unbonded tokens have been swept to stride and are + // ready to be distributed to users + CLAIMABLE = 4; + // CLAIMED indicates the full unbonding cycle has been completed + CLAIMED = 5; +} + +// DelegationRecords track the aggregate liquid stakes and delegations +// for a given epoch +// Note: There is an important assumption here that tokens in the deposit +// account should not be tracked by these records. The record is created as soon +// as the tokens leave stride +message DelegationRecord { + // Deposit record unique ID + uint64 id = 1; + // The amount of native tokens that should be delegated + string native_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The status indicating the point in the delegation's lifecycle + DelegationRecordStatus status = 3; + // The tx hash of the delegation on the host zone + string tx_hash = 4; +} + +// UnbondingRecords track the aggregate unbondings across an epoch +message UnbondingRecord { + // Unbonding record ID + uint64 id = 1; + // The status indicating the point in the delegation's lifecycle + UnbondingRecordStatus status = 2; + // The amount of stTokens that were redeemed + string st_token_amount = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The corresponding amount of native tokens that should be unbonded + string native_amount = 4 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The Unix timestamp (in seconds) at which the unbonding completes + uint64 unbonding_completion_time_seconds = 5; + // The tx hash of the undelegation on the host zone + string undelegation_tx_hash = 6; + // The tx hash of the unbonded token sweep on the host zone + string unbonded_token_sweep_tx_hash = 7; +} + +// RedemptionRecords track an individual user's redemption claims +message RedemptionRecord { + // Unbonding record ID + uint64 unbonding_record_id = 1; + // Redeemer + string redeemer = 2; + // The amount of stTokens that were redeemed + string st_token_amount = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The corresponding amount of native tokens that should be unbonded + string native_amount = 4 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} + +// SlashRecords log adjustments to the delegated balance +message SlashRecord { + // The slash record monotonically increasing ID + uint64 id = 1; + // The Unix timestamp (in seconds) when the slash adjustment was processed on + // stride + uint64 time = 2; + // The delta by which the total delegated amount changed from slash + string native_amount = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The address (or addresses) of the validator that was slashed + string validator_address = 4; +} \ No newline at end of file diff --git a/packages/cosmic-proto/proto/stride/staketia/tx.proto b/packages/cosmic-proto/proto/stride/staketia/tx.proto new file mode 100644 index 00000000000..182f9d07f93 --- /dev/null +++ b/packages/cosmic-proto/proto/stride/staketia/tx.proto @@ -0,0 +1,243 @@ + +syntax = "proto3"; +package stride.staketia; + +import "cosmos/msg/v1/msg.proto"; +import "amino/amino.proto"; +import "gogoproto/gogo.proto"; +import "cosmos/base/v1beta1/coin.proto"; +import "cosmos_proto/cosmos.proto"; +import "stride/staketia/staketia.proto"; + +option go_package = "github.com/Stride-Labs/stride/v25/x/staketia/types"; + +enum OverwritableRecordType { + option (gogoproto.goproto_enum_prefix) = false; + + RECORD_TYPE_DELEGATION = 0; + RECORD_TYPE_UNBONDING = 1; + RECORD_TYPE_REDEMPTION = 2; +} + +// Msg defines the Msg service. +service Msg { + // User transaction to liquid stake native tokens into stTokens + rpc LiquidStake(MsgLiquidStake) returns (MsgLiquidStakeResponse); + + // User transaction to redeem stake stTokens into native tokens + rpc RedeemStake(MsgRedeemStake) returns (MsgRedeemStakeResponse); + + // Operator transaction to confirm a delegation was submitted + // on the host chain + rpc ConfirmDelegation(MsgConfirmDelegation) + returns (MsgConfirmDelegationResponse); + + // Operator transaction to confirm an undelegation was submitted + // on the host chain + rpc ConfirmUndelegation(MsgConfirmUndelegation) + returns (MsgConfirmUndelegationResponse); + + // Operator transaction to confirm unbonded tokens were transferred back to + // stride + rpc ConfirmUnbondedTokenSweep(MsgConfirmUnbondedTokenSweep) + returns (MsgConfirmUnbondedTokenSweepResponse); + + // Operator transaction to adjust the delegated balance after a validator was + // slashed + rpc AdjustDelegatedBalance(MsgAdjustDelegatedBalance) + returns (MsgAdjustDelegatedBalanceResponse); + + // Adjusts the inner redemption rate bounds on the host zone + rpc UpdateInnerRedemptionRateBounds(MsgUpdateInnerRedemptionRateBounds) + returns (MsgUpdateInnerRedemptionRateBoundsResponse); + + // Unhalts the host zone if redemption rates were exceeded + rpc ResumeHostZone(MsgResumeHostZone) returns (MsgResumeHostZoneResponse); + + // Trigger updating the redemption rate + rpc RefreshRedemptionRate(MsgRefreshRedemptionRate) + returns (MsgRefreshRedemptionRateResponse); + + // Overwrites a delegation record + rpc OverwriteDelegationRecord(MsgOverwriteDelegationRecord) + returns (MsgOverwriteDelegationRecordResponse); + + // Overwrites a unbonding record + rpc OverwriteUnbondingRecord(MsgOverwriteUnbondingRecord) + returns (MsgOverwriteUnbondingRecordResponse); + + // Overwrites a redemption record + rpc OverwriteRedemptionRecord(MsgOverwriteRedemptionRecord) + returns (MsgOverwriteRedemptionRecordResponse); + + // Sets the operator address + rpc SetOperatorAddress(MsgSetOperatorAddress) + returns (MsgSetOperatorAddressResponse); +} + +// Deprecated: Liquid stakes should be handled in stakeibc +// LiquidStake +message MsgLiquidStake { + option (cosmos.msg.v1.signer) = "staker"; + option (amino.name) = "staketia/MsgLiquidStake"; + option deprecated = true; + + string staker = 1; + string native_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; +} +message MsgLiquidStakeResponse { + option deprecated = true; + + cosmos.base.v1beta1.Coin st_token = 1 [ + (gogoproto.nullable) = false, + (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins" + ]; +} + +// RedeemStake +message MsgRedeemStake { + option (cosmos.msg.v1.signer) = "redeemer"; + option (amino.name) = "staketia/MsgRedeemStake"; + + string redeemer = 1; + string st_token_amount = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + // The receiver field is a celestia address + // It is only used in the case where the redemption spills over to stakeibc + string receiver = 3; +} +message MsgRedeemStakeResponse { + cosmos.base.v1beta1.Coin native_token = 1 [ + (gogoproto.nullable) = false, + (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins" + ]; +} + +// ConfirmDelegation +message MsgConfirmDelegation { + option (cosmos.msg.v1.signer) = "operator"; + option (amino.name) = "staketia/MsgConfirmDelegation"; + + string operator = 1; + uint64 record_id = 2; + string tx_hash = 3; +} +message MsgConfirmDelegationResponse {} + +// ConfirmUndelegation +message MsgConfirmUndelegation { + option (cosmos.msg.v1.signer) = "operator"; + option (amino.name) = "staketia/MsgConfirmUndelegation"; + + string operator = 1; + uint64 record_id = 2; + string tx_hash = 3; +} +message MsgConfirmUndelegationResponse {} + +// ConfirmUnbondedTokenSweep +message MsgConfirmUnbondedTokenSweep { + option (cosmos.msg.v1.signer) = "operator"; + option (amino.name) = "staketia/MsgConfirmUnbondedTokenSweep"; + + string operator = 1; + uint64 record_id = 2; + string tx_hash = 3; +} +message MsgConfirmUnbondedTokenSweepResponse {} + +// AdjustDelegatedBalance +message MsgAdjustDelegatedBalance { + option (cosmos.msg.v1.signer) = "operator"; + option (amino.name) = "staketia/MsgAdjustDelegatedBalance"; + + string operator = 1; + string delegation_offset = 2 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", + (gogoproto.nullable) = false + ]; + string validator_address = 3; +} +message MsgAdjustDelegatedBalanceResponse {} + +// UpdateInnerRedemptionRate +message MsgUpdateInnerRedemptionRateBounds { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "staketia/MsgUpdateRedemptionRateBounds"; + + string creator = 1; + string min_inner_redemption_rate = 2 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + string max_inner_redemption_rate = 3 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; +} +message MsgUpdateInnerRedemptionRateBoundsResponse {} + +// ResumeHostZone +message MsgResumeHostZone { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "staketia/MsgResumeHostZone"; + + string creator = 1; +} +message MsgResumeHostZoneResponse {} + +// RefreshRedemptionRate +message MsgRefreshRedemptionRate { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "staketia/MsgRefreshRedemptionRate"; + + string creator = 1; +} +message MsgRefreshRedemptionRateResponse {} + +// OverwriteDelegationRecord +message MsgOverwriteDelegationRecord { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "staketia/MsgOverwriteDelegationRecord"; + + string creator = 1; + DelegationRecord delegation_record = 2; +} +message MsgOverwriteDelegationRecordResponse {} + +// OverwriteUnbondingRecord +message MsgOverwriteUnbondingRecord { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "staketia/MsgOverwriteUnbondingRecord"; + + string creator = 1; + UnbondingRecord unbonding_record = 2; +} +message MsgOverwriteUnbondingRecordResponse {} + +// OverwriteRedemptionRecord +message MsgOverwriteRedemptionRecord { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "staketia/MsgOverwriteRedemptionRecord"; + + string creator = 1; + RedemptionRecord redemption_record = 2; +} +message MsgOverwriteRedemptionRecordResponse {} + +// SetOperatorAddress +message MsgSetOperatorAddress { + option (cosmos.msg.v1.signer) = "signer"; + option (amino.name) = "staketia/MsgSetOperatorAddress"; + + string signer = 1; + string operator = 2; +} +message MsgSetOperatorAddressResponse {} From d3c8d996d6411f3938d697bdb05e937739a846bb Mon Sep 17 00:00:00 2001 From: Turadg Aleahmad Date: Tue, 11 Feb 2025 14:40:16 -0800 Subject: [PATCH 5/5] feat: `stride/stake{dym,ibc,tia}/tx` Co-authored-by: 99adarsh --- packages/cosmic-proto/package.json | 12 + packages/cosmic-proto/src/codegen/index.ts | 1 + .../cosmic-proto/src/codegen/stride/bundle.ts | 69 + .../src/codegen/stride/epochs/genesis.ts | 285 + .../src/codegen/stride/epochs/query.ts | 536 ++ .../src/codegen/stride/records/callbacks.ts | 177 + .../src/codegen/stride/records/genesis.ts | 250 + .../src/codegen/stride/records/params.ts | 61 + .../src/codegen/stride/records/query.ts | 2176 ++++++++ .../src/codegen/stride/records/records.ts | 1103 ++++ .../src/codegen/stride/stakedym/genesis.ts | 420 ++ .../src/codegen/stride/stakedym/query.ts | 1269 +++++ .../src/codegen/stride/stakedym/stakedym.ts | 1144 ++++ .../src/codegen/stride/stakedym/tx.ts | 2294 ++++++++ .../stride/stakeibc/address_unbonding.ts | 160 + .../src/codegen/stride/stakeibc/callbacks.ts | 1518 ++++++ .../codegen/stride/stakeibc/epoch_tracker.ts | 136 + .../src/codegen/stride/stakeibc/genesis.ts | 163 + .../src/codegen/stride/stakeibc/gov.ts | 259 + .../src/codegen/stride/stakeibc/host_zone.ts | 753 +++ .../codegen/stride/stakeibc/ica_account.ts | 183 + .../src/codegen/stride/stakeibc/packet.ts | 139 + .../src/codegen/stride/stakeibc/params.ts | 397 ++ .../src/codegen/stride/stakeibc/query.ts | 1925 +++++++ .../codegen/stride/stakeibc/trade_route.ts | 548 ++ .../src/codegen/stride/stakeibc/tx.ts | 4607 +++++++++++++++++ .../src/codegen/stride/stakeibc/validator.ts | 204 + .../src/codegen/stride/staketia/genesis.ts | 420 ++ .../src/codegen/stride/staketia/query.ts | 1269 +++++ .../src/codegen/stride/staketia/staketia.ts | 1014 ++++ .../src/codegen/stride/staketia/tx.ts | 2320 +++++++++ .../src/codegen/tendermint/bundle.ts | 44 +- 32 files changed, 25834 insertions(+), 22 deletions(-) create mode 100644 packages/cosmic-proto/src/codegen/stride/bundle.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/epochs/genesis.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/epochs/query.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/records/callbacks.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/records/genesis.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/records/params.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/records/query.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/records/records.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakedym/genesis.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakedym/query.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakedym/stakedym.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakedym/tx.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/address_unbonding.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/callbacks.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/epoch_tracker.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/genesis.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/gov.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/host_zone.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/ica_account.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/packet.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/params.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/query.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/trade_route.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/tx.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/stakeibc/validator.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/staketia/genesis.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/staketia/query.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/staketia/staketia.ts create mode 100644 packages/cosmic-proto/src/codegen/stride/staketia/tx.ts diff --git a/packages/cosmic-proto/package.json b/packages/cosmic-proto/package.json index 006bf5c153c..3c4f8ba8361 100644 --- a/packages/cosmic-proto/package.json +++ b/packages/cosmic-proto/package.json @@ -100,6 +100,18 @@ "types": "./dist/codegen/icq/v1/packet.d.ts", "default": "./dist/codegen/icq/v1/packet.js" }, + "./stride/stakedym/tx.js": { + "types": "./dist/codegen/stride/stakedym/tx.d.ts", + "default": "./dist/codegen/stride/stakedym/tx.js" + }, + "./stride/stakeibc/tx.js": { + "types": "./dist/codegen/stride/stakeibc/tx.d.ts", + "default": "./dist/codegen/stride/stakeibc/tx.js" + }, + "./stride/staketia/tx.js": { + "types": "./dist/codegen/stride/staketia/tx.d.ts", + "default": "./dist/codegen/stride/staketia/tx.js" + }, "./swingset/msgs.js": { "types": "./dist/codegen/agoric/swingset/msgs.d.ts", "default": "./dist/codegen/agoric/swingset/msgs.js" diff --git a/packages/cosmic-proto/src/codegen/index.ts b/packages/cosmic-proto/src/codegen/index.ts index b252c2f50f7..2593420f2e3 100644 --- a/packages/cosmic-proto/src/codegen/index.ts +++ b/packages/cosmic-proto/src/codegen/index.ts @@ -15,6 +15,7 @@ export * from './google/bundle.js'; export * from './ibc/bundle.js'; export * from './icq/bundle.js'; export * from './ics23/bundle.js'; +export * from './stride/bundle.js'; export * from './tendermint/bundle.js'; export * from './json-safe.js'; export * from './varint.js'; diff --git a/packages/cosmic-proto/src/codegen/stride/bundle.ts b/packages/cosmic-proto/src/codegen/stride/bundle.ts new file mode 100644 index 00000000000..619073091cf --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/bundle.ts @@ -0,0 +1,69 @@ +//@ts-nocheck +import * as _140 from './epochs/genesis.js'; +import * as _141 from './epochs/query.js'; +import * as _142 from './records/callbacks.js'; +import * as _143 from './records/genesis.js'; +import * as _144 from './records/params.js'; +import * as _145 from './records/query.js'; +import * as _146 from './records/records.js'; +import * as _147 from './stakedym/genesis.js'; +import * as _148 from './stakedym/query.js'; +import * as _149 from './stakedym/stakedym.js'; +import * as _150 from './stakedym/tx.js'; +import * as _151 from './stakeibc/address_unbonding.js'; +import * as _152 from './stakeibc/callbacks.js'; +import * as _153 from './stakeibc/epoch_tracker.js'; +import * as _154 from './stakeibc/genesis.js'; +import * as _155 from './stakeibc/gov.js'; +import * as _156 from './stakeibc/host_zone.js'; +import * as _157 from './stakeibc/ica_account.js'; +import * as _158 from './stakeibc/packet.js'; +import * as _159 from './stakeibc/params.js'; +import * as _160 from './stakeibc/query.js'; +import * as _161 from './stakeibc/trade_route.js'; +import * as _162 from './stakeibc/tx.js'; +import * as _163 from './stakeibc/validator.js'; +import * as _164 from './staketia/genesis.js'; +import * as _165 from './staketia/query.js'; +import * as _166 from './staketia/staketia.js'; +import * as _167 from './staketia/tx.js'; +export namespace stride { + export const epochs = { + ..._140, + ..._141, + }; + export const records = { + ..._142, + ..._143, + ..._144, + ..._145, + ..._146, + }; + export const stakedym = { + ..._147, + ..._148, + ..._149, + ..._150, + }; + export const stakeibc = { + ..._151, + ..._152, + ..._153, + ..._154, + ..._155, + ..._156, + ..._157, + ..._158, + ..._159, + ..._160, + ..._161, + ..._162, + ..._163, + }; + export const staketia = { + ..._164, + ..._165, + ..._166, + ..._167, + }; +} diff --git a/packages/cosmic-proto/src/codegen/stride/epochs/genesis.ts b/packages/cosmic-proto/src/codegen/stride/epochs/genesis.ts new file mode 100644 index 00000000000..63e971921a0 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/epochs/genesis.ts @@ -0,0 +1,285 @@ +//@ts-nocheck +import { + Timestamp, + type TimestampSDKType, +} from '../../google/protobuf/timestamp.js'; +import { + Duration, + type DurationSDKType, +} from '../../google/protobuf/duration.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet, fromJsonTimestamp, fromTimestamp } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface EpochInfo { + identifier: string; + startTime: Timestamp; + duration: Duration; + currentEpoch: bigint; + currentEpochStartTime: Timestamp; + epochCountingStarted: boolean; + currentEpochStartHeight: bigint; +} +export interface EpochInfoProtoMsg { + typeUrl: '/stride.epochs.EpochInfo'; + value: Uint8Array; +} +export interface EpochInfoSDKType { + identifier: string; + start_time: TimestampSDKType; + duration: DurationSDKType; + current_epoch: bigint; + current_epoch_start_time: TimestampSDKType; + epoch_counting_started: boolean; + current_epoch_start_height: bigint; +} +/** GenesisState defines the epochs module's genesis state. */ +export interface GenesisState { + epochs: EpochInfo[]; +} +export interface GenesisStateProtoMsg { + typeUrl: '/stride.epochs.GenesisState'; + value: Uint8Array; +} +/** GenesisState defines the epochs module's genesis state. */ +export interface GenesisStateSDKType { + epochs: EpochInfoSDKType[]; +} +function createBaseEpochInfo(): EpochInfo { + return { + identifier: '', + startTime: Timestamp.fromPartial({}), + duration: Duration.fromPartial({}), + currentEpoch: BigInt(0), + currentEpochStartTime: Timestamp.fromPartial({}), + epochCountingStarted: false, + currentEpochStartHeight: BigInt(0), + }; +} +export const EpochInfo = { + typeUrl: '/stride.epochs.EpochInfo', + encode( + message: EpochInfo, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.identifier !== '') { + writer.uint32(10).string(message.identifier); + } + if (message.startTime !== undefined) { + Timestamp.encode(message.startTime, writer.uint32(18).fork()).ldelim(); + } + if (message.duration !== undefined) { + Duration.encode(message.duration, writer.uint32(26).fork()).ldelim(); + } + if (message.currentEpoch !== BigInt(0)) { + writer.uint32(32).int64(message.currentEpoch); + } + if (message.currentEpochStartTime !== undefined) { + Timestamp.encode( + message.currentEpochStartTime, + writer.uint32(42).fork(), + ).ldelim(); + } + if (message.epochCountingStarted === true) { + writer.uint32(48).bool(message.epochCountingStarted); + } + if (message.currentEpochStartHeight !== BigInt(0)) { + writer.uint32(56).int64(message.currentEpochStartHeight); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): EpochInfo { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseEpochInfo(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.identifier = reader.string(); + break; + case 2: + message.startTime = Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.duration = Duration.decode(reader, reader.uint32()); + break; + case 4: + message.currentEpoch = reader.int64(); + break; + case 5: + message.currentEpochStartTime = Timestamp.decode( + reader, + reader.uint32(), + ); + break; + case 6: + message.epochCountingStarted = reader.bool(); + break; + case 7: + message.currentEpochStartHeight = reader.int64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): EpochInfo { + return { + identifier: isSet(object.identifier) ? String(object.identifier) : '', + startTime: isSet(object.startTime) + ? fromJsonTimestamp(object.startTime) + : undefined, + duration: isSet(object.duration) + ? Duration.fromJSON(object.duration) + : undefined, + currentEpoch: isSet(object.currentEpoch) + ? BigInt(object.currentEpoch.toString()) + : BigInt(0), + currentEpochStartTime: isSet(object.currentEpochStartTime) + ? fromJsonTimestamp(object.currentEpochStartTime) + : undefined, + epochCountingStarted: isSet(object.epochCountingStarted) + ? Boolean(object.epochCountingStarted) + : false, + currentEpochStartHeight: isSet(object.currentEpochStartHeight) + ? BigInt(object.currentEpochStartHeight.toString()) + : BigInt(0), + }; + }, + toJSON(message: EpochInfo): JsonSafe { + const obj: any = {}; + message.identifier !== undefined && (obj.identifier = message.identifier); + message.startTime !== undefined && + (obj.startTime = fromTimestamp(message.startTime).toISOString()); + message.duration !== undefined && + (obj.duration = message.duration + ? Duration.toJSON(message.duration) + : undefined); + message.currentEpoch !== undefined && + (obj.currentEpoch = (message.currentEpoch || BigInt(0)).toString()); + message.currentEpochStartTime !== undefined && + (obj.currentEpochStartTime = fromTimestamp( + message.currentEpochStartTime, + ).toISOString()); + message.epochCountingStarted !== undefined && + (obj.epochCountingStarted = message.epochCountingStarted); + message.currentEpochStartHeight !== undefined && + (obj.currentEpochStartHeight = ( + message.currentEpochStartHeight || BigInt(0) + ).toString()); + return obj; + }, + fromPartial(object: Partial): EpochInfo { + const message = createBaseEpochInfo(); + message.identifier = object.identifier ?? ''; + message.startTime = + object.startTime !== undefined && object.startTime !== null + ? Timestamp.fromPartial(object.startTime) + : undefined; + message.duration = + object.duration !== undefined && object.duration !== null + ? Duration.fromPartial(object.duration) + : undefined; + message.currentEpoch = + object.currentEpoch !== undefined && object.currentEpoch !== null + ? BigInt(object.currentEpoch.toString()) + : BigInt(0); + message.currentEpochStartTime = + object.currentEpochStartTime !== undefined && + object.currentEpochStartTime !== null + ? Timestamp.fromPartial(object.currentEpochStartTime) + : undefined; + message.epochCountingStarted = object.epochCountingStarted ?? false; + message.currentEpochStartHeight = + object.currentEpochStartHeight !== undefined && + object.currentEpochStartHeight !== null + ? BigInt(object.currentEpochStartHeight.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: EpochInfoProtoMsg): EpochInfo { + return EpochInfo.decode(message.value); + }, + toProto(message: EpochInfo): Uint8Array { + return EpochInfo.encode(message).finish(); + }, + toProtoMsg(message: EpochInfo): EpochInfoProtoMsg { + return { + typeUrl: '/stride.epochs.EpochInfo', + value: EpochInfo.encode(message).finish(), + }; + }, +}; +function createBaseGenesisState(): GenesisState { + return { + epochs: [], + }; +} +export const GenesisState = { + typeUrl: '/stride.epochs.GenesisState', + encode( + message: GenesisState, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.epochs) { + EpochInfo.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): GenesisState { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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.epochs.push(EpochInfo.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): GenesisState { + return { + epochs: Array.isArray(object?.epochs) + ? object.epochs.map((e: any) => EpochInfo.fromJSON(e)) + : [], + }; + }, + toJSON(message: GenesisState): JsonSafe { + const obj: any = {}; + if (message.epochs) { + obj.epochs = message.epochs.map(e => + e ? EpochInfo.toJSON(e) : undefined, + ); + } else { + obj.epochs = []; + } + return obj; + }, + fromPartial(object: Partial): GenesisState { + const message = createBaseGenesisState(); + message.epochs = object.epochs?.map(e => EpochInfo.fromPartial(e)) || []; + return message; + }, + fromProtoMsg(message: GenesisStateProtoMsg): GenesisState { + return GenesisState.decode(message.value); + }, + toProto(message: GenesisState): Uint8Array { + return GenesisState.encode(message).finish(); + }, + toProtoMsg(message: GenesisState): GenesisStateProtoMsg { + return { + typeUrl: '/stride.epochs.GenesisState', + value: GenesisState.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/epochs/query.ts b/packages/cosmic-proto/src/codegen/stride/epochs/query.ts new file mode 100644 index 00000000000..2a9c74d9565 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/epochs/query.ts @@ -0,0 +1,536 @@ +//@ts-nocheck +import { + PageRequest, + type PageRequestSDKType, + PageResponse, + type PageResponseSDKType, +} from '../../cosmos/base/query/v1beta1/pagination.js'; +import { EpochInfo, type EpochInfoSDKType } from './genesis.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface QueryEpochsInfoRequest { + pagination?: PageRequest; +} +export interface QueryEpochsInfoRequestProtoMsg { + typeUrl: '/stride.epochs.QueryEpochsInfoRequest'; + value: Uint8Array; +} +export interface QueryEpochsInfoRequestSDKType { + pagination?: PageRequestSDKType; +} +export interface QueryEpochsInfoResponse { + epochs: EpochInfo[]; + pagination?: PageResponse; +} +export interface QueryEpochsInfoResponseProtoMsg { + typeUrl: '/stride.epochs.QueryEpochsInfoResponse'; + value: Uint8Array; +} +export interface QueryEpochsInfoResponseSDKType { + epochs: EpochInfoSDKType[]; + pagination?: PageResponseSDKType; +} +export interface QueryCurrentEpochRequest { + identifier: string; +} +export interface QueryCurrentEpochRequestProtoMsg { + typeUrl: '/stride.epochs.QueryCurrentEpochRequest'; + value: Uint8Array; +} +export interface QueryCurrentEpochRequestSDKType { + identifier: string; +} +export interface QueryCurrentEpochResponse { + currentEpoch: bigint; +} +export interface QueryCurrentEpochResponseProtoMsg { + typeUrl: '/stride.epochs.QueryCurrentEpochResponse'; + value: Uint8Array; +} +export interface QueryCurrentEpochResponseSDKType { + current_epoch: bigint; +} +export interface QueryEpochInfoRequest { + identifier: string; +} +export interface QueryEpochInfoRequestProtoMsg { + typeUrl: '/stride.epochs.QueryEpochInfoRequest'; + value: Uint8Array; +} +export interface QueryEpochInfoRequestSDKType { + identifier: string; +} +export interface QueryEpochInfoResponse { + epoch: EpochInfo; +} +export interface QueryEpochInfoResponseProtoMsg { + typeUrl: '/stride.epochs.QueryEpochInfoResponse'; + value: Uint8Array; +} +export interface QueryEpochInfoResponseSDKType { + epoch: EpochInfoSDKType; +} +function createBaseQueryEpochsInfoRequest(): QueryEpochsInfoRequest { + return { + pagination: undefined, + }; +} +export const QueryEpochsInfoRequest = { + typeUrl: '/stride.epochs.QueryEpochsInfoRequest', + encode( + message: QueryEpochsInfoRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryEpochsInfoRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryEpochsInfoRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryEpochsInfoRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON(message: QueryEpochsInfoRequest): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial(object: Partial): QueryEpochsInfoRequest { + const message = createBaseQueryEpochsInfoRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryEpochsInfoRequestProtoMsg, + ): QueryEpochsInfoRequest { + return QueryEpochsInfoRequest.decode(message.value); + }, + toProto(message: QueryEpochsInfoRequest): Uint8Array { + return QueryEpochsInfoRequest.encode(message).finish(); + }, + toProtoMsg(message: QueryEpochsInfoRequest): QueryEpochsInfoRequestProtoMsg { + return { + typeUrl: '/stride.epochs.QueryEpochsInfoRequest', + value: QueryEpochsInfoRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryEpochsInfoResponse(): QueryEpochsInfoResponse { + return { + epochs: [], + pagination: undefined, + }; +} +export const QueryEpochsInfoResponse = { + typeUrl: '/stride.epochs.QueryEpochsInfoResponse', + encode( + message: QueryEpochsInfoResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.epochs) { + EpochInfo.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryEpochsInfoResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryEpochsInfoResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochs.push(EpochInfo.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryEpochsInfoResponse { + return { + epochs: Array.isArray(object?.epochs) + ? object.epochs.map((e: any) => EpochInfo.fromJSON(e)) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON(message: QueryEpochsInfoResponse): JsonSafe { + const obj: any = {}; + if (message.epochs) { + obj.epochs = message.epochs.map(e => + e ? EpochInfo.toJSON(e) : undefined, + ); + } else { + obj.epochs = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryEpochsInfoResponse { + const message = createBaseQueryEpochsInfoResponse(); + message.epochs = object.epochs?.map(e => EpochInfo.fromPartial(e)) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryEpochsInfoResponseProtoMsg, + ): QueryEpochsInfoResponse { + return QueryEpochsInfoResponse.decode(message.value); + }, + toProto(message: QueryEpochsInfoResponse): Uint8Array { + return QueryEpochsInfoResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryEpochsInfoResponse, + ): QueryEpochsInfoResponseProtoMsg { + return { + typeUrl: '/stride.epochs.QueryEpochsInfoResponse', + value: QueryEpochsInfoResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryCurrentEpochRequest(): QueryCurrentEpochRequest { + return { + identifier: '', + }; +} +export const QueryCurrentEpochRequest = { + typeUrl: '/stride.epochs.QueryCurrentEpochRequest', + encode( + message: QueryCurrentEpochRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.identifier !== '') { + writer.uint32(10).string(message.identifier); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryCurrentEpochRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryCurrentEpochRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.identifier = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryCurrentEpochRequest { + return { + identifier: isSet(object.identifier) ? String(object.identifier) : '', + }; + }, + toJSON( + message: QueryCurrentEpochRequest, + ): JsonSafe { + const obj: any = {}; + message.identifier !== undefined && (obj.identifier = message.identifier); + return obj; + }, + fromPartial( + object: Partial, + ): QueryCurrentEpochRequest { + const message = createBaseQueryCurrentEpochRequest(); + message.identifier = object.identifier ?? ''; + return message; + }, + fromProtoMsg( + message: QueryCurrentEpochRequestProtoMsg, + ): QueryCurrentEpochRequest { + return QueryCurrentEpochRequest.decode(message.value); + }, + toProto(message: QueryCurrentEpochRequest): Uint8Array { + return QueryCurrentEpochRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryCurrentEpochRequest, + ): QueryCurrentEpochRequestProtoMsg { + return { + typeUrl: '/stride.epochs.QueryCurrentEpochRequest', + value: QueryCurrentEpochRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryCurrentEpochResponse(): QueryCurrentEpochResponse { + return { + currentEpoch: BigInt(0), + }; +} +export const QueryCurrentEpochResponse = { + typeUrl: '/stride.epochs.QueryCurrentEpochResponse', + encode( + message: QueryCurrentEpochResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.currentEpoch !== BigInt(0)) { + writer.uint32(8).int64(message.currentEpoch); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryCurrentEpochResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryCurrentEpochResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.currentEpoch = reader.int64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryCurrentEpochResponse { + return { + currentEpoch: isSet(object.currentEpoch) + ? BigInt(object.currentEpoch.toString()) + : BigInt(0), + }; + }, + toJSON( + message: QueryCurrentEpochResponse, + ): JsonSafe { + const obj: any = {}; + message.currentEpoch !== undefined && + (obj.currentEpoch = (message.currentEpoch || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): QueryCurrentEpochResponse { + const message = createBaseQueryCurrentEpochResponse(); + message.currentEpoch = + object.currentEpoch !== undefined && object.currentEpoch !== null + ? BigInt(object.currentEpoch.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: QueryCurrentEpochResponseProtoMsg, + ): QueryCurrentEpochResponse { + return QueryCurrentEpochResponse.decode(message.value); + }, + toProto(message: QueryCurrentEpochResponse): Uint8Array { + return QueryCurrentEpochResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryCurrentEpochResponse, + ): QueryCurrentEpochResponseProtoMsg { + return { + typeUrl: '/stride.epochs.QueryCurrentEpochResponse', + value: QueryCurrentEpochResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryEpochInfoRequest(): QueryEpochInfoRequest { + return { + identifier: '', + }; +} +export const QueryEpochInfoRequest = { + typeUrl: '/stride.epochs.QueryEpochInfoRequest', + encode( + message: QueryEpochInfoRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.identifier !== '') { + writer.uint32(10).string(message.identifier); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryEpochInfoRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryEpochInfoRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.identifier = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryEpochInfoRequest { + return { + identifier: isSet(object.identifier) ? String(object.identifier) : '', + }; + }, + toJSON(message: QueryEpochInfoRequest): JsonSafe { + const obj: any = {}; + message.identifier !== undefined && (obj.identifier = message.identifier); + return obj; + }, + fromPartial(object: Partial): QueryEpochInfoRequest { + const message = createBaseQueryEpochInfoRequest(); + message.identifier = object.identifier ?? ''; + return message; + }, + fromProtoMsg(message: QueryEpochInfoRequestProtoMsg): QueryEpochInfoRequest { + return QueryEpochInfoRequest.decode(message.value); + }, + toProto(message: QueryEpochInfoRequest): Uint8Array { + return QueryEpochInfoRequest.encode(message).finish(); + }, + toProtoMsg(message: QueryEpochInfoRequest): QueryEpochInfoRequestProtoMsg { + return { + typeUrl: '/stride.epochs.QueryEpochInfoRequest', + value: QueryEpochInfoRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryEpochInfoResponse(): QueryEpochInfoResponse { + return { + epoch: EpochInfo.fromPartial({}), + }; +} +export const QueryEpochInfoResponse = { + typeUrl: '/stride.epochs.QueryEpochInfoResponse', + encode( + message: QueryEpochInfoResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.epoch !== undefined) { + EpochInfo.encode(message.epoch, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryEpochInfoResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryEpochInfoResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epoch = EpochInfo.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryEpochInfoResponse { + return { + epoch: isSet(object.epoch) ? EpochInfo.fromJSON(object.epoch) : undefined, + }; + }, + toJSON(message: QueryEpochInfoResponse): JsonSafe { + const obj: any = {}; + message.epoch !== undefined && + (obj.epoch = message.epoch ? EpochInfo.toJSON(message.epoch) : undefined); + return obj; + }, + fromPartial(object: Partial): QueryEpochInfoResponse { + const message = createBaseQueryEpochInfoResponse(); + message.epoch = + object.epoch !== undefined && object.epoch !== null + ? EpochInfo.fromPartial(object.epoch) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryEpochInfoResponseProtoMsg, + ): QueryEpochInfoResponse { + return QueryEpochInfoResponse.decode(message.value); + }, + toProto(message: QueryEpochInfoResponse): Uint8Array { + return QueryEpochInfoResponse.encode(message).finish(); + }, + toProtoMsg(message: QueryEpochInfoResponse): QueryEpochInfoResponseProtoMsg { + return { + typeUrl: '/stride.epochs.QueryEpochInfoResponse', + value: QueryEpochInfoResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/records/callbacks.ts b/packages/cosmic-proto/src/codegen/stride/records/callbacks.ts new file mode 100644 index 00000000000..b5c76c095ef --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/records/callbacks.ts @@ -0,0 +1,177 @@ +//@ts-nocheck +import { LSMTokenDeposit, type LSMTokenDepositSDKType } from './records.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface TransferCallback { + depositRecordId: bigint; +} +export interface TransferCallbackProtoMsg { + typeUrl: '/stride.records.TransferCallback'; + value: Uint8Array; +} +export interface TransferCallbackSDKType { + deposit_record_id: bigint; +} +export interface TransferLSMTokenCallback { + deposit?: LSMTokenDeposit; +} +export interface TransferLSMTokenCallbackProtoMsg { + typeUrl: '/stride.records.TransferLSMTokenCallback'; + value: Uint8Array; +} +export interface TransferLSMTokenCallbackSDKType { + deposit?: LSMTokenDepositSDKType; +} +function createBaseTransferCallback(): TransferCallback { + return { + depositRecordId: BigInt(0), + }; +} +export const TransferCallback = { + typeUrl: '/stride.records.TransferCallback', + encode( + message: TransferCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.depositRecordId !== BigInt(0)) { + writer.uint32(8).uint64(message.depositRecordId); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): TransferCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTransferCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositRecordId = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TransferCallback { + return { + depositRecordId: isSet(object.depositRecordId) + ? BigInt(object.depositRecordId.toString()) + : BigInt(0), + }; + }, + toJSON(message: TransferCallback): JsonSafe { + const obj: any = {}; + message.depositRecordId !== undefined && + (obj.depositRecordId = (message.depositRecordId || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): TransferCallback { + const message = createBaseTransferCallback(); + message.depositRecordId = + object.depositRecordId !== undefined && object.depositRecordId !== null + ? BigInt(object.depositRecordId.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: TransferCallbackProtoMsg): TransferCallback { + return TransferCallback.decode(message.value); + }, + toProto(message: TransferCallback): Uint8Array { + return TransferCallback.encode(message).finish(); + }, + toProtoMsg(message: TransferCallback): TransferCallbackProtoMsg { + return { + typeUrl: '/stride.records.TransferCallback', + value: TransferCallback.encode(message).finish(), + }; + }, +}; +function createBaseTransferLSMTokenCallback(): TransferLSMTokenCallback { + return { + deposit: undefined, + }; +} +export const TransferLSMTokenCallback = { + typeUrl: '/stride.records.TransferLSMTokenCallback', + encode( + message: TransferLSMTokenCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.deposit !== undefined) { + LSMTokenDeposit.encode( + message.deposit, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): TransferLSMTokenCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTransferLSMTokenCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.deposit = LSMTokenDeposit.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TransferLSMTokenCallback { + return { + deposit: isSet(object.deposit) + ? LSMTokenDeposit.fromJSON(object.deposit) + : undefined, + }; + }, + toJSON( + message: TransferLSMTokenCallback, + ): JsonSafe { + const obj: any = {}; + message.deposit !== undefined && + (obj.deposit = message.deposit + ? LSMTokenDeposit.toJSON(message.deposit) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): TransferLSMTokenCallback { + const message = createBaseTransferLSMTokenCallback(); + message.deposit = + object.deposit !== undefined && object.deposit !== null + ? LSMTokenDeposit.fromPartial(object.deposit) + : undefined; + return message; + }, + fromProtoMsg( + message: TransferLSMTokenCallbackProtoMsg, + ): TransferLSMTokenCallback { + return TransferLSMTokenCallback.decode(message.value); + }, + toProto(message: TransferLSMTokenCallback): Uint8Array { + return TransferLSMTokenCallback.encode(message).finish(); + }, + toProtoMsg( + message: TransferLSMTokenCallback, + ): TransferLSMTokenCallbackProtoMsg { + return { + typeUrl: '/stride.records.TransferLSMTokenCallback', + value: TransferLSMTokenCallback.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/records/genesis.ts b/packages/cosmic-proto/src/codegen/stride/records/genesis.ts new file mode 100644 index 00000000000..bbebe27d37a --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/records/genesis.ts @@ -0,0 +1,250 @@ +//@ts-nocheck +import { Params, type ParamsSDKType } from './params.js'; +import { + UserRedemptionRecord, + type UserRedemptionRecordSDKType, + EpochUnbondingRecord, + type EpochUnbondingRecordSDKType, + DepositRecord, + type DepositRecordSDKType, + LSMTokenDeposit, + type LSMTokenDepositSDKType, +} from './records.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** GenesisState defines the records module's genesis state. */ +export interface GenesisState { + params: Params; + portId: string; + userRedemptionRecordList: UserRedemptionRecord[]; + userRedemptionRecordCount: bigint; + epochUnbondingRecordList: EpochUnbondingRecord[]; + depositRecordList: DepositRecord[]; + depositRecordCount: bigint; + lsmTokenDepositList: LSMTokenDeposit[]; +} +export interface GenesisStateProtoMsg { + typeUrl: '/stride.records.GenesisState'; + value: Uint8Array; +} +/** GenesisState defines the records module's genesis state. */ +export interface GenesisStateSDKType { + params: ParamsSDKType; + port_id: string; + user_redemption_record_list: UserRedemptionRecordSDKType[]; + user_redemption_record_count: bigint; + epoch_unbonding_record_list: EpochUnbondingRecordSDKType[]; + deposit_record_list: DepositRecordSDKType[]; + deposit_record_count: bigint; + lsm_token_deposit_list: LSMTokenDepositSDKType[]; +} +function createBaseGenesisState(): GenesisState { + return { + params: Params.fromPartial({}), + portId: '', + userRedemptionRecordList: [], + userRedemptionRecordCount: BigInt(0), + epochUnbondingRecordList: [], + depositRecordList: [], + depositRecordCount: BigInt(0), + lsmTokenDepositList: [], + }; +} +export const GenesisState = { + typeUrl: '/stride.records.GenesisState', + encode( + message: GenesisState, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.params !== undefined) { + Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + if (message.portId !== '') { + writer.uint32(18).string(message.portId); + } + for (const v of message.userRedemptionRecordList) { + UserRedemptionRecord.encode(v!, writer.uint32(26).fork()).ldelim(); + } + if (message.userRedemptionRecordCount !== BigInt(0)) { + writer.uint32(32).uint64(message.userRedemptionRecordCount); + } + for (const v of message.epochUnbondingRecordList) { + EpochUnbondingRecord.encode(v!, writer.uint32(42).fork()).ldelim(); + } + for (const v of message.depositRecordList) { + DepositRecord.encode(v!, writer.uint32(58).fork()).ldelim(); + } + if (message.depositRecordCount !== BigInt(0)) { + writer.uint32(64).uint64(message.depositRecordCount); + } + for (const v of message.lsmTokenDepositList) { + LSMTokenDeposit.encode(v!, writer.uint32(74).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): GenesisState { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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.decode(reader, reader.uint32()); + break; + case 2: + message.portId = reader.string(); + break; + case 3: + message.userRedemptionRecordList.push( + UserRedemptionRecord.decode(reader, reader.uint32()), + ); + break; + case 4: + message.userRedemptionRecordCount = reader.uint64(); + break; + case 5: + message.epochUnbondingRecordList.push( + EpochUnbondingRecord.decode(reader, reader.uint32()), + ); + break; + case 7: + message.depositRecordList.push( + DepositRecord.decode(reader, reader.uint32()), + ); + break; + case 8: + message.depositRecordCount = reader.uint64(); + break; + case 9: + message.lsmTokenDepositList.push( + LSMTokenDeposit.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): GenesisState { + return { + params: isSet(object.params) ? Params.fromJSON(object.params) : undefined, + portId: isSet(object.portId) ? String(object.portId) : '', + userRedemptionRecordList: Array.isArray(object?.userRedemptionRecordList) + ? object.userRedemptionRecordList.map((e: any) => + UserRedemptionRecord.fromJSON(e), + ) + : [], + userRedemptionRecordCount: isSet(object.userRedemptionRecordCount) + ? BigInt(object.userRedemptionRecordCount.toString()) + : BigInt(0), + epochUnbondingRecordList: Array.isArray(object?.epochUnbondingRecordList) + ? object.epochUnbondingRecordList.map((e: any) => + EpochUnbondingRecord.fromJSON(e), + ) + : [], + depositRecordList: Array.isArray(object?.depositRecordList) + ? object.depositRecordList.map((e: any) => DepositRecord.fromJSON(e)) + : [], + depositRecordCount: isSet(object.depositRecordCount) + ? BigInt(object.depositRecordCount.toString()) + : BigInt(0), + lsmTokenDepositList: Array.isArray(object?.lsmTokenDepositList) + ? object.lsmTokenDepositList.map((e: any) => + LSMTokenDeposit.fromJSON(e), + ) + : [], + }; + }, + toJSON(message: GenesisState): JsonSafe { + const obj: any = {}; + message.params !== undefined && + (obj.params = message.params ? Params.toJSON(message.params) : undefined); + message.portId !== undefined && (obj.portId = message.portId); + if (message.userRedemptionRecordList) { + obj.userRedemptionRecordList = message.userRedemptionRecordList.map(e => + e ? UserRedemptionRecord.toJSON(e) : undefined, + ); + } else { + obj.userRedemptionRecordList = []; + } + message.userRedemptionRecordCount !== undefined && + (obj.userRedemptionRecordCount = ( + message.userRedemptionRecordCount || BigInt(0) + ).toString()); + if (message.epochUnbondingRecordList) { + obj.epochUnbondingRecordList = message.epochUnbondingRecordList.map(e => + e ? EpochUnbondingRecord.toJSON(e) : undefined, + ); + } else { + obj.epochUnbondingRecordList = []; + } + if (message.depositRecordList) { + obj.depositRecordList = message.depositRecordList.map(e => + e ? DepositRecord.toJSON(e) : undefined, + ); + } else { + obj.depositRecordList = []; + } + message.depositRecordCount !== undefined && + (obj.depositRecordCount = ( + message.depositRecordCount || BigInt(0) + ).toString()); + if (message.lsmTokenDepositList) { + obj.lsmTokenDepositList = message.lsmTokenDepositList.map(e => + e ? LSMTokenDeposit.toJSON(e) : undefined, + ); + } else { + obj.lsmTokenDepositList = []; + } + return obj; + }, + fromPartial(object: Partial): GenesisState { + const message = createBaseGenesisState(); + message.params = + object.params !== undefined && object.params !== null + ? Params.fromPartial(object.params) + : undefined; + message.portId = object.portId ?? ''; + message.userRedemptionRecordList = + object.userRedemptionRecordList?.map(e => + UserRedemptionRecord.fromPartial(e), + ) || []; + message.userRedemptionRecordCount = + object.userRedemptionRecordCount !== undefined && + object.userRedemptionRecordCount !== null + ? BigInt(object.userRedemptionRecordCount.toString()) + : BigInt(0); + message.epochUnbondingRecordList = + object.epochUnbondingRecordList?.map(e => + EpochUnbondingRecord.fromPartial(e), + ) || []; + message.depositRecordList = + object.depositRecordList?.map(e => DepositRecord.fromPartial(e)) || []; + message.depositRecordCount = + object.depositRecordCount !== undefined && + object.depositRecordCount !== null + ? BigInt(object.depositRecordCount.toString()) + : BigInt(0); + message.lsmTokenDepositList = + object.lsmTokenDepositList?.map(e => LSMTokenDeposit.fromPartial(e)) || + []; + return message; + }, + fromProtoMsg(message: GenesisStateProtoMsg): GenesisState { + return GenesisState.decode(message.value); + }, + toProto(message: GenesisState): Uint8Array { + return GenesisState.encode(message).finish(); + }, + toProtoMsg(message: GenesisState): GenesisStateProtoMsg { + return { + typeUrl: '/stride.records.GenesisState', + value: GenesisState.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/records/params.ts b/packages/cosmic-proto/src/codegen/stride/records/params.ts new file mode 100644 index 00000000000..5bbba6b4e16 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/records/params.ts @@ -0,0 +1,61 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** Params defines the parameters for the module. */ +export interface Params {} +export interface ParamsProtoMsg { + typeUrl: '/stride.records.Params'; + value: Uint8Array; +} +/** Params defines the parameters for the module. */ +export interface ParamsSDKType {} +function createBaseParams(): Params { + return {}; +} +export const Params = { + typeUrl: '/stride.records.Params', + encode( + _: Params, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Params { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseParams(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): Params { + return {}; + }, + toJSON(_: Params): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): Params { + const message = createBaseParams(); + return message; + }, + fromProtoMsg(message: ParamsProtoMsg): Params { + return Params.decode(message.value); + }, + toProto(message: Params): Uint8Array { + return Params.encode(message).finish(); + }, + toProtoMsg(message: Params): ParamsProtoMsg { + return { + typeUrl: '/stride.records.Params', + value: Params.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/records/query.ts b/packages/cosmic-proto/src/codegen/stride/records/query.ts new file mode 100644 index 00000000000..3507fd13670 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/records/query.ts @@ -0,0 +1,2176 @@ +//@ts-nocheck +import { + PageRequest, + type PageRequestSDKType, + PageResponse, + type PageResponseSDKType, +} from '../../cosmos/base/query/v1beta1/pagination.js'; +import { Params, type ParamsSDKType } from './params.js'; +import { + DepositRecord, + type DepositRecordSDKType, + UserRedemptionRecord, + type UserRedemptionRecordSDKType, + EpochUnbondingRecord, + type EpochUnbondingRecordSDKType, + LSMTokenDeposit, + type LSMTokenDepositSDKType, +} from './records.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { type JsonSafe } from '../../json-safe.js'; +import { isSet } from '../../helpers.js'; +/** QueryParamsRequest is request type for the Query/Params RPC method. */ +export interface QueryParamsRequest {} +export interface QueryParamsRequestProtoMsg { + typeUrl: '/stride.records.QueryParamsRequest'; + value: Uint8Array; +} +/** QueryParamsRequest is request type for the Query/Params RPC method. */ +export interface QueryParamsRequestSDKType {} +/** 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 QueryParamsResponseProtoMsg { + typeUrl: '/stride.records.QueryParamsResponse'; + value: Uint8Array; +} +/** QueryParamsResponse is response type for the Query/Params RPC method. */ +export interface QueryParamsResponseSDKType { + params: ParamsSDKType; +} +export interface QueryGetDepositRecordRequest { + id: bigint; +} +export interface QueryGetDepositRecordRequestProtoMsg { + typeUrl: '/stride.records.QueryGetDepositRecordRequest'; + value: Uint8Array; +} +export interface QueryGetDepositRecordRequestSDKType { + id: bigint; +} +export interface QueryGetDepositRecordResponse { + depositRecord: DepositRecord; +} +export interface QueryGetDepositRecordResponseProtoMsg { + typeUrl: '/stride.records.QueryGetDepositRecordResponse'; + value: Uint8Array; +} +export interface QueryGetDepositRecordResponseSDKType { + deposit_record: DepositRecordSDKType; +} +export interface QueryAllDepositRecordRequest { + pagination?: PageRequest; +} +export interface QueryAllDepositRecordRequestProtoMsg { + typeUrl: '/stride.records.QueryAllDepositRecordRequest'; + value: Uint8Array; +} +export interface QueryAllDepositRecordRequestSDKType { + pagination?: PageRequestSDKType; +} +export interface QueryAllDepositRecordResponse { + depositRecord: DepositRecord[]; + pagination?: PageResponse; +} +export interface QueryAllDepositRecordResponseProtoMsg { + typeUrl: '/stride.records.QueryAllDepositRecordResponse'; + value: Uint8Array; +} +export interface QueryAllDepositRecordResponseSDKType { + deposit_record: DepositRecordSDKType[]; + pagination?: PageResponseSDKType; +} +export interface QueryDepositRecordByHostRequest { + hostZoneId: string; +} +export interface QueryDepositRecordByHostRequestProtoMsg { + typeUrl: '/stride.records.QueryDepositRecordByHostRequest'; + value: Uint8Array; +} +export interface QueryDepositRecordByHostRequestSDKType { + host_zone_id: string; +} +export interface QueryDepositRecordByHostResponse { + depositRecord: DepositRecord[]; +} +export interface QueryDepositRecordByHostResponseProtoMsg { + typeUrl: '/stride.records.QueryDepositRecordByHostResponse'; + value: Uint8Array; +} +export interface QueryDepositRecordByHostResponseSDKType { + deposit_record: DepositRecordSDKType[]; +} +export interface QueryGetUserRedemptionRecordRequest { + id: string; +} +export interface QueryGetUserRedemptionRecordRequestProtoMsg { + typeUrl: '/stride.records.QueryGetUserRedemptionRecordRequest'; + value: Uint8Array; +} +export interface QueryGetUserRedemptionRecordRequestSDKType { + id: string; +} +export interface QueryGetUserRedemptionRecordResponse { + userRedemptionRecord: UserRedemptionRecord; +} +export interface QueryGetUserRedemptionRecordResponseProtoMsg { + typeUrl: '/stride.records.QueryGetUserRedemptionRecordResponse'; + value: Uint8Array; +} +export interface QueryGetUserRedemptionRecordResponseSDKType { + user_redemption_record: UserRedemptionRecordSDKType; +} +export interface QueryAllUserRedemptionRecordRequest { + pagination?: PageRequest; +} +export interface QueryAllUserRedemptionRecordRequestProtoMsg { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordRequest'; + value: Uint8Array; +} +export interface QueryAllUserRedemptionRecordRequestSDKType { + pagination?: PageRequestSDKType; +} +export interface QueryAllUserRedemptionRecordResponse { + userRedemptionRecord: UserRedemptionRecord[]; + pagination?: PageResponse; +} +export interface QueryAllUserRedemptionRecordResponseProtoMsg { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordResponse'; + value: Uint8Array; +} +export interface QueryAllUserRedemptionRecordResponseSDKType { + user_redemption_record: UserRedemptionRecordSDKType[]; + pagination?: PageResponseSDKType; +} +/** Query UserRedemptionRecords by chainId / userId pair */ +export interface QueryAllUserRedemptionRecordForUserRequest { + chainId: string; + day: bigint; + address: string; + limit: bigint; + pagination?: PageRequest; +} +export interface QueryAllUserRedemptionRecordForUserRequestProtoMsg { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordForUserRequest'; + value: Uint8Array; +} +/** Query UserRedemptionRecords by chainId / userId pair */ +export interface QueryAllUserRedemptionRecordForUserRequestSDKType { + chain_id: string; + day: bigint; + address: string; + limit: bigint; + pagination?: PageRequestSDKType; +} +export interface QueryAllUserRedemptionRecordForUserResponse { + userRedemptionRecord: UserRedemptionRecord[]; + pagination?: PageResponse; +} +export interface QueryAllUserRedemptionRecordForUserResponseProtoMsg { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordForUserResponse'; + value: Uint8Array; +} +export interface QueryAllUserRedemptionRecordForUserResponseSDKType { + user_redemption_record: UserRedemptionRecordSDKType[]; + pagination?: PageResponseSDKType; +} +export interface QueryGetEpochUnbondingRecordRequest { + epochNumber: bigint; +} +export interface QueryGetEpochUnbondingRecordRequestProtoMsg { + typeUrl: '/stride.records.QueryGetEpochUnbondingRecordRequest'; + value: Uint8Array; +} +export interface QueryGetEpochUnbondingRecordRequestSDKType { + epoch_number: bigint; +} +export interface QueryGetEpochUnbondingRecordResponse { + epochUnbondingRecord: EpochUnbondingRecord; +} +export interface QueryGetEpochUnbondingRecordResponseProtoMsg { + typeUrl: '/stride.records.QueryGetEpochUnbondingRecordResponse'; + value: Uint8Array; +} +export interface QueryGetEpochUnbondingRecordResponseSDKType { + epoch_unbonding_record: EpochUnbondingRecordSDKType; +} +export interface QueryAllEpochUnbondingRecordRequest { + pagination?: PageRequest; +} +export interface QueryAllEpochUnbondingRecordRequestProtoMsg { + typeUrl: '/stride.records.QueryAllEpochUnbondingRecordRequest'; + value: Uint8Array; +} +export interface QueryAllEpochUnbondingRecordRequestSDKType { + pagination?: PageRequestSDKType; +} +export interface QueryAllEpochUnbondingRecordResponse { + epochUnbondingRecord: EpochUnbondingRecord[]; + pagination?: PageResponse; +} +export interface QueryAllEpochUnbondingRecordResponseProtoMsg { + typeUrl: '/stride.records.QueryAllEpochUnbondingRecordResponse'; + value: Uint8Array; +} +export interface QueryAllEpochUnbondingRecordResponseSDKType { + epoch_unbonding_record: EpochUnbondingRecordSDKType[]; + pagination?: PageResponseSDKType; +} +export interface QueryLSMDepositRequest { + chainId: string; + denom: string; +} +export interface QueryLSMDepositRequestProtoMsg { + typeUrl: '/stride.records.QueryLSMDepositRequest'; + value: Uint8Array; +} +export interface QueryLSMDepositRequestSDKType { + chain_id: string; + denom: string; +} +export interface QueryLSMDepositResponse { + deposit: LSMTokenDeposit; +} +export interface QueryLSMDepositResponseProtoMsg { + typeUrl: '/stride.records.QueryLSMDepositResponse'; + value: Uint8Array; +} +export interface QueryLSMDepositResponseSDKType { + deposit: LSMTokenDepositSDKType; +} +export interface QueryLSMDepositsRequest { + chainId: string; + validatorAddress: string; + status: string; +} +export interface QueryLSMDepositsRequestProtoMsg { + typeUrl: '/stride.records.QueryLSMDepositsRequest'; + value: Uint8Array; +} +export interface QueryLSMDepositsRequestSDKType { + chain_id: string; + validator_address: string; + status: string; +} +export interface QueryLSMDepositsResponse { + deposits: LSMTokenDeposit[]; +} +export interface QueryLSMDepositsResponseProtoMsg { + typeUrl: '/stride.records.QueryLSMDepositsResponse'; + value: Uint8Array; +} +export interface QueryLSMDepositsResponseSDKType { + deposits: LSMTokenDepositSDKType[]; +} +function createBaseQueryParamsRequest(): QueryParamsRequest { + return {}; +} +export const QueryParamsRequest = { + typeUrl: '/stride.records.QueryParamsRequest', + encode( + _: QueryParamsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryParamsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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(_: any): QueryParamsRequest { + return {}; + }, + toJSON(_: QueryParamsRequest): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QueryParamsRequest { + const message = createBaseQueryParamsRequest(); + return message; + }, + fromProtoMsg(message: QueryParamsRequestProtoMsg): QueryParamsRequest { + return QueryParamsRequest.decode(message.value); + }, + toProto(message: QueryParamsRequest): Uint8Array { + return QueryParamsRequest.encode(message).finish(); + }, + toProtoMsg(message: QueryParamsRequest): QueryParamsRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryParamsRequest', + value: QueryParamsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryParamsResponse(): QueryParamsResponse { + return { + params: Params.fromPartial({}), + }; +} +export const QueryParamsResponse = { + typeUrl: '/stride.records.QueryParamsResponse', + encode( + message: QueryParamsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.params !== undefined) { + Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryParamsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryParamsResponse { + return { + params: isSet(object.params) ? Params.fromJSON(object.params) : undefined, + }; + }, + toJSON(message: QueryParamsResponse): JsonSafe { + const obj: any = {}; + message.params !== undefined && + (obj.params = message.params ? Params.toJSON(message.params) : undefined); + return obj; + }, + fromPartial(object: Partial): QueryParamsResponse { + const message = createBaseQueryParamsResponse(); + message.params = + object.params !== undefined && object.params !== null + ? Params.fromPartial(object.params) + : undefined; + return message; + }, + fromProtoMsg(message: QueryParamsResponseProtoMsg): QueryParamsResponse { + return QueryParamsResponse.decode(message.value); + }, + toProto(message: QueryParamsResponse): Uint8Array { + return QueryParamsResponse.encode(message).finish(); + }, + toProtoMsg(message: QueryParamsResponse): QueryParamsResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryParamsResponse', + value: QueryParamsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetDepositRecordRequest(): QueryGetDepositRecordRequest { + return { + id: BigInt(0), + }; +} +export const QueryGetDepositRecordRequest = { + typeUrl: '/stride.records.QueryGetDepositRecordRequest', + encode( + message: QueryGetDepositRecordRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== BigInt(0)) { + writer.uint32(8).uint64(message.id); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetDepositRecordRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetDepositRecordRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetDepositRecordRequest { + return { + id: isSet(object.id) ? BigInt(object.id.toString()) : BigInt(0), + }; + }, + toJSON( + message: QueryGetDepositRecordRequest, + ): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = (message.id || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetDepositRecordRequest { + const message = createBaseQueryGetDepositRecordRequest(); + message.id = + object.id !== undefined && object.id !== null + ? BigInt(object.id.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: QueryGetDepositRecordRequestProtoMsg, + ): QueryGetDepositRecordRequest { + return QueryGetDepositRecordRequest.decode(message.value); + }, + toProto(message: QueryGetDepositRecordRequest): Uint8Array { + return QueryGetDepositRecordRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetDepositRecordRequest, + ): QueryGetDepositRecordRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryGetDepositRecordRequest', + value: QueryGetDepositRecordRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetDepositRecordResponse(): QueryGetDepositRecordResponse { + return { + depositRecord: DepositRecord.fromPartial({}), + }; +} +export const QueryGetDepositRecordResponse = { + typeUrl: '/stride.records.QueryGetDepositRecordResponse', + encode( + message: QueryGetDepositRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.depositRecord !== undefined) { + DepositRecord.encode( + message.depositRecord, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetDepositRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetDepositRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositRecord = DepositRecord.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetDepositRecordResponse { + return { + depositRecord: isSet(object.depositRecord) + ? DepositRecord.fromJSON(object.depositRecord) + : undefined, + }; + }, + toJSON( + message: QueryGetDepositRecordResponse, + ): JsonSafe { + const obj: any = {}; + message.depositRecord !== undefined && + (obj.depositRecord = message.depositRecord + ? DepositRecord.toJSON(message.depositRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetDepositRecordResponse { + const message = createBaseQueryGetDepositRecordResponse(); + message.depositRecord = + object.depositRecord !== undefined && object.depositRecord !== null + ? DepositRecord.fromPartial(object.depositRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetDepositRecordResponseProtoMsg, + ): QueryGetDepositRecordResponse { + return QueryGetDepositRecordResponse.decode(message.value); + }, + toProto(message: QueryGetDepositRecordResponse): Uint8Array { + return QueryGetDepositRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetDepositRecordResponse, + ): QueryGetDepositRecordResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryGetDepositRecordResponse', + value: QueryGetDepositRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllDepositRecordRequest(): QueryAllDepositRecordRequest { + return { + pagination: undefined, + }; +} +export const QueryAllDepositRecordRequest = { + typeUrl: '/stride.records.QueryAllDepositRecordRequest', + encode( + message: QueryAllDepositRecordRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllDepositRecordRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllDepositRecordRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllDepositRecordRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllDepositRecordRequest, + ): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllDepositRecordRequest { + const message = createBaseQueryAllDepositRecordRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllDepositRecordRequestProtoMsg, + ): QueryAllDepositRecordRequest { + return QueryAllDepositRecordRequest.decode(message.value); + }, + toProto(message: QueryAllDepositRecordRequest): Uint8Array { + return QueryAllDepositRecordRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllDepositRecordRequest, + ): QueryAllDepositRecordRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryAllDepositRecordRequest', + value: QueryAllDepositRecordRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllDepositRecordResponse(): QueryAllDepositRecordResponse { + return { + depositRecord: [], + pagination: undefined, + }; +} +export const QueryAllDepositRecordResponse = { + typeUrl: '/stride.records.QueryAllDepositRecordResponse', + encode( + message: QueryAllDepositRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.depositRecord) { + DepositRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllDepositRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllDepositRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositRecord.push( + DepositRecord.decode(reader, reader.uint32()), + ); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllDepositRecordResponse { + return { + depositRecord: Array.isArray(object?.depositRecord) + ? object.depositRecord.map((e: any) => DepositRecord.fromJSON(e)) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllDepositRecordResponse, + ): JsonSafe { + const obj: any = {}; + if (message.depositRecord) { + obj.depositRecord = message.depositRecord.map(e => + e ? DepositRecord.toJSON(e) : undefined, + ); + } else { + obj.depositRecord = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllDepositRecordResponse { + const message = createBaseQueryAllDepositRecordResponse(); + message.depositRecord = + object.depositRecord?.map(e => DepositRecord.fromPartial(e)) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllDepositRecordResponseProtoMsg, + ): QueryAllDepositRecordResponse { + return QueryAllDepositRecordResponse.decode(message.value); + }, + toProto(message: QueryAllDepositRecordResponse): Uint8Array { + return QueryAllDepositRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllDepositRecordResponse, + ): QueryAllDepositRecordResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryAllDepositRecordResponse', + value: QueryAllDepositRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryDepositRecordByHostRequest(): QueryDepositRecordByHostRequest { + return { + hostZoneId: '', + }; +} +export const QueryDepositRecordByHostRequest = { + typeUrl: '/stride.records.QueryDepositRecordByHostRequest', + encode( + message: QueryDepositRecordByHostRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.hostZoneId !== '') { + writer.uint32(10).string(message.hostZoneId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryDepositRecordByHostRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDepositRecordByHostRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZoneId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryDepositRecordByHostRequest { + return { + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + }; + }, + toJSON( + message: QueryDepositRecordByHostRequest, + ): JsonSafe { + const obj: any = {}; + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + return obj; + }, + fromPartial( + object: Partial, + ): QueryDepositRecordByHostRequest { + const message = createBaseQueryDepositRecordByHostRequest(); + message.hostZoneId = object.hostZoneId ?? ''; + return message; + }, + fromProtoMsg( + message: QueryDepositRecordByHostRequestProtoMsg, + ): QueryDepositRecordByHostRequest { + return QueryDepositRecordByHostRequest.decode(message.value); + }, + toProto(message: QueryDepositRecordByHostRequest): Uint8Array { + return QueryDepositRecordByHostRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryDepositRecordByHostRequest, + ): QueryDepositRecordByHostRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryDepositRecordByHostRequest', + value: QueryDepositRecordByHostRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryDepositRecordByHostResponse(): QueryDepositRecordByHostResponse { + return { + depositRecord: [], + }; +} +export const QueryDepositRecordByHostResponse = { + typeUrl: '/stride.records.QueryDepositRecordByHostResponse', + encode( + message: QueryDepositRecordByHostResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.depositRecord) { + DepositRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryDepositRecordByHostResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDepositRecordByHostResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositRecord.push( + DepositRecord.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryDepositRecordByHostResponse { + return { + depositRecord: Array.isArray(object?.depositRecord) + ? object.depositRecord.map((e: any) => DepositRecord.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryDepositRecordByHostResponse, + ): JsonSafe { + const obj: any = {}; + if (message.depositRecord) { + obj.depositRecord = message.depositRecord.map(e => + e ? DepositRecord.toJSON(e) : undefined, + ); + } else { + obj.depositRecord = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryDepositRecordByHostResponse { + const message = createBaseQueryDepositRecordByHostResponse(); + message.depositRecord = + object.depositRecord?.map(e => DepositRecord.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryDepositRecordByHostResponseProtoMsg, + ): QueryDepositRecordByHostResponse { + return QueryDepositRecordByHostResponse.decode(message.value); + }, + toProto(message: QueryDepositRecordByHostResponse): Uint8Array { + return QueryDepositRecordByHostResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryDepositRecordByHostResponse, + ): QueryDepositRecordByHostResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryDepositRecordByHostResponse', + value: QueryDepositRecordByHostResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetUserRedemptionRecordRequest(): QueryGetUserRedemptionRecordRequest { + return { + id: '', + }; +} +export const QueryGetUserRedemptionRecordRequest = { + typeUrl: '/stride.records.QueryGetUserRedemptionRecordRequest', + encode( + message: QueryGetUserRedemptionRecordRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== '') { + writer.uint32(10).string(message.id); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetUserRedemptionRecordRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetUserRedemptionRecordRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetUserRedemptionRecordRequest { + return { + id: isSet(object.id) ? String(object.id) : '', + }; + }, + toJSON( + message: QueryGetUserRedemptionRecordRequest, + ): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = message.id); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetUserRedemptionRecordRequest { + const message = createBaseQueryGetUserRedemptionRecordRequest(); + message.id = object.id ?? ''; + return message; + }, + fromProtoMsg( + message: QueryGetUserRedemptionRecordRequestProtoMsg, + ): QueryGetUserRedemptionRecordRequest { + return QueryGetUserRedemptionRecordRequest.decode(message.value); + }, + toProto(message: QueryGetUserRedemptionRecordRequest): Uint8Array { + return QueryGetUserRedemptionRecordRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetUserRedemptionRecordRequest, + ): QueryGetUserRedemptionRecordRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryGetUserRedemptionRecordRequest', + value: QueryGetUserRedemptionRecordRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetUserRedemptionRecordResponse(): QueryGetUserRedemptionRecordResponse { + return { + userRedemptionRecord: UserRedemptionRecord.fromPartial({}), + }; +} +export const QueryGetUserRedemptionRecordResponse = { + typeUrl: '/stride.records.QueryGetUserRedemptionRecordResponse', + encode( + message: QueryGetUserRedemptionRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.userRedemptionRecord !== undefined) { + UserRedemptionRecord.encode( + message.userRedemptionRecord, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetUserRedemptionRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetUserRedemptionRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.userRedemptionRecord = UserRedemptionRecord.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetUserRedemptionRecordResponse { + return { + userRedemptionRecord: isSet(object.userRedemptionRecord) + ? UserRedemptionRecord.fromJSON(object.userRedemptionRecord) + : undefined, + }; + }, + toJSON( + message: QueryGetUserRedemptionRecordResponse, + ): JsonSafe { + const obj: any = {}; + message.userRedemptionRecord !== undefined && + (obj.userRedemptionRecord = message.userRedemptionRecord + ? UserRedemptionRecord.toJSON(message.userRedemptionRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetUserRedemptionRecordResponse { + const message = createBaseQueryGetUserRedemptionRecordResponse(); + message.userRedemptionRecord = + object.userRedemptionRecord !== undefined && + object.userRedemptionRecord !== null + ? UserRedemptionRecord.fromPartial(object.userRedemptionRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetUserRedemptionRecordResponseProtoMsg, + ): QueryGetUserRedemptionRecordResponse { + return QueryGetUserRedemptionRecordResponse.decode(message.value); + }, + toProto(message: QueryGetUserRedemptionRecordResponse): Uint8Array { + return QueryGetUserRedemptionRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetUserRedemptionRecordResponse, + ): QueryGetUserRedemptionRecordResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryGetUserRedemptionRecordResponse', + value: QueryGetUserRedemptionRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllUserRedemptionRecordRequest(): QueryAllUserRedemptionRecordRequest { + return { + pagination: undefined, + }; +} +export const QueryAllUserRedemptionRecordRequest = { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordRequest', + encode( + message: QueryAllUserRedemptionRecordRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllUserRedemptionRecordRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllUserRedemptionRecordRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllUserRedemptionRecordRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllUserRedemptionRecordRequest, + ): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllUserRedemptionRecordRequest { + const message = createBaseQueryAllUserRedemptionRecordRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllUserRedemptionRecordRequestProtoMsg, + ): QueryAllUserRedemptionRecordRequest { + return QueryAllUserRedemptionRecordRequest.decode(message.value); + }, + toProto(message: QueryAllUserRedemptionRecordRequest): Uint8Array { + return QueryAllUserRedemptionRecordRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllUserRedemptionRecordRequest, + ): QueryAllUserRedemptionRecordRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordRequest', + value: QueryAllUserRedemptionRecordRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllUserRedemptionRecordResponse(): QueryAllUserRedemptionRecordResponse { + return { + userRedemptionRecord: [], + pagination: undefined, + }; +} +export const QueryAllUserRedemptionRecordResponse = { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordResponse', + encode( + message: QueryAllUserRedemptionRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.userRedemptionRecord) { + UserRedemptionRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllUserRedemptionRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllUserRedemptionRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.userRedemptionRecord.push( + UserRedemptionRecord.decode(reader, reader.uint32()), + ); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllUserRedemptionRecordResponse { + return { + userRedemptionRecord: Array.isArray(object?.userRedemptionRecord) + ? object.userRedemptionRecord.map((e: any) => + UserRedemptionRecord.fromJSON(e), + ) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllUserRedemptionRecordResponse, + ): JsonSafe { + const obj: any = {}; + if (message.userRedemptionRecord) { + obj.userRedemptionRecord = message.userRedemptionRecord.map(e => + e ? UserRedemptionRecord.toJSON(e) : undefined, + ); + } else { + obj.userRedemptionRecord = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllUserRedemptionRecordResponse { + const message = createBaseQueryAllUserRedemptionRecordResponse(); + message.userRedemptionRecord = + object.userRedemptionRecord?.map(e => + UserRedemptionRecord.fromPartial(e), + ) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllUserRedemptionRecordResponseProtoMsg, + ): QueryAllUserRedemptionRecordResponse { + return QueryAllUserRedemptionRecordResponse.decode(message.value); + }, + toProto(message: QueryAllUserRedemptionRecordResponse): Uint8Array { + return QueryAllUserRedemptionRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllUserRedemptionRecordResponse, + ): QueryAllUserRedemptionRecordResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordResponse', + value: QueryAllUserRedemptionRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllUserRedemptionRecordForUserRequest(): QueryAllUserRedemptionRecordForUserRequest { + return { + chainId: '', + day: BigInt(0), + address: '', + limit: BigInt(0), + pagination: undefined, + }; +} +export const QueryAllUserRedemptionRecordForUserRequest = { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordForUserRequest', + encode( + message: QueryAllUserRedemptionRecordForUserRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + if (message.day !== BigInt(0)) { + writer.uint32(16).uint64(message.day); + } + if (message.address !== '') { + writer.uint32(26).string(message.address); + } + if (message.limit !== BigInt(0)) { + writer.uint32(32).uint64(message.limit); + } + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(42).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllUserRedemptionRecordForUserRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllUserRedemptionRecordForUserRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + case 2: + message.day = reader.uint64(); + break; + case 3: + message.address = reader.string(); + break; + case 4: + message.limit = reader.uint64(); + break; + case 5: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllUserRedemptionRecordForUserRequest { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + day: isSet(object.day) ? BigInt(object.day.toString()) : BigInt(0), + address: isSet(object.address) ? String(object.address) : '', + limit: isSet(object.limit) ? BigInt(object.limit.toString()) : BigInt(0), + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllUserRedemptionRecordForUserRequest, + ): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + message.day !== undefined && + (obj.day = (message.day || BigInt(0)).toString()); + message.address !== undefined && (obj.address = message.address); + message.limit !== undefined && + (obj.limit = (message.limit || BigInt(0)).toString()); + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllUserRedemptionRecordForUserRequest { + const message = createBaseQueryAllUserRedemptionRecordForUserRequest(); + message.chainId = object.chainId ?? ''; + message.day = + object.day !== undefined && object.day !== null + ? BigInt(object.day.toString()) + : BigInt(0); + message.address = object.address ?? ''; + message.limit = + object.limit !== undefined && object.limit !== null + ? BigInt(object.limit.toString()) + : BigInt(0); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllUserRedemptionRecordForUserRequestProtoMsg, + ): QueryAllUserRedemptionRecordForUserRequest { + return QueryAllUserRedemptionRecordForUserRequest.decode(message.value); + }, + toProto(message: QueryAllUserRedemptionRecordForUserRequest): Uint8Array { + return QueryAllUserRedemptionRecordForUserRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllUserRedemptionRecordForUserRequest, + ): QueryAllUserRedemptionRecordForUserRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordForUserRequest', + value: + QueryAllUserRedemptionRecordForUserRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllUserRedemptionRecordForUserResponse(): QueryAllUserRedemptionRecordForUserResponse { + return { + userRedemptionRecord: [], + pagination: undefined, + }; +} +export const QueryAllUserRedemptionRecordForUserResponse = { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordForUserResponse', + encode( + message: QueryAllUserRedemptionRecordForUserResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.userRedemptionRecord) { + UserRedemptionRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllUserRedemptionRecordForUserResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllUserRedemptionRecordForUserResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.userRedemptionRecord.push( + UserRedemptionRecord.decode(reader, reader.uint32()), + ); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllUserRedemptionRecordForUserResponse { + return { + userRedemptionRecord: Array.isArray(object?.userRedemptionRecord) + ? object.userRedemptionRecord.map((e: any) => + UserRedemptionRecord.fromJSON(e), + ) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllUserRedemptionRecordForUserResponse, + ): JsonSafe { + const obj: any = {}; + if (message.userRedemptionRecord) { + obj.userRedemptionRecord = message.userRedemptionRecord.map(e => + e ? UserRedemptionRecord.toJSON(e) : undefined, + ); + } else { + obj.userRedemptionRecord = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllUserRedemptionRecordForUserResponse { + const message = createBaseQueryAllUserRedemptionRecordForUserResponse(); + message.userRedemptionRecord = + object.userRedemptionRecord?.map(e => + UserRedemptionRecord.fromPartial(e), + ) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllUserRedemptionRecordForUserResponseProtoMsg, + ): QueryAllUserRedemptionRecordForUserResponse { + return QueryAllUserRedemptionRecordForUserResponse.decode(message.value); + }, + toProto(message: QueryAllUserRedemptionRecordForUserResponse): Uint8Array { + return QueryAllUserRedemptionRecordForUserResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllUserRedemptionRecordForUserResponse, + ): QueryAllUserRedemptionRecordForUserResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryAllUserRedemptionRecordForUserResponse', + value: + QueryAllUserRedemptionRecordForUserResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetEpochUnbondingRecordRequest(): QueryGetEpochUnbondingRecordRequest { + return { + epochNumber: BigInt(0), + }; +} +export const QueryGetEpochUnbondingRecordRequest = { + typeUrl: '/stride.records.QueryGetEpochUnbondingRecordRequest', + encode( + message: QueryGetEpochUnbondingRecordRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.epochNumber !== BigInt(0)) { + writer.uint32(8).uint64(message.epochNumber); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetEpochUnbondingRecordRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetEpochUnbondingRecordRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochNumber = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetEpochUnbondingRecordRequest { + return { + epochNumber: isSet(object.epochNumber) + ? BigInt(object.epochNumber.toString()) + : BigInt(0), + }; + }, + toJSON( + message: QueryGetEpochUnbondingRecordRequest, + ): JsonSafe { + const obj: any = {}; + message.epochNumber !== undefined && + (obj.epochNumber = (message.epochNumber || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetEpochUnbondingRecordRequest { + const message = createBaseQueryGetEpochUnbondingRecordRequest(); + message.epochNumber = + object.epochNumber !== undefined && object.epochNumber !== null + ? BigInt(object.epochNumber.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: QueryGetEpochUnbondingRecordRequestProtoMsg, + ): QueryGetEpochUnbondingRecordRequest { + return QueryGetEpochUnbondingRecordRequest.decode(message.value); + }, + toProto(message: QueryGetEpochUnbondingRecordRequest): Uint8Array { + return QueryGetEpochUnbondingRecordRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetEpochUnbondingRecordRequest, + ): QueryGetEpochUnbondingRecordRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryGetEpochUnbondingRecordRequest', + value: QueryGetEpochUnbondingRecordRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetEpochUnbondingRecordResponse(): QueryGetEpochUnbondingRecordResponse { + return { + epochUnbondingRecord: EpochUnbondingRecord.fromPartial({}), + }; +} +export const QueryGetEpochUnbondingRecordResponse = { + typeUrl: '/stride.records.QueryGetEpochUnbondingRecordResponse', + encode( + message: QueryGetEpochUnbondingRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.epochUnbondingRecord !== undefined) { + EpochUnbondingRecord.encode( + message.epochUnbondingRecord, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetEpochUnbondingRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetEpochUnbondingRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochUnbondingRecord = EpochUnbondingRecord.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetEpochUnbondingRecordResponse { + return { + epochUnbondingRecord: isSet(object.epochUnbondingRecord) + ? EpochUnbondingRecord.fromJSON(object.epochUnbondingRecord) + : undefined, + }; + }, + toJSON( + message: QueryGetEpochUnbondingRecordResponse, + ): JsonSafe { + const obj: any = {}; + message.epochUnbondingRecord !== undefined && + (obj.epochUnbondingRecord = message.epochUnbondingRecord + ? EpochUnbondingRecord.toJSON(message.epochUnbondingRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetEpochUnbondingRecordResponse { + const message = createBaseQueryGetEpochUnbondingRecordResponse(); + message.epochUnbondingRecord = + object.epochUnbondingRecord !== undefined && + object.epochUnbondingRecord !== null + ? EpochUnbondingRecord.fromPartial(object.epochUnbondingRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetEpochUnbondingRecordResponseProtoMsg, + ): QueryGetEpochUnbondingRecordResponse { + return QueryGetEpochUnbondingRecordResponse.decode(message.value); + }, + toProto(message: QueryGetEpochUnbondingRecordResponse): Uint8Array { + return QueryGetEpochUnbondingRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetEpochUnbondingRecordResponse, + ): QueryGetEpochUnbondingRecordResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryGetEpochUnbondingRecordResponse', + value: QueryGetEpochUnbondingRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllEpochUnbondingRecordRequest(): QueryAllEpochUnbondingRecordRequest { + return { + pagination: undefined, + }; +} +export const QueryAllEpochUnbondingRecordRequest = { + typeUrl: '/stride.records.QueryAllEpochUnbondingRecordRequest', + encode( + message: QueryAllEpochUnbondingRecordRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllEpochUnbondingRecordRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllEpochUnbondingRecordRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllEpochUnbondingRecordRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllEpochUnbondingRecordRequest, + ): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllEpochUnbondingRecordRequest { + const message = createBaseQueryAllEpochUnbondingRecordRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllEpochUnbondingRecordRequestProtoMsg, + ): QueryAllEpochUnbondingRecordRequest { + return QueryAllEpochUnbondingRecordRequest.decode(message.value); + }, + toProto(message: QueryAllEpochUnbondingRecordRequest): Uint8Array { + return QueryAllEpochUnbondingRecordRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllEpochUnbondingRecordRequest, + ): QueryAllEpochUnbondingRecordRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryAllEpochUnbondingRecordRequest', + value: QueryAllEpochUnbondingRecordRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllEpochUnbondingRecordResponse(): QueryAllEpochUnbondingRecordResponse { + return { + epochUnbondingRecord: [], + pagination: undefined, + }; +} +export const QueryAllEpochUnbondingRecordResponse = { + typeUrl: '/stride.records.QueryAllEpochUnbondingRecordResponse', + encode( + message: QueryAllEpochUnbondingRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.epochUnbondingRecord) { + EpochUnbondingRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllEpochUnbondingRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllEpochUnbondingRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochUnbondingRecord.push( + EpochUnbondingRecord.decode(reader, reader.uint32()), + ); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllEpochUnbondingRecordResponse { + return { + epochUnbondingRecord: Array.isArray(object?.epochUnbondingRecord) + ? object.epochUnbondingRecord.map((e: any) => + EpochUnbondingRecord.fromJSON(e), + ) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllEpochUnbondingRecordResponse, + ): JsonSafe { + const obj: any = {}; + if (message.epochUnbondingRecord) { + obj.epochUnbondingRecord = message.epochUnbondingRecord.map(e => + e ? EpochUnbondingRecord.toJSON(e) : undefined, + ); + } else { + obj.epochUnbondingRecord = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllEpochUnbondingRecordResponse { + const message = createBaseQueryAllEpochUnbondingRecordResponse(); + message.epochUnbondingRecord = + object.epochUnbondingRecord?.map(e => + EpochUnbondingRecord.fromPartial(e), + ) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllEpochUnbondingRecordResponseProtoMsg, + ): QueryAllEpochUnbondingRecordResponse { + return QueryAllEpochUnbondingRecordResponse.decode(message.value); + }, + toProto(message: QueryAllEpochUnbondingRecordResponse): Uint8Array { + return QueryAllEpochUnbondingRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllEpochUnbondingRecordResponse, + ): QueryAllEpochUnbondingRecordResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryAllEpochUnbondingRecordResponse', + value: QueryAllEpochUnbondingRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryLSMDepositRequest(): QueryLSMDepositRequest { + return { + chainId: '', + denom: '', + }; +} +export const QueryLSMDepositRequest = { + typeUrl: '/stride.records.QueryLSMDepositRequest', + encode( + message: QueryLSMDepositRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + if (message.denom !== '') { + writer.uint32(18).string(message.denom); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryLSMDepositRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryLSMDepositRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + case 2: + message.denom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryLSMDepositRequest { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + denom: isSet(object.denom) ? String(object.denom) : '', + }; + }, + toJSON(message: QueryLSMDepositRequest): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + message.denom !== undefined && (obj.denom = message.denom); + return obj; + }, + fromPartial(object: Partial): QueryLSMDepositRequest { + const message = createBaseQueryLSMDepositRequest(); + message.chainId = object.chainId ?? ''; + message.denom = object.denom ?? ''; + return message; + }, + fromProtoMsg( + message: QueryLSMDepositRequestProtoMsg, + ): QueryLSMDepositRequest { + return QueryLSMDepositRequest.decode(message.value); + }, + toProto(message: QueryLSMDepositRequest): Uint8Array { + return QueryLSMDepositRequest.encode(message).finish(); + }, + toProtoMsg(message: QueryLSMDepositRequest): QueryLSMDepositRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryLSMDepositRequest', + value: QueryLSMDepositRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryLSMDepositResponse(): QueryLSMDepositResponse { + return { + deposit: LSMTokenDeposit.fromPartial({}), + }; +} +export const QueryLSMDepositResponse = { + typeUrl: '/stride.records.QueryLSMDepositResponse', + encode( + message: QueryLSMDepositResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.deposit !== undefined) { + LSMTokenDeposit.encode( + message.deposit, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryLSMDepositResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryLSMDepositResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.deposit = LSMTokenDeposit.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryLSMDepositResponse { + return { + deposit: isSet(object.deposit) + ? LSMTokenDeposit.fromJSON(object.deposit) + : undefined, + }; + }, + toJSON(message: QueryLSMDepositResponse): JsonSafe { + const obj: any = {}; + message.deposit !== undefined && + (obj.deposit = message.deposit + ? LSMTokenDeposit.toJSON(message.deposit) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryLSMDepositResponse { + const message = createBaseQueryLSMDepositResponse(); + message.deposit = + object.deposit !== undefined && object.deposit !== null + ? LSMTokenDeposit.fromPartial(object.deposit) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryLSMDepositResponseProtoMsg, + ): QueryLSMDepositResponse { + return QueryLSMDepositResponse.decode(message.value); + }, + toProto(message: QueryLSMDepositResponse): Uint8Array { + return QueryLSMDepositResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryLSMDepositResponse, + ): QueryLSMDepositResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryLSMDepositResponse', + value: QueryLSMDepositResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryLSMDepositsRequest(): QueryLSMDepositsRequest { + return { + chainId: '', + validatorAddress: '', + status: '', + }; +} +export const QueryLSMDepositsRequest = { + typeUrl: '/stride.records.QueryLSMDepositsRequest', + encode( + message: QueryLSMDepositsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + if (message.validatorAddress !== '') { + writer.uint32(18).string(message.validatorAddress); + } + if (message.status !== '') { + writer.uint32(26).string(message.status); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryLSMDepositsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryLSMDepositsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + case 2: + message.validatorAddress = reader.string(); + break; + case 3: + message.status = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryLSMDepositsRequest { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + validatorAddress: isSet(object.validatorAddress) + ? String(object.validatorAddress) + : '', + status: isSet(object.status) ? String(object.status) : '', + }; + }, + toJSON(message: QueryLSMDepositsRequest): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + message.validatorAddress !== undefined && + (obj.validatorAddress = message.validatorAddress); + message.status !== undefined && (obj.status = message.status); + return obj; + }, + fromPartial( + object: Partial, + ): QueryLSMDepositsRequest { + const message = createBaseQueryLSMDepositsRequest(); + message.chainId = object.chainId ?? ''; + message.validatorAddress = object.validatorAddress ?? ''; + message.status = object.status ?? ''; + return message; + }, + fromProtoMsg( + message: QueryLSMDepositsRequestProtoMsg, + ): QueryLSMDepositsRequest { + return QueryLSMDepositsRequest.decode(message.value); + }, + toProto(message: QueryLSMDepositsRequest): Uint8Array { + return QueryLSMDepositsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryLSMDepositsRequest, + ): QueryLSMDepositsRequestProtoMsg { + return { + typeUrl: '/stride.records.QueryLSMDepositsRequest', + value: QueryLSMDepositsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryLSMDepositsResponse(): QueryLSMDepositsResponse { + return { + deposits: [], + }; +} +export const QueryLSMDepositsResponse = { + typeUrl: '/stride.records.QueryLSMDepositsResponse', + encode( + message: QueryLSMDepositsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.deposits) { + LSMTokenDeposit.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryLSMDepositsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryLSMDepositsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.deposits.push( + LSMTokenDeposit.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryLSMDepositsResponse { + return { + deposits: Array.isArray(object?.deposits) + ? object.deposits.map((e: any) => LSMTokenDeposit.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryLSMDepositsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.deposits) { + obj.deposits = message.deposits.map(e => + e ? LSMTokenDeposit.toJSON(e) : undefined, + ); + } else { + obj.deposits = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryLSMDepositsResponse { + const message = createBaseQueryLSMDepositsResponse(); + message.deposits = + object.deposits?.map(e => LSMTokenDeposit.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryLSMDepositsResponseProtoMsg, + ): QueryLSMDepositsResponse { + return QueryLSMDepositsResponse.decode(message.value); + }, + toProto(message: QueryLSMDepositsResponse): Uint8Array { + return QueryLSMDepositsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryLSMDepositsResponse, + ): QueryLSMDepositsResponseProtoMsg { + return { + typeUrl: '/stride.records.QueryLSMDepositsResponse', + value: QueryLSMDepositsResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/records/records.ts b/packages/cosmic-proto/src/codegen/stride/records/records.ts new file mode 100644 index 00000000000..4bfb16a64a4 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/records/records.ts @@ -0,0 +1,1103 @@ +//@ts-nocheck +import { Coin, type CoinSDKType } from '../../cosmos/base/v1beta1/coin.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export enum DepositRecord_Status { + /** TRANSFER_QUEUE - in transfer queue to be sent to the delegation ICA */ + TRANSFER_QUEUE = 0, + /** TRANSFER_IN_PROGRESS - transfer in progress (IBC packet sent, ack not received) */ + TRANSFER_IN_PROGRESS = 2, + /** DELEGATION_QUEUE - in staking queue on delegation ICA */ + DELEGATION_QUEUE = 1, + /** DELEGATION_IN_PROGRESS - staking in progress (ICA packet sent, ack not received) */ + DELEGATION_IN_PROGRESS = 3, + UNRECOGNIZED = -1, +} +export const DepositRecord_StatusSDKType = DepositRecord_Status; +export function depositRecord_StatusFromJSON( + object: any, +): DepositRecord_Status { + switch (object) { + case 0: + case 'TRANSFER_QUEUE': + return DepositRecord_Status.TRANSFER_QUEUE; + case 2: + case 'TRANSFER_IN_PROGRESS': + return DepositRecord_Status.TRANSFER_IN_PROGRESS; + case 1: + case 'DELEGATION_QUEUE': + return DepositRecord_Status.DELEGATION_QUEUE; + case 3: + case 'DELEGATION_IN_PROGRESS': + return DepositRecord_Status.DELEGATION_IN_PROGRESS; + case -1: + case 'UNRECOGNIZED': + default: + return DepositRecord_Status.UNRECOGNIZED; + } +} +export function depositRecord_StatusToJSON( + object: DepositRecord_Status, +): string { + switch (object) { + case DepositRecord_Status.TRANSFER_QUEUE: + return 'TRANSFER_QUEUE'; + case DepositRecord_Status.TRANSFER_IN_PROGRESS: + return 'TRANSFER_IN_PROGRESS'; + case DepositRecord_Status.DELEGATION_QUEUE: + return 'DELEGATION_QUEUE'; + case DepositRecord_Status.DELEGATION_IN_PROGRESS: + return 'DELEGATION_IN_PROGRESS'; + case DepositRecord_Status.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +export enum DepositRecord_Source { + STRIDE = 0, + WITHDRAWAL_ICA = 1, + UNRECOGNIZED = -1, +} +export const DepositRecord_SourceSDKType = DepositRecord_Source; +export function depositRecord_SourceFromJSON( + object: any, +): DepositRecord_Source { + switch (object) { + case 0: + case 'STRIDE': + return DepositRecord_Source.STRIDE; + case 1: + case 'WITHDRAWAL_ICA': + return DepositRecord_Source.WITHDRAWAL_ICA; + case -1: + case 'UNRECOGNIZED': + default: + return DepositRecord_Source.UNRECOGNIZED; + } +} +export function depositRecord_SourceToJSON( + object: DepositRecord_Source, +): string { + switch (object) { + case DepositRecord_Source.STRIDE: + return 'STRIDE'; + case DepositRecord_Source.WITHDRAWAL_ICA: + return 'WITHDRAWAL_ICA'; + case DepositRecord_Source.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +export enum HostZoneUnbonding_Status { + /** UNBONDING_QUEUE - tokens bonded on delegate account */ + UNBONDING_QUEUE = 0, + /** UNBONDING_IN_PROGRESS - unbonding ICA has been submitted */ + UNBONDING_IN_PROGRESS = 3, + /** UNBONDING_RETRY_QUEUE - unbonding ICA failed for at least one batch and need to be retried */ + UNBONDING_RETRY_QUEUE = 5, + /** EXIT_TRANSFER_QUEUE - unbonding completed on delegate account */ + EXIT_TRANSFER_QUEUE = 1, + /** EXIT_TRANSFER_IN_PROGRESS - redemption sweep has been submitted */ + EXIT_TRANSFER_IN_PROGRESS = 4, + /** CLAIMABLE - transfer success */ + CLAIMABLE = 2, + UNRECOGNIZED = -1, +} +export const HostZoneUnbonding_StatusSDKType = HostZoneUnbonding_Status; +export function hostZoneUnbonding_StatusFromJSON( + object: any, +): HostZoneUnbonding_Status { + switch (object) { + case 0: + case 'UNBONDING_QUEUE': + return HostZoneUnbonding_Status.UNBONDING_QUEUE; + case 3: + case 'UNBONDING_IN_PROGRESS': + return HostZoneUnbonding_Status.UNBONDING_IN_PROGRESS; + case 5: + case 'UNBONDING_RETRY_QUEUE': + return HostZoneUnbonding_Status.UNBONDING_RETRY_QUEUE; + case 1: + case 'EXIT_TRANSFER_QUEUE': + return HostZoneUnbonding_Status.EXIT_TRANSFER_QUEUE; + case 4: + case 'EXIT_TRANSFER_IN_PROGRESS': + return HostZoneUnbonding_Status.EXIT_TRANSFER_IN_PROGRESS; + case 2: + case 'CLAIMABLE': + return HostZoneUnbonding_Status.CLAIMABLE; + case -1: + case 'UNRECOGNIZED': + default: + return HostZoneUnbonding_Status.UNRECOGNIZED; + } +} +export function hostZoneUnbonding_StatusToJSON( + object: HostZoneUnbonding_Status, +): string { + switch (object) { + case HostZoneUnbonding_Status.UNBONDING_QUEUE: + return 'UNBONDING_QUEUE'; + case HostZoneUnbonding_Status.UNBONDING_IN_PROGRESS: + return 'UNBONDING_IN_PROGRESS'; + case HostZoneUnbonding_Status.UNBONDING_RETRY_QUEUE: + return 'UNBONDING_RETRY_QUEUE'; + case HostZoneUnbonding_Status.EXIT_TRANSFER_QUEUE: + return 'EXIT_TRANSFER_QUEUE'; + case HostZoneUnbonding_Status.EXIT_TRANSFER_IN_PROGRESS: + return 'EXIT_TRANSFER_IN_PROGRESS'; + case HostZoneUnbonding_Status.CLAIMABLE: + return 'CLAIMABLE'; + case HostZoneUnbonding_Status.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +export enum LSMTokenDeposit_Status { + DEPOSIT_PENDING = 0, + TRANSFER_QUEUE = 1, + TRANSFER_IN_PROGRESS = 2, + TRANSFER_FAILED = 3, + DETOKENIZATION_QUEUE = 4, + DETOKENIZATION_IN_PROGRESS = 5, + DETOKENIZATION_FAILED = 6, + UNRECOGNIZED = -1, +} +export const LSMTokenDeposit_StatusSDKType = LSMTokenDeposit_Status; +export function lSMTokenDeposit_StatusFromJSON( + object: any, +): LSMTokenDeposit_Status { + switch (object) { + case 0: + case 'DEPOSIT_PENDING': + return LSMTokenDeposit_Status.DEPOSIT_PENDING; + case 1: + case 'TRANSFER_QUEUE': + return LSMTokenDeposit_Status.TRANSFER_QUEUE; + case 2: + case 'TRANSFER_IN_PROGRESS': + return LSMTokenDeposit_Status.TRANSFER_IN_PROGRESS; + case 3: + case 'TRANSFER_FAILED': + return LSMTokenDeposit_Status.TRANSFER_FAILED; + case 4: + case 'DETOKENIZATION_QUEUE': + return LSMTokenDeposit_Status.DETOKENIZATION_QUEUE; + case 5: + case 'DETOKENIZATION_IN_PROGRESS': + return LSMTokenDeposit_Status.DETOKENIZATION_IN_PROGRESS; + case 6: + case 'DETOKENIZATION_FAILED': + return LSMTokenDeposit_Status.DETOKENIZATION_FAILED; + case -1: + case 'UNRECOGNIZED': + default: + return LSMTokenDeposit_Status.UNRECOGNIZED; + } +} +export function lSMTokenDeposit_StatusToJSON( + object: LSMTokenDeposit_Status, +): string { + switch (object) { + case LSMTokenDeposit_Status.DEPOSIT_PENDING: + return 'DEPOSIT_PENDING'; + case LSMTokenDeposit_Status.TRANSFER_QUEUE: + return 'TRANSFER_QUEUE'; + case LSMTokenDeposit_Status.TRANSFER_IN_PROGRESS: + return 'TRANSFER_IN_PROGRESS'; + case LSMTokenDeposit_Status.TRANSFER_FAILED: + return 'TRANSFER_FAILED'; + case LSMTokenDeposit_Status.DETOKENIZATION_QUEUE: + return 'DETOKENIZATION_QUEUE'; + case LSMTokenDeposit_Status.DETOKENIZATION_IN_PROGRESS: + return 'DETOKENIZATION_IN_PROGRESS'; + case LSMTokenDeposit_Status.DETOKENIZATION_FAILED: + return 'DETOKENIZATION_FAILED'; + case LSMTokenDeposit_Status.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +export interface UserRedemptionRecord { + /** {chain_id}.{epoch}.{receiver} */ + id: string; + receiver: string; + nativeTokenAmount: string; + denom: string; + hostZoneId: string; + epochNumber: bigint; + claimIsPending: boolean; + stTokenAmount: string; +} +export interface UserRedemptionRecordProtoMsg { + typeUrl: '/stride.records.UserRedemptionRecord'; + value: Uint8Array; +} +export interface UserRedemptionRecordSDKType { + id: string; + receiver: string; + native_token_amount: string; + denom: string; + host_zone_id: string; + epoch_number: bigint; + claim_is_pending: boolean; + st_token_amount: string; +} +export interface DepositRecord { + id: bigint; + amount: string; + denom: string; + hostZoneId: string; + status: DepositRecord_Status; + depositEpochNumber: bigint; + source: DepositRecord_Source; + delegationTxsInProgress: bigint; +} +export interface DepositRecordProtoMsg { + typeUrl: '/stride.records.DepositRecord'; + value: Uint8Array; +} +export interface DepositRecordSDKType { + id: bigint; + amount: string; + denom: string; + host_zone_id: string; + status: DepositRecord_Status; + deposit_epoch_number: bigint; + source: DepositRecord_Source; + delegation_txs_in_progress: bigint; +} +export interface HostZoneUnbonding { + stTokenAmount: string; + nativeTokenAmount: string; + stTokensToBurn: string; + nativeTokensToUnbond: string; + claimableNativeTokens: string; + undelegationTxsInProgress: bigint; + denom: string; + hostZoneId: string; + unbondingTime: bigint; + status: HostZoneUnbonding_Status; + userRedemptionRecords: string[]; +} +export interface HostZoneUnbondingProtoMsg { + typeUrl: '/stride.records.HostZoneUnbonding'; + value: Uint8Array; +} +export interface HostZoneUnbondingSDKType { + st_token_amount: string; + native_token_amount: string; + st_tokens_to_burn: string; + native_tokens_to_unbond: string; + claimable_native_tokens: string; + undelegation_txs_in_progress: bigint; + denom: string; + host_zone_id: string; + unbonding_time: bigint; + status: HostZoneUnbonding_Status; + user_redemption_records: string[]; +} +export interface EpochUnbondingRecord { + epochNumber: bigint; + hostZoneUnbondings: HostZoneUnbonding[]; +} +export interface EpochUnbondingRecordProtoMsg { + typeUrl: '/stride.records.EpochUnbondingRecord'; + value: Uint8Array; +} +export interface EpochUnbondingRecordSDKType { + epoch_number: bigint; + host_zone_unbondings: HostZoneUnbondingSDKType[]; +} +export interface LSMTokenDeposit { + depositId: string; + chainId: string; + denom: string; + ibcDenom: string; + stakerAddress: string; + validatorAddress: string; + amount: string; + stToken: Coin; + status: LSMTokenDeposit_Status; +} +export interface LSMTokenDepositProtoMsg { + typeUrl: '/stride.records.LSMTokenDeposit'; + value: Uint8Array; +} +export interface LSMTokenDepositSDKType { + deposit_id: string; + chain_id: string; + denom: string; + ibc_denom: string; + staker_address: string; + validator_address: string; + amount: string; + st_token: CoinSDKType; + status: LSMTokenDeposit_Status; +} +function createBaseUserRedemptionRecord(): UserRedemptionRecord { + return { + id: '', + receiver: '', + nativeTokenAmount: '', + denom: '', + hostZoneId: '', + epochNumber: BigInt(0), + claimIsPending: false, + stTokenAmount: '', + }; +} +export const UserRedemptionRecord = { + typeUrl: '/stride.records.UserRedemptionRecord', + encode( + message: UserRedemptionRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== '') { + writer.uint32(10).string(message.id); + } + if (message.receiver !== '') { + writer.uint32(26).string(message.receiver); + } + if (message.nativeTokenAmount !== '') { + writer.uint32(34).string(message.nativeTokenAmount); + } + if (message.denom !== '') { + writer.uint32(42).string(message.denom); + } + if (message.hostZoneId !== '') { + writer.uint32(50).string(message.hostZoneId); + } + if (message.epochNumber !== BigInt(0)) { + writer.uint32(56).uint64(message.epochNumber); + } + if (message.claimIsPending === true) { + writer.uint32(64).bool(message.claimIsPending); + } + if (message.stTokenAmount !== '') { + writer.uint32(74).string(message.stTokenAmount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): UserRedemptionRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUserRedemptionRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.string(); + break; + case 3: + message.receiver = reader.string(); + break; + case 4: + message.nativeTokenAmount = reader.string(); + break; + case 5: + message.denom = reader.string(); + break; + case 6: + message.hostZoneId = reader.string(); + break; + case 7: + message.epochNumber = reader.uint64(); + break; + case 8: + message.claimIsPending = reader.bool(); + break; + case 9: + message.stTokenAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): UserRedemptionRecord { + return { + id: isSet(object.id) ? String(object.id) : '', + receiver: isSet(object.receiver) ? String(object.receiver) : '', + nativeTokenAmount: isSet(object.nativeTokenAmount) + ? String(object.nativeTokenAmount) + : '', + denom: isSet(object.denom) ? String(object.denom) : '', + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + epochNumber: isSet(object.epochNumber) + ? BigInt(object.epochNumber.toString()) + : BigInt(0), + claimIsPending: isSet(object.claimIsPending) + ? Boolean(object.claimIsPending) + : false, + stTokenAmount: isSet(object.stTokenAmount) + ? String(object.stTokenAmount) + : '', + }; + }, + toJSON(message: UserRedemptionRecord): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = message.id); + message.receiver !== undefined && (obj.receiver = message.receiver); + message.nativeTokenAmount !== undefined && + (obj.nativeTokenAmount = message.nativeTokenAmount); + message.denom !== undefined && (obj.denom = message.denom); + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + message.epochNumber !== undefined && + (obj.epochNumber = (message.epochNumber || BigInt(0)).toString()); + message.claimIsPending !== undefined && + (obj.claimIsPending = message.claimIsPending); + message.stTokenAmount !== undefined && + (obj.stTokenAmount = message.stTokenAmount); + return obj; + }, + fromPartial(object: Partial): UserRedemptionRecord { + const message = createBaseUserRedemptionRecord(); + message.id = object.id ?? ''; + message.receiver = object.receiver ?? ''; + message.nativeTokenAmount = object.nativeTokenAmount ?? ''; + message.denom = object.denom ?? ''; + message.hostZoneId = object.hostZoneId ?? ''; + message.epochNumber = + object.epochNumber !== undefined && object.epochNumber !== null + ? BigInt(object.epochNumber.toString()) + : BigInt(0); + message.claimIsPending = object.claimIsPending ?? false; + message.stTokenAmount = object.stTokenAmount ?? ''; + return message; + }, + fromProtoMsg(message: UserRedemptionRecordProtoMsg): UserRedemptionRecord { + return UserRedemptionRecord.decode(message.value); + }, + toProto(message: UserRedemptionRecord): Uint8Array { + return UserRedemptionRecord.encode(message).finish(); + }, + toProtoMsg(message: UserRedemptionRecord): UserRedemptionRecordProtoMsg { + return { + typeUrl: '/stride.records.UserRedemptionRecord', + value: UserRedemptionRecord.encode(message).finish(), + }; + }, +}; +function createBaseDepositRecord(): DepositRecord { + return { + id: BigInt(0), + amount: '', + denom: '', + hostZoneId: '', + status: 0, + depositEpochNumber: BigInt(0), + source: 0, + delegationTxsInProgress: BigInt(0), + }; +} +export const DepositRecord = { + typeUrl: '/stride.records.DepositRecord', + encode( + message: DepositRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== BigInt(0)) { + writer.uint32(8).uint64(message.id); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + if (message.denom !== '') { + writer.uint32(26).string(message.denom); + } + if (message.hostZoneId !== '') { + writer.uint32(34).string(message.hostZoneId); + } + if (message.status !== 0) { + writer.uint32(48).int32(message.status); + } + if (message.depositEpochNumber !== BigInt(0)) { + writer.uint32(56).uint64(message.depositEpochNumber); + } + if (message.source !== 0) { + writer.uint32(64).int32(message.source); + } + if (message.delegationTxsInProgress !== BigInt(0)) { + writer.uint32(72).uint64(message.delegationTxsInProgress); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): DepositRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDepositRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.uint64(); + break; + case 2: + message.amount = reader.string(); + break; + case 3: + message.denom = reader.string(); + break; + case 4: + message.hostZoneId = reader.string(); + break; + case 6: + message.status = reader.int32() as any; + break; + case 7: + message.depositEpochNumber = reader.uint64(); + break; + case 8: + message.source = reader.int32() as any; + break; + case 9: + message.delegationTxsInProgress = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): DepositRecord { + return { + id: isSet(object.id) ? BigInt(object.id.toString()) : BigInt(0), + amount: isSet(object.amount) ? String(object.amount) : '', + denom: isSet(object.denom) ? String(object.denom) : '', + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + status: isSet(object.status) + ? depositRecord_StatusFromJSON(object.status) + : -1, + depositEpochNumber: isSet(object.depositEpochNumber) + ? BigInt(object.depositEpochNumber.toString()) + : BigInt(0), + source: isSet(object.source) + ? depositRecord_SourceFromJSON(object.source) + : -1, + delegationTxsInProgress: isSet(object.delegationTxsInProgress) + ? BigInt(object.delegationTxsInProgress.toString()) + : BigInt(0), + }; + }, + toJSON(message: DepositRecord): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = (message.id || BigInt(0)).toString()); + message.amount !== undefined && (obj.amount = message.amount); + message.denom !== undefined && (obj.denom = message.denom); + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + message.status !== undefined && + (obj.status = depositRecord_StatusToJSON(message.status)); + message.depositEpochNumber !== undefined && + (obj.depositEpochNumber = ( + message.depositEpochNumber || BigInt(0) + ).toString()); + message.source !== undefined && + (obj.source = depositRecord_SourceToJSON(message.source)); + message.delegationTxsInProgress !== undefined && + (obj.delegationTxsInProgress = ( + message.delegationTxsInProgress || BigInt(0) + ).toString()); + return obj; + }, + fromPartial(object: Partial): DepositRecord { + const message = createBaseDepositRecord(); + message.id = + object.id !== undefined && object.id !== null + ? BigInt(object.id.toString()) + : BigInt(0); + message.amount = object.amount ?? ''; + message.denom = object.denom ?? ''; + message.hostZoneId = object.hostZoneId ?? ''; + message.status = object.status ?? 0; + message.depositEpochNumber = + object.depositEpochNumber !== undefined && + object.depositEpochNumber !== null + ? BigInt(object.depositEpochNumber.toString()) + : BigInt(0); + message.source = object.source ?? 0; + message.delegationTxsInProgress = + object.delegationTxsInProgress !== undefined && + object.delegationTxsInProgress !== null + ? BigInt(object.delegationTxsInProgress.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: DepositRecordProtoMsg): DepositRecord { + return DepositRecord.decode(message.value); + }, + toProto(message: DepositRecord): Uint8Array { + return DepositRecord.encode(message).finish(); + }, + toProtoMsg(message: DepositRecord): DepositRecordProtoMsg { + return { + typeUrl: '/stride.records.DepositRecord', + value: DepositRecord.encode(message).finish(), + }; + }, +}; +function createBaseHostZoneUnbonding(): HostZoneUnbonding { + return { + stTokenAmount: '', + nativeTokenAmount: '', + stTokensToBurn: '', + nativeTokensToUnbond: '', + claimableNativeTokens: '', + undelegationTxsInProgress: BigInt(0), + denom: '', + hostZoneId: '', + unbondingTime: BigInt(0), + status: 0, + userRedemptionRecords: [], + }; +} +export const HostZoneUnbonding = { + typeUrl: '/stride.records.HostZoneUnbonding', + encode( + message: HostZoneUnbonding, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.stTokenAmount !== '') { + writer.uint32(10).string(message.stTokenAmount); + } + if (message.nativeTokenAmount !== '') { + writer.uint32(18).string(message.nativeTokenAmount); + } + if (message.stTokensToBurn !== '') { + writer.uint32(66).string(message.stTokensToBurn); + } + if (message.nativeTokensToUnbond !== '') { + writer.uint32(74).string(message.nativeTokensToUnbond); + } + if (message.claimableNativeTokens !== '') { + writer.uint32(82).string(message.claimableNativeTokens); + } + if (message.undelegationTxsInProgress !== BigInt(0)) { + writer.uint32(88).uint64(message.undelegationTxsInProgress); + } + if (message.denom !== '') { + writer.uint32(26).string(message.denom); + } + if (message.hostZoneId !== '') { + writer.uint32(34).string(message.hostZoneId); + } + if (message.unbondingTime !== BigInt(0)) { + writer.uint32(40).uint64(message.unbondingTime); + } + if (message.status !== 0) { + writer.uint32(48).int32(message.status); + } + for (const v of message.userRedemptionRecords) { + writer.uint32(58).string(v!); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): HostZoneUnbonding { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseHostZoneUnbonding(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.stTokenAmount = reader.string(); + break; + case 2: + message.nativeTokenAmount = reader.string(); + break; + case 8: + message.stTokensToBurn = reader.string(); + break; + case 9: + message.nativeTokensToUnbond = reader.string(); + break; + case 10: + message.claimableNativeTokens = reader.string(); + break; + case 11: + message.undelegationTxsInProgress = reader.uint64(); + break; + case 3: + message.denom = reader.string(); + break; + case 4: + message.hostZoneId = reader.string(); + break; + case 5: + message.unbondingTime = reader.uint64(); + break; + case 6: + message.status = reader.int32() as any; + break; + case 7: + message.userRedemptionRecords.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): HostZoneUnbonding { + return { + stTokenAmount: isSet(object.stTokenAmount) + ? String(object.stTokenAmount) + : '', + nativeTokenAmount: isSet(object.nativeTokenAmount) + ? String(object.nativeTokenAmount) + : '', + stTokensToBurn: isSet(object.stTokensToBurn) + ? String(object.stTokensToBurn) + : '', + nativeTokensToUnbond: isSet(object.nativeTokensToUnbond) + ? String(object.nativeTokensToUnbond) + : '', + claimableNativeTokens: isSet(object.claimableNativeTokens) + ? String(object.claimableNativeTokens) + : '', + undelegationTxsInProgress: isSet(object.undelegationTxsInProgress) + ? BigInt(object.undelegationTxsInProgress.toString()) + : BigInt(0), + denom: isSet(object.denom) ? String(object.denom) : '', + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + unbondingTime: isSet(object.unbondingTime) + ? BigInt(object.unbondingTime.toString()) + : BigInt(0), + status: isSet(object.status) + ? hostZoneUnbonding_StatusFromJSON(object.status) + : -1, + userRedemptionRecords: Array.isArray(object?.userRedemptionRecords) + ? object.userRedemptionRecords.map((e: any) => String(e)) + : [], + }; + }, + toJSON(message: HostZoneUnbonding): JsonSafe { + const obj: any = {}; + message.stTokenAmount !== undefined && + (obj.stTokenAmount = message.stTokenAmount); + message.nativeTokenAmount !== undefined && + (obj.nativeTokenAmount = message.nativeTokenAmount); + message.stTokensToBurn !== undefined && + (obj.stTokensToBurn = message.stTokensToBurn); + message.nativeTokensToUnbond !== undefined && + (obj.nativeTokensToUnbond = message.nativeTokensToUnbond); + message.claimableNativeTokens !== undefined && + (obj.claimableNativeTokens = message.claimableNativeTokens); + message.undelegationTxsInProgress !== undefined && + (obj.undelegationTxsInProgress = ( + message.undelegationTxsInProgress || BigInt(0) + ).toString()); + message.denom !== undefined && (obj.denom = message.denom); + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + message.unbondingTime !== undefined && + (obj.unbondingTime = (message.unbondingTime || BigInt(0)).toString()); + message.status !== undefined && + (obj.status = hostZoneUnbonding_StatusToJSON(message.status)); + if (message.userRedemptionRecords) { + obj.userRedemptionRecords = message.userRedemptionRecords.map(e => e); + } else { + obj.userRedemptionRecords = []; + } + return obj; + }, + fromPartial(object: Partial): HostZoneUnbonding { + const message = createBaseHostZoneUnbonding(); + message.stTokenAmount = object.stTokenAmount ?? ''; + message.nativeTokenAmount = object.nativeTokenAmount ?? ''; + message.stTokensToBurn = object.stTokensToBurn ?? ''; + message.nativeTokensToUnbond = object.nativeTokensToUnbond ?? ''; + message.claimableNativeTokens = object.claimableNativeTokens ?? ''; + message.undelegationTxsInProgress = + object.undelegationTxsInProgress !== undefined && + object.undelegationTxsInProgress !== null + ? BigInt(object.undelegationTxsInProgress.toString()) + : BigInt(0); + message.denom = object.denom ?? ''; + message.hostZoneId = object.hostZoneId ?? ''; + message.unbondingTime = + object.unbondingTime !== undefined && object.unbondingTime !== null + ? BigInt(object.unbondingTime.toString()) + : BigInt(0); + message.status = object.status ?? 0; + message.userRedemptionRecords = + object.userRedemptionRecords?.map(e => e) || []; + return message; + }, + fromProtoMsg(message: HostZoneUnbondingProtoMsg): HostZoneUnbonding { + return HostZoneUnbonding.decode(message.value); + }, + toProto(message: HostZoneUnbonding): Uint8Array { + return HostZoneUnbonding.encode(message).finish(); + }, + toProtoMsg(message: HostZoneUnbonding): HostZoneUnbondingProtoMsg { + return { + typeUrl: '/stride.records.HostZoneUnbonding', + value: HostZoneUnbonding.encode(message).finish(), + }; + }, +}; +function createBaseEpochUnbondingRecord(): EpochUnbondingRecord { + return { + epochNumber: BigInt(0), + hostZoneUnbondings: [], + }; +} +export const EpochUnbondingRecord = { + typeUrl: '/stride.records.EpochUnbondingRecord', + encode( + message: EpochUnbondingRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.epochNumber !== BigInt(0)) { + writer.uint32(8).uint64(message.epochNumber); + } + for (const v of message.hostZoneUnbondings) { + HostZoneUnbonding.encode(v!, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): EpochUnbondingRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseEpochUnbondingRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochNumber = reader.uint64(); + break; + case 3: + message.hostZoneUnbondings.push( + HostZoneUnbonding.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): EpochUnbondingRecord { + return { + epochNumber: isSet(object.epochNumber) + ? BigInt(object.epochNumber.toString()) + : BigInt(0), + hostZoneUnbondings: Array.isArray(object?.hostZoneUnbondings) + ? object.hostZoneUnbondings.map((e: any) => + HostZoneUnbonding.fromJSON(e), + ) + : [], + }; + }, + toJSON(message: EpochUnbondingRecord): JsonSafe { + const obj: any = {}; + message.epochNumber !== undefined && + (obj.epochNumber = (message.epochNumber || BigInt(0)).toString()); + if (message.hostZoneUnbondings) { + obj.hostZoneUnbondings = message.hostZoneUnbondings.map(e => + e ? HostZoneUnbonding.toJSON(e) : undefined, + ); + } else { + obj.hostZoneUnbondings = []; + } + return obj; + }, + fromPartial(object: Partial): EpochUnbondingRecord { + const message = createBaseEpochUnbondingRecord(); + message.epochNumber = + object.epochNumber !== undefined && object.epochNumber !== null + ? BigInt(object.epochNumber.toString()) + : BigInt(0); + message.hostZoneUnbondings = + object.hostZoneUnbondings?.map(e => HostZoneUnbonding.fromPartial(e)) || + []; + return message; + }, + fromProtoMsg(message: EpochUnbondingRecordProtoMsg): EpochUnbondingRecord { + return EpochUnbondingRecord.decode(message.value); + }, + toProto(message: EpochUnbondingRecord): Uint8Array { + return EpochUnbondingRecord.encode(message).finish(); + }, + toProtoMsg(message: EpochUnbondingRecord): EpochUnbondingRecordProtoMsg { + return { + typeUrl: '/stride.records.EpochUnbondingRecord', + value: EpochUnbondingRecord.encode(message).finish(), + }; + }, +}; +function createBaseLSMTokenDeposit(): LSMTokenDeposit { + return { + depositId: '', + chainId: '', + denom: '', + ibcDenom: '', + stakerAddress: '', + validatorAddress: '', + amount: '', + stToken: Coin.fromPartial({}), + status: 0, + }; +} +export const LSMTokenDeposit = { + typeUrl: '/stride.records.LSMTokenDeposit', + encode( + message: LSMTokenDeposit, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.depositId !== '') { + writer.uint32(10).string(message.depositId); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.denom !== '') { + writer.uint32(26).string(message.denom); + } + if (message.ibcDenom !== '') { + writer.uint32(34).string(message.ibcDenom); + } + if (message.stakerAddress !== '') { + writer.uint32(42).string(message.stakerAddress); + } + if (message.validatorAddress !== '') { + writer.uint32(50).string(message.validatorAddress); + } + if (message.amount !== '') { + writer.uint32(58).string(message.amount); + } + if (message.stToken !== undefined) { + Coin.encode(message.stToken, writer.uint32(66).fork()).ldelim(); + } + if (message.status !== 0) { + writer.uint32(72).int32(message.status); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): LSMTokenDeposit { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseLSMTokenDeposit(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.depositId = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.denom = reader.string(); + break; + case 4: + message.ibcDenom = reader.string(); + break; + case 5: + message.stakerAddress = reader.string(); + break; + case 6: + message.validatorAddress = reader.string(); + break; + case 7: + message.amount = reader.string(); + break; + case 8: + message.stToken = Coin.decode(reader, reader.uint32()); + break; + case 9: + message.status = reader.int32() as any; + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): LSMTokenDeposit { + return { + depositId: isSet(object.depositId) ? String(object.depositId) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + denom: isSet(object.denom) ? String(object.denom) : '', + ibcDenom: isSet(object.ibcDenom) ? String(object.ibcDenom) : '', + stakerAddress: isSet(object.stakerAddress) + ? String(object.stakerAddress) + : '', + validatorAddress: isSet(object.validatorAddress) + ? String(object.validatorAddress) + : '', + amount: isSet(object.amount) ? String(object.amount) : '', + stToken: isSet(object.stToken) + ? Coin.fromJSON(object.stToken) + : undefined, + status: isSet(object.status) + ? lSMTokenDeposit_StatusFromJSON(object.status) + : -1, + }; + }, + toJSON(message: LSMTokenDeposit): JsonSafe { + const obj: any = {}; + message.depositId !== undefined && (obj.depositId = message.depositId); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.denom !== undefined && (obj.denom = message.denom); + message.ibcDenom !== undefined && (obj.ibcDenom = message.ibcDenom); + message.stakerAddress !== undefined && + (obj.stakerAddress = message.stakerAddress); + message.validatorAddress !== undefined && + (obj.validatorAddress = message.validatorAddress); + message.amount !== undefined && (obj.amount = message.amount); + message.stToken !== undefined && + (obj.stToken = message.stToken + ? Coin.toJSON(message.stToken) + : undefined); + message.status !== undefined && + (obj.status = lSMTokenDeposit_StatusToJSON(message.status)); + return obj; + }, + fromPartial(object: Partial): LSMTokenDeposit { + const message = createBaseLSMTokenDeposit(); + message.depositId = object.depositId ?? ''; + message.chainId = object.chainId ?? ''; + message.denom = object.denom ?? ''; + message.ibcDenom = object.ibcDenom ?? ''; + message.stakerAddress = object.stakerAddress ?? ''; + message.validatorAddress = object.validatorAddress ?? ''; + message.amount = object.amount ?? ''; + message.stToken = + object.stToken !== undefined && object.stToken !== null + ? Coin.fromPartial(object.stToken) + : undefined; + message.status = object.status ?? 0; + return message; + }, + fromProtoMsg(message: LSMTokenDepositProtoMsg): LSMTokenDeposit { + return LSMTokenDeposit.decode(message.value); + }, + toProto(message: LSMTokenDeposit): Uint8Array { + return LSMTokenDeposit.encode(message).finish(); + }, + toProtoMsg(message: LSMTokenDeposit): LSMTokenDepositProtoMsg { + return { + typeUrl: '/stride.records.LSMTokenDeposit', + value: LSMTokenDeposit.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakedym/genesis.ts b/packages/cosmic-proto/src/codegen/stride/stakedym/genesis.ts new file mode 100644 index 00000000000..0788bd46e96 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakedym/genesis.ts @@ -0,0 +1,420 @@ +//@ts-nocheck +import { + HostZone, + type HostZoneSDKType, + DelegationRecord, + type DelegationRecordSDKType, + UnbondingRecord, + type UnbondingRecordSDKType, + RedemptionRecord, + type RedemptionRecordSDKType, + SlashRecord, + type SlashRecordSDKType, +} from './stakedym.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { type JsonSafe } from '../../json-safe.js'; +import { isSet } from '../../helpers.js'; +/** Params defines the stakedym module parameters. */ +export interface Params {} +export interface ParamsProtoMsg { + typeUrl: '/stride.stakedym.Params'; + value: Uint8Array; +} +/** Params defines the stakedym module parameters. */ +export interface ParamsSDKType {} +/** + * TransferInProgressRecordIds stores record IDs for delegation records + * that have a transfer in progress + */ +export interface TransferInProgressRecordIds { + channelId: string; + sequence: bigint; + recordId: bigint; +} +export interface TransferInProgressRecordIdsProtoMsg { + typeUrl: '/stride.stakedym.TransferInProgressRecordIds'; + value: Uint8Array; +} +/** + * TransferInProgressRecordIds stores record IDs for delegation records + * that have a transfer in progress + */ +export interface TransferInProgressRecordIdsSDKType { + channel_id: string; + sequence: bigint; + record_id: bigint; +} +/** GenesisState defines the stakedym module's genesis state. */ +export interface GenesisState { + params: Params; + hostZone: HostZone; + delegationRecords: DelegationRecord[]; + unbondingRecords: UnbondingRecord[]; + redemptionRecords: RedemptionRecord[]; + slashRecords: SlashRecord[]; + transferInProgressRecordIds: TransferInProgressRecordIds[]; +} +export interface GenesisStateProtoMsg { + typeUrl: '/stride.stakedym.GenesisState'; + value: Uint8Array; +} +/** GenesisState defines the stakedym module's genesis state. */ +export interface GenesisStateSDKType { + params: ParamsSDKType; + host_zone: HostZoneSDKType; + delegation_records: DelegationRecordSDKType[]; + unbonding_records: UnbondingRecordSDKType[]; + redemption_records: RedemptionRecordSDKType[]; + slash_records: SlashRecordSDKType[]; + transfer_in_progress_record_ids: TransferInProgressRecordIdsSDKType[]; +} +function createBaseParams(): Params { + return {}; +} +export const Params = { + typeUrl: '/stride.stakedym.Params', + encode( + _: Params, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Params { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseParams(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): Params { + return {}; + }, + toJSON(_: Params): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): Params { + const message = createBaseParams(); + return message; + }, + fromProtoMsg(message: ParamsProtoMsg): Params { + return Params.decode(message.value); + }, + toProto(message: Params): Uint8Array { + return Params.encode(message).finish(); + }, + toProtoMsg(message: Params): ParamsProtoMsg { + return { + typeUrl: '/stride.stakedym.Params', + value: Params.encode(message).finish(), + }; + }, +}; +function createBaseTransferInProgressRecordIds(): TransferInProgressRecordIds { + return { + channelId: '', + sequence: BigInt(0), + recordId: BigInt(0), + }; +} +export const TransferInProgressRecordIds = { + typeUrl: '/stride.stakedym.TransferInProgressRecordIds', + encode( + message: TransferInProgressRecordIds, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.channelId !== '') { + writer.uint32(10).string(message.channelId); + } + if (message.sequence !== BigInt(0)) { + writer.uint32(16).uint64(message.sequence); + } + if (message.recordId !== BigInt(0)) { + writer.uint32(24).uint64(message.recordId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): TransferInProgressRecordIds { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTransferInProgressRecordIds(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.channelId = reader.string(); + break; + case 2: + message.sequence = reader.uint64(); + break; + case 3: + message.recordId = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TransferInProgressRecordIds { + return { + channelId: isSet(object.channelId) ? String(object.channelId) : '', + sequence: isSet(object.sequence) + ? BigInt(object.sequence.toString()) + : BigInt(0), + recordId: isSet(object.recordId) + ? BigInt(object.recordId.toString()) + : BigInt(0), + }; + }, + toJSON( + message: TransferInProgressRecordIds, + ): JsonSafe { + const obj: any = {}; + message.channelId !== undefined && (obj.channelId = message.channelId); + message.sequence !== undefined && + (obj.sequence = (message.sequence || BigInt(0)).toString()); + message.recordId !== undefined && + (obj.recordId = (message.recordId || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): TransferInProgressRecordIds { + const message = createBaseTransferInProgressRecordIds(); + message.channelId = object.channelId ?? ''; + message.sequence = + object.sequence !== undefined && object.sequence !== null + ? BigInt(object.sequence.toString()) + : BigInt(0); + message.recordId = + object.recordId !== undefined && object.recordId !== null + ? BigInt(object.recordId.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: TransferInProgressRecordIdsProtoMsg, + ): TransferInProgressRecordIds { + return TransferInProgressRecordIds.decode(message.value); + }, + toProto(message: TransferInProgressRecordIds): Uint8Array { + return TransferInProgressRecordIds.encode(message).finish(); + }, + toProtoMsg( + message: TransferInProgressRecordIds, + ): TransferInProgressRecordIdsProtoMsg { + return { + typeUrl: '/stride.stakedym.TransferInProgressRecordIds', + value: TransferInProgressRecordIds.encode(message).finish(), + }; + }, +}; +function createBaseGenesisState(): GenesisState { + return { + params: Params.fromPartial({}), + hostZone: HostZone.fromPartial({}), + delegationRecords: [], + unbondingRecords: [], + redemptionRecords: [], + slashRecords: [], + transferInProgressRecordIds: [], + }; +} +export const GenesisState = { + typeUrl: '/stride.stakedym.GenesisState', + encode( + message: GenesisState, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.params !== undefined) { + Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + if (message.hostZone !== undefined) { + HostZone.encode(message.hostZone, writer.uint32(18).fork()).ldelim(); + } + for (const v of message.delegationRecords) { + DelegationRecord.encode(v!, writer.uint32(26).fork()).ldelim(); + } + for (const v of message.unbondingRecords) { + UnbondingRecord.encode(v!, writer.uint32(34).fork()).ldelim(); + } + for (const v of message.redemptionRecords) { + RedemptionRecord.encode(v!, writer.uint32(42).fork()).ldelim(); + } + for (const v of message.slashRecords) { + SlashRecord.encode(v!, writer.uint32(50).fork()).ldelim(); + } + for (const v of message.transferInProgressRecordIds) { + TransferInProgressRecordIds.encode(v!, writer.uint32(58).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): GenesisState { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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.decode(reader, reader.uint32()); + break; + case 2: + message.hostZone = HostZone.decode(reader, reader.uint32()); + break; + case 3: + message.delegationRecords.push( + DelegationRecord.decode(reader, reader.uint32()), + ); + break; + case 4: + message.unbondingRecords.push( + UnbondingRecord.decode(reader, reader.uint32()), + ); + break; + case 5: + message.redemptionRecords.push( + RedemptionRecord.decode(reader, reader.uint32()), + ); + break; + case 6: + message.slashRecords.push( + SlashRecord.decode(reader, reader.uint32()), + ); + break; + case 7: + message.transferInProgressRecordIds.push( + TransferInProgressRecordIds.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): GenesisState { + return { + params: isSet(object.params) ? Params.fromJSON(object.params) : undefined, + hostZone: isSet(object.hostZone) + ? HostZone.fromJSON(object.hostZone) + : undefined, + delegationRecords: Array.isArray(object?.delegationRecords) + ? object.delegationRecords.map((e: any) => DelegationRecord.fromJSON(e)) + : [], + unbondingRecords: Array.isArray(object?.unbondingRecords) + ? object.unbondingRecords.map((e: any) => UnbondingRecord.fromJSON(e)) + : [], + redemptionRecords: Array.isArray(object?.redemptionRecords) + ? object.redemptionRecords.map((e: any) => RedemptionRecord.fromJSON(e)) + : [], + slashRecords: Array.isArray(object?.slashRecords) + ? object.slashRecords.map((e: any) => SlashRecord.fromJSON(e)) + : [], + transferInProgressRecordIds: Array.isArray( + object?.transferInProgressRecordIds, + ) + ? object.transferInProgressRecordIds.map((e: any) => + TransferInProgressRecordIds.fromJSON(e), + ) + : [], + }; + }, + toJSON(message: GenesisState): JsonSafe { + const obj: any = {}; + message.params !== undefined && + (obj.params = message.params ? Params.toJSON(message.params) : undefined); + message.hostZone !== undefined && + (obj.hostZone = message.hostZone + ? HostZone.toJSON(message.hostZone) + : undefined); + if (message.delegationRecords) { + obj.delegationRecords = message.delegationRecords.map(e => + e ? DelegationRecord.toJSON(e) : undefined, + ); + } else { + obj.delegationRecords = []; + } + if (message.unbondingRecords) { + obj.unbondingRecords = message.unbondingRecords.map(e => + e ? UnbondingRecord.toJSON(e) : undefined, + ); + } else { + obj.unbondingRecords = []; + } + if (message.redemptionRecords) { + obj.redemptionRecords = message.redemptionRecords.map(e => + e ? RedemptionRecord.toJSON(e) : undefined, + ); + } else { + obj.redemptionRecords = []; + } + if (message.slashRecords) { + obj.slashRecords = message.slashRecords.map(e => + e ? SlashRecord.toJSON(e) : undefined, + ); + } else { + obj.slashRecords = []; + } + if (message.transferInProgressRecordIds) { + obj.transferInProgressRecordIds = message.transferInProgressRecordIds.map( + e => (e ? TransferInProgressRecordIds.toJSON(e) : undefined), + ); + } else { + obj.transferInProgressRecordIds = []; + } + return obj; + }, + fromPartial(object: Partial): GenesisState { + const message = createBaseGenesisState(); + message.params = + object.params !== undefined && object.params !== null + ? Params.fromPartial(object.params) + : undefined; + message.hostZone = + object.hostZone !== undefined && object.hostZone !== null + ? HostZone.fromPartial(object.hostZone) + : undefined; + message.delegationRecords = + object.delegationRecords?.map(e => DelegationRecord.fromPartial(e)) || []; + message.unbondingRecords = + object.unbondingRecords?.map(e => UnbondingRecord.fromPartial(e)) || []; + message.redemptionRecords = + object.redemptionRecords?.map(e => RedemptionRecord.fromPartial(e)) || []; + message.slashRecords = + object.slashRecords?.map(e => SlashRecord.fromPartial(e)) || []; + message.transferInProgressRecordIds = + object.transferInProgressRecordIds?.map(e => + TransferInProgressRecordIds.fromPartial(e), + ) || []; + return message; + }, + fromProtoMsg(message: GenesisStateProtoMsg): GenesisState { + return GenesisState.decode(message.value); + }, + toProto(message: GenesisState): Uint8Array { + return GenesisState.encode(message).finish(); + }, + toProtoMsg(message: GenesisState): GenesisStateProtoMsg { + return { + typeUrl: '/stride.stakedym.GenesisState', + value: GenesisState.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakedym/query.ts b/packages/cosmic-proto/src/codegen/stride/stakedym/query.ts new file mode 100644 index 00000000000..af7f5ea2dfa --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakedym/query.ts @@ -0,0 +1,1269 @@ +//@ts-nocheck +import { + PageRequest, + type PageRequestSDKType, + PageResponse, + type PageResponseSDKType, +} from '../../cosmos/base/query/v1beta1/pagination.js'; +import { + HostZone, + type HostZoneSDKType, + DelegationRecord, + type DelegationRecordSDKType, + UnbondingRecord, + type UnbondingRecordSDKType, + SlashRecord, + type SlashRecordSDKType, + RedemptionRecord, + type RedemptionRecordSDKType, +} from './stakedym.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { type JsonSafe } from '../../json-safe.js'; +import { isSet } from '../../helpers.js'; +/** Host Zone */ +export interface QueryHostZoneRequest {} +export interface QueryHostZoneRequestProtoMsg { + typeUrl: '/stride.stakedym.QueryHostZoneRequest'; + value: Uint8Array; +} +/** Host Zone */ +export interface QueryHostZoneRequestSDKType {} +export interface QueryHostZoneResponse { + hostZone?: HostZone; +} +export interface QueryHostZoneResponseProtoMsg { + typeUrl: '/stride.stakedym.QueryHostZoneResponse'; + value: Uint8Array; +} +export interface QueryHostZoneResponseSDKType { + host_zone?: HostZoneSDKType; +} +/** All Delegation Records */ +export interface QueryDelegationRecordsRequest { + includeArchived: boolean; +} +export interface QueryDelegationRecordsRequestProtoMsg { + typeUrl: '/stride.stakedym.QueryDelegationRecordsRequest'; + value: Uint8Array; +} +/** All Delegation Records */ +export interface QueryDelegationRecordsRequestSDKType { + include_archived: boolean; +} +export interface QueryDelegationRecordsResponse { + delegationRecords: DelegationRecord[]; +} +export interface QueryDelegationRecordsResponseProtoMsg { + typeUrl: '/stride.stakedym.QueryDelegationRecordsResponse'; + value: Uint8Array; +} +export interface QueryDelegationRecordsResponseSDKType { + delegation_records: DelegationRecordSDKType[]; +} +/** All Unbonding Records */ +export interface QueryUnbondingRecordsRequest { + includeArchived: boolean; +} +export interface QueryUnbondingRecordsRequestProtoMsg { + typeUrl: '/stride.stakedym.QueryUnbondingRecordsRequest'; + value: Uint8Array; +} +/** All Unbonding Records */ +export interface QueryUnbondingRecordsRequestSDKType { + include_archived: boolean; +} +export interface QueryUnbondingRecordsResponse { + unbondingRecords: UnbondingRecord[]; +} +export interface QueryUnbondingRecordsResponseProtoMsg { + typeUrl: '/stride.stakedym.QueryUnbondingRecordsResponse'; + value: Uint8Array; +} +export interface QueryUnbondingRecordsResponseSDKType { + unbonding_records: UnbondingRecordSDKType[]; +} +/** Single Redemption Record */ +export interface QueryRedemptionRecordRequest { + unbondingRecordId: bigint; + address: string; +} +export interface QueryRedemptionRecordRequestProtoMsg { + typeUrl: '/stride.stakedym.QueryRedemptionRecordRequest'; + value: Uint8Array; +} +/** Single Redemption Record */ +export interface QueryRedemptionRecordRequestSDKType { + unbonding_record_id: bigint; + address: string; +} +export interface QueryRedemptionRecordResponse { + redemptionRecordResponse?: RedemptionRecordResponse; +} +export interface QueryRedemptionRecordResponseProtoMsg { + typeUrl: '/stride.stakedym.QueryRedemptionRecordResponse'; + value: Uint8Array; +} +export interface QueryRedemptionRecordResponseSDKType { + redemption_record_response?: RedemptionRecordResponseSDKType; +} +/** All Redemption Records */ +export interface QueryRedemptionRecordsRequest { + address: string; + unbondingRecordId: bigint; + pagination?: PageRequest; +} +export interface QueryRedemptionRecordsRequestProtoMsg { + typeUrl: '/stride.stakedym.QueryRedemptionRecordsRequest'; + value: Uint8Array; +} +/** All Redemption Records */ +export interface QueryRedemptionRecordsRequestSDKType { + address: string; + unbonding_record_id: bigint; + pagination?: PageRequestSDKType; +} +export interface QueryRedemptionRecordsResponse { + redemptionRecordResponses: RedemptionRecordResponse[]; + pagination?: PageResponse; +} +export interface QueryRedemptionRecordsResponseProtoMsg { + typeUrl: '/stride.stakedym.QueryRedemptionRecordsResponse'; + value: Uint8Array; +} +export interface QueryRedemptionRecordsResponseSDKType { + redemption_record_responses: RedemptionRecordResponseSDKType[]; + pagination?: PageResponseSDKType; +} +/** All Slash Records */ +export interface QuerySlashRecordsRequest {} +export interface QuerySlashRecordsRequestProtoMsg { + typeUrl: '/stride.stakedym.QuerySlashRecordsRequest'; + value: Uint8Array; +} +/** All Slash Records */ +export interface QuerySlashRecordsRequestSDKType {} +export interface QuerySlashRecordsResponse { + slashRecords: SlashRecord[]; +} +export interface QuerySlashRecordsResponseProtoMsg { + typeUrl: '/stride.stakedym.QuerySlashRecordsResponse'; + value: Uint8Array; +} +export interface QuerySlashRecordsResponseSDKType { + slash_records: SlashRecordSDKType[]; +} +/** Data structure for frontend to consume */ +export interface RedemptionRecordResponse { + /** Redemption record */ + redemptionRecord?: RedemptionRecord; + /** + * The Unix timestamp (in seconds) at which the unbonding for the UR + * associated with this RR completes + */ + unbondingCompletionTimeSeconds: bigint; +} +export interface RedemptionRecordResponseProtoMsg { + typeUrl: '/stride.stakedym.RedemptionRecordResponse'; + value: Uint8Array; +} +/** Data structure for frontend to consume */ +export interface RedemptionRecordResponseSDKType { + redemption_record?: RedemptionRecordSDKType; + unbonding_completion_time_seconds: bigint; +} +function createBaseQueryHostZoneRequest(): QueryHostZoneRequest { + return {}; +} +export const QueryHostZoneRequest = { + typeUrl: '/stride.stakedym.QueryHostZoneRequest', + encode( + _: QueryHostZoneRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryHostZoneRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryHostZoneRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryHostZoneRequest { + return {}; + }, + toJSON(_: QueryHostZoneRequest): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QueryHostZoneRequest { + const message = createBaseQueryHostZoneRequest(); + return message; + }, + fromProtoMsg(message: QueryHostZoneRequestProtoMsg): QueryHostZoneRequest { + return QueryHostZoneRequest.decode(message.value); + }, + toProto(message: QueryHostZoneRequest): Uint8Array { + return QueryHostZoneRequest.encode(message).finish(); + }, + toProtoMsg(message: QueryHostZoneRequest): QueryHostZoneRequestProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryHostZoneRequest', + value: QueryHostZoneRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryHostZoneResponse(): QueryHostZoneResponse { + return { + hostZone: undefined, + }; +} +export const QueryHostZoneResponse = { + typeUrl: '/stride.stakedym.QueryHostZoneResponse', + encode( + message: QueryHostZoneResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.hostZone !== undefined) { + HostZone.encode(message.hostZone, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryHostZoneResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryHostZoneResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZone = HostZone.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryHostZoneResponse { + return { + hostZone: isSet(object.hostZone) + ? HostZone.fromJSON(object.hostZone) + : undefined, + }; + }, + toJSON(message: QueryHostZoneResponse): JsonSafe { + const obj: any = {}; + message.hostZone !== undefined && + (obj.hostZone = message.hostZone + ? HostZone.toJSON(message.hostZone) + : undefined); + return obj; + }, + fromPartial(object: Partial): QueryHostZoneResponse { + const message = createBaseQueryHostZoneResponse(); + message.hostZone = + object.hostZone !== undefined && object.hostZone !== null + ? HostZone.fromPartial(object.hostZone) + : undefined; + return message; + }, + fromProtoMsg(message: QueryHostZoneResponseProtoMsg): QueryHostZoneResponse { + return QueryHostZoneResponse.decode(message.value); + }, + toProto(message: QueryHostZoneResponse): Uint8Array { + return QueryHostZoneResponse.encode(message).finish(); + }, + toProtoMsg(message: QueryHostZoneResponse): QueryHostZoneResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryHostZoneResponse', + value: QueryHostZoneResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryDelegationRecordsRequest(): QueryDelegationRecordsRequest { + return { + includeArchived: false, + }; +} +export const QueryDelegationRecordsRequest = { + typeUrl: '/stride.stakedym.QueryDelegationRecordsRequest', + encode( + message: QueryDelegationRecordsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.includeArchived === true) { + writer.uint32(8).bool(message.includeArchived); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryDelegationRecordsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDelegationRecordsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.includeArchived = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryDelegationRecordsRequest { + return { + includeArchived: isSet(object.includeArchived) + ? Boolean(object.includeArchived) + : false, + }; + }, + toJSON( + message: QueryDelegationRecordsRequest, + ): JsonSafe { + const obj: any = {}; + message.includeArchived !== undefined && + (obj.includeArchived = message.includeArchived); + return obj; + }, + fromPartial( + object: Partial, + ): QueryDelegationRecordsRequest { + const message = createBaseQueryDelegationRecordsRequest(); + message.includeArchived = object.includeArchived ?? false; + return message; + }, + fromProtoMsg( + message: QueryDelegationRecordsRequestProtoMsg, + ): QueryDelegationRecordsRequest { + return QueryDelegationRecordsRequest.decode(message.value); + }, + toProto(message: QueryDelegationRecordsRequest): Uint8Array { + return QueryDelegationRecordsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryDelegationRecordsRequest, + ): QueryDelegationRecordsRequestProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryDelegationRecordsRequest', + value: QueryDelegationRecordsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryDelegationRecordsResponse(): QueryDelegationRecordsResponse { + return { + delegationRecords: [], + }; +} +export const QueryDelegationRecordsResponse = { + typeUrl: '/stride.stakedym.QueryDelegationRecordsResponse', + encode( + message: QueryDelegationRecordsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.delegationRecords) { + DelegationRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryDelegationRecordsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDelegationRecordsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.delegationRecords.push( + DelegationRecord.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryDelegationRecordsResponse { + return { + delegationRecords: Array.isArray(object?.delegationRecords) + ? object.delegationRecords.map((e: any) => DelegationRecord.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryDelegationRecordsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.delegationRecords) { + obj.delegationRecords = message.delegationRecords.map(e => + e ? DelegationRecord.toJSON(e) : undefined, + ); + } else { + obj.delegationRecords = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryDelegationRecordsResponse { + const message = createBaseQueryDelegationRecordsResponse(); + message.delegationRecords = + object.delegationRecords?.map(e => DelegationRecord.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryDelegationRecordsResponseProtoMsg, + ): QueryDelegationRecordsResponse { + return QueryDelegationRecordsResponse.decode(message.value); + }, + toProto(message: QueryDelegationRecordsResponse): Uint8Array { + return QueryDelegationRecordsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryDelegationRecordsResponse, + ): QueryDelegationRecordsResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryDelegationRecordsResponse', + value: QueryDelegationRecordsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryUnbondingRecordsRequest(): QueryUnbondingRecordsRequest { + return { + includeArchived: false, + }; +} +export const QueryUnbondingRecordsRequest = { + typeUrl: '/stride.stakedym.QueryUnbondingRecordsRequest', + encode( + message: QueryUnbondingRecordsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.includeArchived === true) { + writer.uint32(8).bool(message.includeArchived); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryUnbondingRecordsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryUnbondingRecordsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.includeArchived = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryUnbondingRecordsRequest { + return { + includeArchived: isSet(object.includeArchived) + ? Boolean(object.includeArchived) + : false, + }; + }, + toJSON( + message: QueryUnbondingRecordsRequest, + ): JsonSafe { + const obj: any = {}; + message.includeArchived !== undefined && + (obj.includeArchived = message.includeArchived); + return obj; + }, + fromPartial( + object: Partial, + ): QueryUnbondingRecordsRequest { + const message = createBaseQueryUnbondingRecordsRequest(); + message.includeArchived = object.includeArchived ?? false; + return message; + }, + fromProtoMsg( + message: QueryUnbondingRecordsRequestProtoMsg, + ): QueryUnbondingRecordsRequest { + return QueryUnbondingRecordsRequest.decode(message.value); + }, + toProto(message: QueryUnbondingRecordsRequest): Uint8Array { + return QueryUnbondingRecordsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryUnbondingRecordsRequest, + ): QueryUnbondingRecordsRequestProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryUnbondingRecordsRequest', + value: QueryUnbondingRecordsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryUnbondingRecordsResponse(): QueryUnbondingRecordsResponse { + return { + unbondingRecords: [], + }; +} +export const QueryUnbondingRecordsResponse = { + typeUrl: '/stride.stakedym.QueryUnbondingRecordsResponse', + encode( + message: QueryUnbondingRecordsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.unbondingRecords) { + UnbondingRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryUnbondingRecordsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryUnbondingRecordsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.unbondingRecords.push( + UnbondingRecord.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryUnbondingRecordsResponse { + return { + unbondingRecords: Array.isArray(object?.unbondingRecords) + ? object.unbondingRecords.map((e: any) => UnbondingRecord.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryUnbondingRecordsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.unbondingRecords) { + obj.unbondingRecords = message.unbondingRecords.map(e => + e ? UnbondingRecord.toJSON(e) : undefined, + ); + } else { + obj.unbondingRecords = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryUnbondingRecordsResponse { + const message = createBaseQueryUnbondingRecordsResponse(); + message.unbondingRecords = + object.unbondingRecords?.map(e => UnbondingRecord.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryUnbondingRecordsResponseProtoMsg, + ): QueryUnbondingRecordsResponse { + return QueryUnbondingRecordsResponse.decode(message.value); + }, + toProto(message: QueryUnbondingRecordsResponse): Uint8Array { + return QueryUnbondingRecordsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryUnbondingRecordsResponse, + ): QueryUnbondingRecordsResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryUnbondingRecordsResponse', + value: QueryUnbondingRecordsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryRedemptionRecordRequest(): QueryRedemptionRecordRequest { + return { + unbondingRecordId: BigInt(0), + address: '', + }; +} +export const QueryRedemptionRecordRequest = { + typeUrl: '/stride.stakedym.QueryRedemptionRecordRequest', + encode( + message: QueryRedemptionRecordRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.unbondingRecordId !== BigInt(0)) { + writer.uint32(8).uint64(message.unbondingRecordId); + } + if (message.address !== '') { + writer.uint32(18).string(message.address); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRedemptionRecordRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRedemptionRecordRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.unbondingRecordId = reader.uint64(); + break; + case 2: + message.address = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRedemptionRecordRequest { + return { + unbondingRecordId: isSet(object.unbondingRecordId) + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0), + address: isSet(object.address) ? String(object.address) : '', + }; + }, + toJSON( + message: QueryRedemptionRecordRequest, + ): JsonSafe { + const obj: any = {}; + message.unbondingRecordId !== undefined && + (obj.unbondingRecordId = ( + message.unbondingRecordId || BigInt(0) + ).toString()); + message.address !== undefined && (obj.address = message.address); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRedemptionRecordRequest { + const message = createBaseQueryRedemptionRecordRequest(); + message.unbondingRecordId = + object.unbondingRecordId !== undefined && + object.unbondingRecordId !== null + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0); + message.address = object.address ?? ''; + return message; + }, + fromProtoMsg( + message: QueryRedemptionRecordRequestProtoMsg, + ): QueryRedemptionRecordRequest { + return QueryRedemptionRecordRequest.decode(message.value); + }, + toProto(message: QueryRedemptionRecordRequest): Uint8Array { + return QueryRedemptionRecordRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryRedemptionRecordRequest, + ): QueryRedemptionRecordRequestProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryRedemptionRecordRequest', + value: QueryRedemptionRecordRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryRedemptionRecordResponse(): QueryRedemptionRecordResponse { + return { + redemptionRecordResponse: undefined, + }; +} +export const QueryRedemptionRecordResponse = { + typeUrl: '/stride.stakedym.QueryRedemptionRecordResponse', + encode( + message: QueryRedemptionRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.redemptionRecordResponse !== undefined) { + RedemptionRecordResponse.encode( + message.redemptionRecordResponse, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRedemptionRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRedemptionRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.redemptionRecordResponse = RedemptionRecordResponse.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRedemptionRecordResponse { + return { + redemptionRecordResponse: isSet(object.redemptionRecordResponse) + ? RedemptionRecordResponse.fromJSON(object.redemptionRecordResponse) + : undefined, + }; + }, + toJSON( + message: QueryRedemptionRecordResponse, + ): JsonSafe { + const obj: any = {}; + message.redemptionRecordResponse !== undefined && + (obj.redemptionRecordResponse = message.redemptionRecordResponse + ? RedemptionRecordResponse.toJSON(message.redemptionRecordResponse) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRedemptionRecordResponse { + const message = createBaseQueryRedemptionRecordResponse(); + message.redemptionRecordResponse = + object.redemptionRecordResponse !== undefined && + object.redemptionRecordResponse !== null + ? RedemptionRecordResponse.fromPartial(object.redemptionRecordResponse) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRedemptionRecordResponseProtoMsg, + ): QueryRedemptionRecordResponse { + return QueryRedemptionRecordResponse.decode(message.value); + }, + toProto(message: QueryRedemptionRecordResponse): Uint8Array { + return QueryRedemptionRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryRedemptionRecordResponse, + ): QueryRedemptionRecordResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryRedemptionRecordResponse', + value: QueryRedemptionRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryRedemptionRecordsRequest(): QueryRedemptionRecordsRequest { + return { + address: '', + unbondingRecordId: BigInt(0), + pagination: undefined, + }; +} +export const QueryRedemptionRecordsRequest = { + typeUrl: '/stride.stakedym.QueryRedemptionRecordsRequest', + encode( + message: QueryRedemptionRecordsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.address !== '') { + writer.uint32(10).string(message.address); + } + if (message.unbondingRecordId !== BigInt(0)) { + writer.uint32(16).uint64(message.unbondingRecordId); + } + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRedemptionRecordsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRedemptionRecordsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.unbondingRecordId = reader.uint64(); + break; + case 3: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRedemptionRecordsRequest { + return { + address: isSet(object.address) ? String(object.address) : '', + unbondingRecordId: isSet(object.unbondingRecordId) + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0), + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryRedemptionRecordsRequest, + ): JsonSafe { + const obj: any = {}; + message.address !== undefined && (obj.address = message.address); + message.unbondingRecordId !== undefined && + (obj.unbondingRecordId = ( + message.unbondingRecordId || BigInt(0) + ).toString()); + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRedemptionRecordsRequest { + const message = createBaseQueryRedemptionRecordsRequest(); + message.address = object.address ?? ''; + message.unbondingRecordId = + object.unbondingRecordId !== undefined && + object.unbondingRecordId !== null + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRedemptionRecordsRequestProtoMsg, + ): QueryRedemptionRecordsRequest { + return QueryRedemptionRecordsRequest.decode(message.value); + }, + toProto(message: QueryRedemptionRecordsRequest): Uint8Array { + return QueryRedemptionRecordsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryRedemptionRecordsRequest, + ): QueryRedemptionRecordsRequestProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryRedemptionRecordsRequest', + value: QueryRedemptionRecordsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryRedemptionRecordsResponse(): QueryRedemptionRecordsResponse { + return { + redemptionRecordResponses: [], + pagination: undefined, + }; +} +export const QueryRedemptionRecordsResponse = { + typeUrl: '/stride.stakedym.QueryRedemptionRecordsResponse', + encode( + message: QueryRedemptionRecordsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.redemptionRecordResponses) { + RedemptionRecordResponse.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRedemptionRecordsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRedemptionRecordsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.redemptionRecordResponses.push( + RedemptionRecordResponse.decode(reader, reader.uint32()), + ); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRedemptionRecordsResponse { + return { + redemptionRecordResponses: Array.isArray( + object?.redemptionRecordResponses, + ) + ? object.redemptionRecordResponses.map((e: any) => + RedemptionRecordResponse.fromJSON(e), + ) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryRedemptionRecordsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.redemptionRecordResponses) { + obj.redemptionRecordResponses = message.redemptionRecordResponses.map( + e => (e ? RedemptionRecordResponse.toJSON(e) : undefined), + ); + } else { + obj.redemptionRecordResponses = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRedemptionRecordsResponse { + const message = createBaseQueryRedemptionRecordsResponse(); + message.redemptionRecordResponses = + object.redemptionRecordResponses?.map(e => + RedemptionRecordResponse.fromPartial(e), + ) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRedemptionRecordsResponseProtoMsg, + ): QueryRedemptionRecordsResponse { + return QueryRedemptionRecordsResponse.decode(message.value); + }, + toProto(message: QueryRedemptionRecordsResponse): Uint8Array { + return QueryRedemptionRecordsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryRedemptionRecordsResponse, + ): QueryRedemptionRecordsResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.QueryRedemptionRecordsResponse', + value: QueryRedemptionRecordsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQuerySlashRecordsRequest(): QuerySlashRecordsRequest { + return {}; +} +export const QuerySlashRecordsRequest = { + typeUrl: '/stride.stakedym.QuerySlashRecordsRequest', + encode( + _: QuerySlashRecordsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QuerySlashRecordsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQuerySlashRecordsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QuerySlashRecordsRequest { + return {}; + }, + toJSON(_: QuerySlashRecordsRequest): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QuerySlashRecordsRequest { + const message = createBaseQuerySlashRecordsRequest(); + return message; + }, + fromProtoMsg( + message: QuerySlashRecordsRequestProtoMsg, + ): QuerySlashRecordsRequest { + return QuerySlashRecordsRequest.decode(message.value); + }, + toProto(message: QuerySlashRecordsRequest): Uint8Array { + return QuerySlashRecordsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QuerySlashRecordsRequest, + ): QuerySlashRecordsRequestProtoMsg { + return { + typeUrl: '/stride.stakedym.QuerySlashRecordsRequest', + value: QuerySlashRecordsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQuerySlashRecordsResponse(): QuerySlashRecordsResponse { + return { + slashRecords: [], + }; +} +export const QuerySlashRecordsResponse = { + typeUrl: '/stride.stakedym.QuerySlashRecordsResponse', + encode( + message: QuerySlashRecordsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.slashRecords) { + SlashRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QuerySlashRecordsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQuerySlashRecordsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.slashRecords.push( + SlashRecord.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QuerySlashRecordsResponse { + return { + slashRecords: Array.isArray(object?.slashRecords) + ? object.slashRecords.map((e: any) => SlashRecord.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QuerySlashRecordsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.slashRecords) { + obj.slashRecords = message.slashRecords.map(e => + e ? SlashRecord.toJSON(e) : undefined, + ); + } else { + obj.slashRecords = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QuerySlashRecordsResponse { + const message = createBaseQuerySlashRecordsResponse(); + message.slashRecords = + object.slashRecords?.map(e => SlashRecord.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QuerySlashRecordsResponseProtoMsg, + ): QuerySlashRecordsResponse { + return QuerySlashRecordsResponse.decode(message.value); + }, + toProto(message: QuerySlashRecordsResponse): Uint8Array { + return QuerySlashRecordsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QuerySlashRecordsResponse, + ): QuerySlashRecordsResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.QuerySlashRecordsResponse', + value: QuerySlashRecordsResponse.encode(message).finish(), + }; + }, +}; +function createBaseRedemptionRecordResponse(): RedemptionRecordResponse { + return { + redemptionRecord: undefined, + unbondingCompletionTimeSeconds: BigInt(0), + }; +} +export const RedemptionRecordResponse = { + typeUrl: '/stride.stakedym.RedemptionRecordResponse', + encode( + message: RedemptionRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.redemptionRecord !== undefined) { + RedemptionRecord.encode( + message.redemptionRecord, + writer.uint32(10).fork(), + ).ldelim(); + } + if (message.unbondingCompletionTimeSeconds !== BigInt(0)) { + writer.uint32(16).uint64(message.unbondingCompletionTimeSeconds); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): RedemptionRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRedemptionRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.redemptionRecord = RedemptionRecord.decode( + reader, + reader.uint32(), + ); + break; + case 2: + message.unbondingCompletionTimeSeconds = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RedemptionRecordResponse { + return { + redemptionRecord: isSet(object.redemptionRecord) + ? RedemptionRecord.fromJSON(object.redemptionRecord) + : undefined, + unbondingCompletionTimeSeconds: isSet( + object.unbondingCompletionTimeSeconds, + ) + ? BigInt(object.unbondingCompletionTimeSeconds.toString()) + : BigInt(0), + }; + }, + toJSON( + message: RedemptionRecordResponse, + ): JsonSafe { + const obj: any = {}; + message.redemptionRecord !== undefined && + (obj.redemptionRecord = message.redemptionRecord + ? RedemptionRecord.toJSON(message.redemptionRecord) + : undefined); + message.unbondingCompletionTimeSeconds !== undefined && + (obj.unbondingCompletionTimeSeconds = ( + message.unbondingCompletionTimeSeconds || BigInt(0) + ).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): RedemptionRecordResponse { + const message = createBaseRedemptionRecordResponse(); + message.redemptionRecord = + object.redemptionRecord !== undefined && object.redemptionRecord !== null + ? RedemptionRecord.fromPartial(object.redemptionRecord) + : undefined; + message.unbondingCompletionTimeSeconds = + object.unbondingCompletionTimeSeconds !== undefined && + object.unbondingCompletionTimeSeconds !== null + ? BigInt(object.unbondingCompletionTimeSeconds.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: RedemptionRecordResponseProtoMsg, + ): RedemptionRecordResponse { + return RedemptionRecordResponse.decode(message.value); + }, + toProto(message: RedemptionRecordResponse): Uint8Array { + return RedemptionRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: RedemptionRecordResponse, + ): RedemptionRecordResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.RedemptionRecordResponse', + value: RedemptionRecordResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakedym/stakedym.ts b/packages/cosmic-proto/src/codegen/stride/stakedym/stakedym.ts new file mode 100644 index 00000000000..44e448d77e1 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakedym/stakedym.ts @@ -0,0 +1,1144 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { Decimal, isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** + * Status fields for a delegation record + * Note: There is an important assumption here that tokens in the deposit + * account should not be tracked by these records. The record is created as soon + * as the tokens leave stride + * Additionally, the GetActiveDelegationRecords query filters for records that + * are either TRANSFER_IN_PROGERSS or DELEGATION_QUEUE. If a new active status + * is added, the keeper must be modified + */ +export enum DelegationRecordStatus { + /** + * TRANSFER_IN_PROGRESS - TRANSFER_IN_PROGRESS indicates the native tokens are being sent from the + * deposit account to the delegation account + */ + TRANSFER_IN_PROGRESS = 0, + /** + * TRANSFER_FAILED - TRANSFER_FAILED indicates that the transfer either timed out or was an ack + * failure + */ + TRANSFER_FAILED = 1, + /** + * DELEGATION_QUEUE - DELEGATION_QUEUE indicates the tokens have landed on the host zone and are + * ready to be delegated + */ + DELEGATION_QUEUE = 2, + /** DELEGATION_COMPLETE - DELEGATION_COMPLETE indicates the delegation has been completed */ + DELEGATION_COMPLETE = 3, + UNRECOGNIZED = -1, +} +export const DelegationRecordStatusSDKType = DelegationRecordStatus; +export function delegationRecordStatusFromJSON( + object: any, +): DelegationRecordStatus { + switch (object) { + case 0: + case 'TRANSFER_IN_PROGRESS': + return DelegationRecordStatus.TRANSFER_IN_PROGRESS; + case 1: + case 'TRANSFER_FAILED': + return DelegationRecordStatus.TRANSFER_FAILED; + case 2: + case 'DELEGATION_QUEUE': + return DelegationRecordStatus.DELEGATION_QUEUE; + case 3: + case 'DELEGATION_COMPLETE': + return DelegationRecordStatus.DELEGATION_COMPLETE; + case -1: + case 'UNRECOGNIZED': + default: + return DelegationRecordStatus.UNRECOGNIZED; + } +} +export function delegationRecordStatusToJSON( + object: DelegationRecordStatus, +): string { + switch (object) { + case DelegationRecordStatus.TRANSFER_IN_PROGRESS: + return 'TRANSFER_IN_PROGRESS'; + case DelegationRecordStatus.TRANSFER_FAILED: + return 'TRANSFER_FAILED'; + case DelegationRecordStatus.DELEGATION_QUEUE: + return 'DELEGATION_QUEUE'; + case DelegationRecordStatus.DELEGATION_COMPLETE: + return 'DELEGATION_COMPLETE'; + case DelegationRecordStatus.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +/** Status fields for an unbonding record */ +export enum UnbondingRecordStatus { + /** + * ACCUMULATING_REDEMPTIONS - ACCUMULATING_REDEMPTIONS indicates redemptions are still being accumulated + * on this record + */ + ACCUMULATING_REDEMPTIONS = 0, + /** + * UNBONDING_QUEUE - UNBONDING_QUEUE indicates the unbond amount for this epoch has been froze + * and the tokens are ready to be unbonded on the host zone + */ + UNBONDING_QUEUE = 1, + /** + * UNBONDING_IN_PROGRESS - UNBONDING_IN_PROGRESS indicates the unbonding is currently in progress on + * the host zone + */ + UNBONDING_IN_PROGRESS = 2, + /** + * UNBONDED - UNBONDED indicates the unbonding is finished on the host zone and the + * tokens are still in the delegation account + */ + UNBONDED = 3, + /** + * CLAIMABLE - CLAIMABLE indicates the unbonded tokens have been swept to stride and are + * ready to be distributed to users + */ + CLAIMABLE = 4, + /** CLAIMED - CLAIMED indicates the full unbonding cycle has been completed */ + CLAIMED = 5, + UNRECOGNIZED = -1, +} +export const UnbondingRecordStatusSDKType = UnbondingRecordStatus; +export function unbondingRecordStatusFromJSON( + object: any, +): UnbondingRecordStatus { + switch (object) { + case 0: + case 'ACCUMULATING_REDEMPTIONS': + return UnbondingRecordStatus.ACCUMULATING_REDEMPTIONS; + case 1: + case 'UNBONDING_QUEUE': + return UnbondingRecordStatus.UNBONDING_QUEUE; + case 2: + case 'UNBONDING_IN_PROGRESS': + return UnbondingRecordStatus.UNBONDING_IN_PROGRESS; + case 3: + case 'UNBONDED': + return UnbondingRecordStatus.UNBONDED; + case 4: + case 'CLAIMABLE': + return UnbondingRecordStatus.CLAIMABLE; + case 5: + case 'CLAIMED': + return UnbondingRecordStatus.CLAIMED; + case -1: + case 'UNRECOGNIZED': + default: + return UnbondingRecordStatus.UNRECOGNIZED; + } +} +export function unbondingRecordStatusToJSON( + object: UnbondingRecordStatus, +): string { + switch (object) { + case UnbondingRecordStatus.ACCUMULATING_REDEMPTIONS: + return 'ACCUMULATING_REDEMPTIONS'; + case UnbondingRecordStatus.UNBONDING_QUEUE: + return 'UNBONDING_QUEUE'; + case UnbondingRecordStatus.UNBONDING_IN_PROGRESS: + return 'UNBONDING_IN_PROGRESS'; + case UnbondingRecordStatus.UNBONDED: + return 'UNBONDED'; + case UnbondingRecordStatus.CLAIMABLE: + return 'CLAIMABLE'; + case UnbondingRecordStatus.CLAIMED: + return 'CLAIMED'; + case UnbondingRecordStatus.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +export interface HostZone { + /** Chain ID */ + chainId: string; + /** Native token denom on the host zone (e.g. adym) */ + nativeTokenDenom: string; + /** IBC denom of the native token as it lives on stride (e.g. ibc/...) */ + nativeTokenIbcDenom: string; + /** Transfer channel ID from stride to the host zone */ + transferChannelId: string; + /** Operator controlled delegation address on the host zone */ + delegationAddress: string; + /** Operator controlled reward address on the host zone */ + rewardAddress: string; + /** Deposit address on stride */ + depositAddress: string; + /** Redemption address on stride */ + redemptionAddress: string; + /** Claim address on stride */ + claimAddress: string; + /** operator address set by safe, on stride */ + operatorAddressOnStride: string; + /** admin address set upon host zone creation, on stride */ + safeAddressOnStride: string; + /** Previous redemption rate */ + lastRedemptionRate: string; + /** Current redemption rate */ + redemptionRate: string; + /** Min outer redemption rate - adjusted by governance */ + minRedemptionRate: string; + /** Max outer redemption rate - adjusted by governance */ + maxRedemptionRate: string; + /** Min inner redemption rate - adjusted by controller */ + minInnerRedemptionRate: string; + /** Max inner redemption rate - adjusted by controller */ + maxInnerRedemptionRate: string; + /** Total delegated balance on the host zone delegation account */ + delegatedBalance: string; + /** The undelegation period for Dymension in days */ + unbondingPeriodSeconds: bigint; + /** Indicates whether the host zone has been halted */ + halted: boolean; +} +export interface HostZoneProtoMsg { + typeUrl: '/stride.stakedym.HostZone'; + value: Uint8Array; +} +export interface HostZoneSDKType { + chain_id: string; + native_token_denom: string; + native_token_ibc_denom: string; + transfer_channel_id: string; + delegation_address: string; + reward_address: string; + deposit_address: string; + redemption_address: string; + claim_address: string; + operator_address_on_stride: string; + safe_address_on_stride: string; + last_redemption_rate: string; + redemption_rate: string; + min_redemption_rate: string; + max_redemption_rate: string; + min_inner_redemption_rate: string; + max_inner_redemption_rate: string; + delegated_balance: string; + unbonding_period_seconds: bigint; + halted: boolean; +} +/** + * DelegationRecords track the aggregate liquid stakes and delegations + * for a given epoch + * Note: There is an important assumption here that tokens in the deposit + * account should not be tracked by these records. The record is created as soon + * as the tokens leave stride + */ +export interface DelegationRecord { + /** Deposit record unique ID */ + id: bigint; + /** The amount of native tokens that should be delegated */ + nativeAmount: string; + /** The status indicating the point in the delegation's lifecycle */ + status: DelegationRecordStatus; + /** The tx hash of the delegation on the host zone */ + txHash: string; +} +export interface DelegationRecordProtoMsg { + typeUrl: '/stride.stakedym.DelegationRecord'; + value: Uint8Array; +} +/** + * DelegationRecords track the aggregate liquid stakes and delegations + * for a given epoch + * Note: There is an important assumption here that tokens in the deposit + * account should not be tracked by these records. The record is created as soon + * as the tokens leave stride + */ +export interface DelegationRecordSDKType { + id: bigint; + native_amount: string; + status: DelegationRecordStatus; + tx_hash: string; +} +/** UnbondingRecords track the aggregate unbondings across an epoch */ +export interface UnbondingRecord { + /** Unbonding record ID */ + id: bigint; + /** The status indicating the point in the delegation's lifecycle */ + status: UnbondingRecordStatus; + /** The amount of stTokens that were redeemed */ + stTokenAmount: string; + /** The corresponding amount of native tokens that should be unbonded */ + nativeAmount: string; + /** The Unix timestamp (in seconds) at which the unbonding completes */ + unbondingCompletionTimeSeconds: bigint; + /** The tx hash of the undelegation on the host zone */ + undelegationTxHash: string; + /** The tx hash of the unbonded token sweep on the host zone */ + unbondedTokenSweepTxHash: string; +} +export interface UnbondingRecordProtoMsg { + typeUrl: '/stride.stakedym.UnbondingRecord'; + value: Uint8Array; +} +/** UnbondingRecords track the aggregate unbondings across an epoch */ +export interface UnbondingRecordSDKType { + id: bigint; + status: UnbondingRecordStatus; + st_token_amount: string; + native_amount: string; + unbonding_completion_time_seconds: bigint; + undelegation_tx_hash: string; + unbonded_token_sweep_tx_hash: string; +} +/** RedemptionRecords track an individual user's redemption claims */ +export interface RedemptionRecord { + /** Unbonding record ID */ + unbondingRecordId: bigint; + /** Redeemer */ + redeemer: string; + /** The amount of stTokens that were redeemed */ + stTokenAmount: string; + /** The corresponding amount of native tokens that should be unbonded */ + nativeAmount: string; +} +export interface RedemptionRecordProtoMsg { + typeUrl: '/stride.stakedym.RedemptionRecord'; + value: Uint8Array; +} +/** RedemptionRecords track an individual user's redemption claims */ +export interface RedemptionRecordSDKType { + unbonding_record_id: bigint; + redeemer: string; + st_token_amount: string; + native_amount: string; +} +/** SlashRecords log adjustments to the delegated balance */ +export interface SlashRecord { + /** The slash record monotonically increasing ID */ + id: bigint; + /** + * The Unix timestamp (in seconds) when the slash adjustment was processed on + * stride + */ + time: bigint; + /** The delta by which the total delegated amount changed from slash */ + nativeAmount: string; + /** The address (or addresses) of the validator that was slashed */ + validatorAddress: string; +} +export interface SlashRecordProtoMsg { + typeUrl: '/stride.stakedym.SlashRecord'; + value: Uint8Array; +} +/** SlashRecords log adjustments to the delegated balance */ +export interface SlashRecordSDKType { + id: bigint; + time: bigint; + native_amount: string; + validator_address: string; +} +function createBaseHostZone(): HostZone { + return { + chainId: '', + nativeTokenDenom: '', + nativeTokenIbcDenom: '', + transferChannelId: '', + delegationAddress: '', + rewardAddress: '', + depositAddress: '', + redemptionAddress: '', + claimAddress: '', + operatorAddressOnStride: '', + safeAddressOnStride: '', + lastRedemptionRate: '', + redemptionRate: '', + minRedemptionRate: '', + maxRedemptionRate: '', + minInnerRedemptionRate: '', + maxInnerRedemptionRate: '', + delegatedBalance: '', + unbondingPeriodSeconds: BigInt(0), + halted: false, + }; +} +export const HostZone = { + typeUrl: '/stride.stakedym.HostZone', + encode( + message: HostZone, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + if (message.nativeTokenDenom !== '') { + writer.uint32(18).string(message.nativeTokenDenom); + } + if (message.nativeTokenIbcDenom !== '') { + writer.uint32(26).string(message.nativeTokenIbcDenom); + } + if (message.transferChannelId !== '') { + writer.uint32(34).string(message.transferChannelId); + } + if (message.delegationAddress !== '') { + writer.uint32(42).string(message.delegationAddress); + } + if (message.rewardAddress !== '') { + writer.uint32(50).string(message.rewardAddress); + } + if (message.depositAddress !== '') { + writer.uint32(58).string(message.depositAddress); + } + if (message.redemptionAddress !== '') { + writer.uint32(66).string(message.redemptionAddress); + } + if (message.claimAddress !== '') { + writer.uint32(74).string(message.claimAddress); + } + if (message.operatorAddressOnStride !== '') { + writer.uint32(82).string(message.operatorAddressOnStride); + } + if (message.safeAddressOnStride !== '') { + writer.uint32(90).string(message.safeAddressOnStride); + } + if (message.lastRedemptionRate !== '') { + writer + .uint32(98) + .string(Decimal.fromUserInput(message.lastRedemptionRate, 18).atomics); + } + if (message.redemptionRate !== '') { + writer + .uint32(106) + .string(Decimal.fromUserInput(message.redemptionRate, 18).atomics); + } + if (message.minRedemptionRate !== '') { + writer + .uint32(114) + .string(Decimal.fromUserInput(message.minRedemptionRate, 18).atomics); + } + if (message.maxRedemptionRate !== '') { + writer + .uint32(122) + .string(Decimal.fromUserInput(message.maxRedemptionRate, 18).atomics); + } + if (message.minInnerRedemptionRate !== '') { + writer + .uint32(130) + .string( + Decimal.fromUserInput(message.minInnerRedemptionRate, 18).atomics, + ); + } + if (message.maxInnerRedemptionRate !== '') { + writer + .uint32(138) + .string( + Decimal.fromUserInput(message.maxInnerRedemptionRate, 18).atomics, + ); + } + if (message.delegatedBalance !== '') { + writer.uint32(146).string(message.delegatedBalance); + } + if (message.unbondingPeriodSeconds !== BigInt(0)) { + writer.uint32(152).uint64(message.unbondingPeriodSeconds); + } + if (message.halted === true) { + writer.uint32(160).bool(message.halted); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): HostZone { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseHostZone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + case 2: + message.nativeTokenDenom = reader.string(); + break; + case 3: + message.nativeTokenIbcDenom = reader.string(); + break; + case 4: + message.transferChannelId = reader.string(); + break; + case 5: + message.delegationAddress = reader.string(); + break; + case 6: + message.rewardAddress = reader.string(); + break; + case 7: + message.depositAddress = reader.string(); + break; + case 8: + message.redemptionAddress = reader.string(); + break; + case 9: + message.claimAddress = reader.string(); + break; + case 10: + message.operatorAddressOnStride = reader.string(); + break; + case 11: + message.safeAddressOnStride = reader.string(); + break; + case 12: + message.lastRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 13: + message.redemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 14: + message.minRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 15: + message.maxRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 16: + message.minInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 17: + message.maxInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 18: + message.delegatedBalance = reader.string(); + break; + case 19: + message.unbondingPeriodSeconds = reader.uint64(); + break; + case 20: + message.halted = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): HostZone { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + nativeTokenDenom: isSet(object.nativeTokenDenom) + ? String(object.nativeTokenDenom) + : '', + nativeTokenIbcDenom: isSet(object.nativeTokenIbcDenom) + ? String(object.nativeTokenIbcDenom) + : '', + transferChannelId: isSet(object.transferChannelId) + ? String(object.transferChannelId) + : '', + delegationAddress: isSet(object.delegationAddress) + ? String(object.delegationAddress) + : '', + rewardAddress: isSet(object.rewardAddress) + ? String(object.rewardAddress) + : '', + depositAddress: isSet(object.depositAddress) + ? String(object.depositAddress) + : '', + redemptionAddress: isSet(object.redemptionAddress) + ? String(object.redemptionAddress) + : '', + claimAddress: isSet(object.claimAddress) + ? String(object.claimAddress) + : '', + operatorAddressOnStride: isSet(object.operatorAddressOnStride) + ? String(object.operatorAddressOnStride) + : '', + safeAddressOnStride: isSet(object.safeAddressOnStride) + ? String(object.safeAddressOnStride) + : '', + lastRedemptionRate: isSet(object.lastRedemptionRate) + ? String(object.lastRedemptionRate) + : '', + redemptionRate: isSet(object.redemptionRate) + ? String(object.redemptionRate) + : '', + minRedemptionRate: isSet(object.minRedemptionRate) + ? String(object.minRedemptionRate) + : '', + maxRedemptionRate: isSet(object.maxRedemptionRate) + ? String(object.maxRedemptionRate) + : '', + minInnerRedemptionRate: isSet(object.minInnerRedemptionRate) + ? String(object.minInnerRedemptionRate) + : '', + maxInnerRedemptionRate: isSet(object.maxInnerRedemptionRate) + ? String(object.maxInnerRedemptionRate) + : '', + delegatedBalance: isSet(object.delegatedBalance) + ? String(object.delegatedBalance) + : '', + unbondingPeriodSeconds: isSet(object.unbondingPeriodSeconds) + ? BigInt(object.unbondingPeriodSeconds.toString()) + : BigInt(0), + halted: isSet(object.halted) ? Boolean(object.halted) : false, + }; + }, + toJSON(message: HostZone): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + message.nativeTokenDenom !== undefined && + (obj.nativeTokenDenom = message.nativeTokenDenom); + message.nativeTokenIbcDenom !== undefined && + (obj.nativeTokenIbcDenom = message.nativeTokenIbcDenom); + message.transferChannelId !== undefined && + (obj.transferChannelId = message.transferChannelId); + message.delegationAddress !== undefined && + (obj.delegationAddress = message.delegationAddress); + message.rewardAddress !== undefined && + (obj.rewardAddress = message.rewardAddress); + message.depositAddress !== undefined && + (obj.depositAddress = message.depositAddress); + message.redemptionAddress !== undefined && + (obj.redemptionAddress = message.redemptionAddress); + message.claimAddress !== undefined && + (obj.claimAddress = message.claimAddress); + message.operatorAddressOnStride !== undefined && + (obj.operatorAddressOnStride = message.operatorAddressOnStride); + message.safeAddressOnStride !== undefined && + (obj.safeAddressOnStride = message.safeAddressOnStride); + message.lastRedemptionRate !== undefined && + (obj.lastRedemptionRate = message.lastRedemptionRate); + message.redemptionRate !== undefined && + (obj.redemptionRate = message.redemptionRate); + message.minRedemptionRate !== undefined && + (obj.minRedemptionRate = message.minRedemptionRate); + message.maxRedemptionRate !== undefined && + (obj.maxRedemptionRate = message.maxRedemptionRate); + message.minInnerRedemptionRate !== undefined && + (obj.minInnerRedemptionRate = message.minInnerRedemptionRate); + message.maxInnerRedemptionRate !== undefined && + (obj.maxInnerRedemptionRate = message.maxInnerRedemptionRate); + message.delegatedBalance !== undefined && + (obj.delegatedBalance = message.delegatedBalance); + message.unbondingPeriodSeconds !== undefined && + (obj.unbondingPeriodSeconds = ( + message.unbondingPeriodSeconds || BigInt(0) + ).toString()); + message.halted !== undefined && (obj.halted = message.halted); + return obj; + }, + fromPartial(object: Partial): HostZone { + const message = createBaseHostZone(); + message.chainId = object.chainId ?? ''; + message.nativeTokenDenom = object.nativeTokenDenom ?? ''; + message.nativeTokenIbcDenom = object.nativeTokenIbcDenom ?? ''; + message.transferChannelId = object.transferChannelId ?? ''; + message.delegationAddress = object.delegationAddress ?? ''; + message.rewardAddress = object.rewardAddress ?? ''; + message.depositAddress = object.depositAddress ?? ''; + message.redemptionAddress = object.redemptionAddress ?? ''; + message.claimAddress = object.claimAddress ?? ''; + message.operatorAddressOnStride = object.operatorAddressOnStride ?? ''; + message.safeAddressOnStride = object.safeAddressOnStride ?? ''; + message.lastRedemptionRate = object.lastRedemptionRate ?? ''; + message.redemptionRate = object.redemptionRate ?? ''; + message.minRedemptionRate = object.minRedemptionRate ?? ''; + message.maxRedemptionRate = object.maxRedemptionRate ?? ''; + message.minInnerRedemptionRate = object.minInnerRedemptionRate ?? ''; + message.maxInnerRedemptionRate = object.maxInnerRedemptionRate ?? ''; + message.delegatedBalance = object.delegatedBalance ?? ''; + message.unbondingPeriodSeconds = + object.unbondingPeriodSeconds !== undefined && + object.unbondingPeriodSeconds !== null + ? BigInt(object.unbondingPeriodSeconds.toString()) + : BigInt(0); + message.halted = object.halted ?? false; + return message; + }, + fromProtoMsg(message: HostZoneProtoMsg): HostZone { + return HostZone.decode(message.value); + }, + toProto(message: HostZone): Uint8Array { + return HostZone.encode(message).finish(); + }, + toProtoMsg(message: HostZone): HostZoneProtoMsg { + return { + typeUrl: '/stride.stakedym.HostZone', + value: HostZone.encode(message).finish(), + }; + }, +}; +function createBaseDelegationRecord(): DelegationRecord { + return { + id: BigInt(0), + nativeAmount: '', + status: 0, + txHash: '', + }; +} +export const DelegationRecord = { + typeUrl: '/stride.stakedym.DelegationRecord', + encode( + message: DelegationRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== BigInt(0)) { + writer.uint32(8).uint64(message.id); + } + if (message.nativeAmount !== '') { + writer.uint32(18).string(message.nativeAmount); + } + if (message.status !== 0) { + writer.uint32(24).int32(message.status); + } + if (message.txHash !== '') { + writer.uint32(34).string(message.txHash); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): DelegationRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDelegationRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.uint64(); + break; + case 2: + message.nativeAmount = reader.string(); + break; + case 3: + message.status = reader.int32() as any; + break; + case 4: + message.txHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): DelegationRecord { + return { + id: isSet(object.id) ? BigInt(object.id.toString()) : BigInt(0), + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + status: isSet(object.status) + ? delegationRecordStatusFromJSON(object.status) + : -1, + txHash: isSet(object.txHash) ? String(object.txHash) : '', + }; + }, + toJSON(message: DelegationRecord): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = (message.id || BigInt(0)).toString()); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + message.status !== undefined && + (obj.status = delegationRecordStatusToJSON(message.status)); + message.txHash !== undefined && (obj.txHash = message.txHash); + return obj; + }, + fromPartial(object: Partial): DelegationRecord { + const message = createBaseDelegationRecord(); + message.id = + object.id !== undefined && object.id !== null + ? BigInt(object.id.toString()) + : BigInt(0); + message.nativeAmount = object.nativeAmount ?? ''; + message.status = object.status ?? 0; + message.txHash = object.txHash ?? ''; + return message; + }, + fromProtoMsg(message: DelegationRecordProtoMsg): DelegationRecord { + return DelegationRecord.decode(message.value); + }, + toProto(message: DelegationRecord): Uint8Array { + return DelegationRecord.encode(message).finish(); + }, + toProtoMsg(message: DelegationRecord): DelegationRecordProtoMsg { + return { + typeUrl: '/stride.stakedym.DelegationRecord', + value: DelegationRecord.encode(message).finish(), + }; + }, +}; +function createBaseUnbondingRecord(): UnbondingRecord { + return { + id: BigInt(0), + status: 0, + stTokenAmount: '', + nativeAmount: '', + unbondingCompletionTimeSeconds: BigInt(0), + undelegationTxHash: '', + unbondedTokenSweepTxHash: '', + }; +} +export const UnbondingRecord = { + typeUrl: '/stride.stakedym.UnbondingRecord', + encode( + message: UnbondingRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== BigInt(0)) { + writer.uint32(8).uint64(message.id); + } + if (message.status !== 0) { + writer.uint32(16).int32(message.status); + } + if (message.stTokenAmount !== '') { + writer.uint32(26).string(message.stTokenAmount); + } + if (message.nativeAmount !== '') { + writer.uint32(34).string(message.nativeAmount); + } + if (message.unbondingCompletionTimeSeconds !== BigInt(0)) { + writer.uint32(40).uint64(message.unbondingCompletionTimeSeconds); + } + if (message.undelegationTxHash !== '') { + writer.uint32(50).string(message.undelegationTxHash); + } + if (message.unbondedTokenSweepTxHash !== '') { + writer.uint32(58).string(message.unbondedTokenSweepTxHash); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): UnbondingRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUnbondingRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.uint64(); + break; + case 2: + message.status = reader.int32() as any; + break; + case 3: + message.stTokenAmount = reader.string(); + break; + case 4: + message.nativeAmount = reader.string(); + break; + case 5: + message.unbondingCompletionTimeSeconds = reader.uint64(); + break; + case 6: + message.undelegationTxHash = reader.string(); + break; + case 7: + message.unbondedTokenSweepTxHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): UnbondingRecord { + return { + id: isSet(object.id) ? BigInt(object.id.toString()) : BigInt(0), + status: isSet(object.status) + ? unbondingRecordStatusFromJSON(object.status) + : -1, + stTokenAmount: isSet(object.stTokenAmount) + ? String(object.stTokenAmount) + : '', + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + unbondingCompletionTimeSeconds: isSet( + object.unbondingCompletionTimeSeconds, + ) + ? BigInt(object.unbondingCompletionTimeSeconds.toString()) + : BigInt(0), + undelegationTxHash: isSet(object.undelegationTxHash) + ? String(object.undelegationTxHash) + : '', + unbondedTokenSweepTxHash: isSet(object.unbondedTokenSweepTxHash) + ? String(object.unbondedTokenSweepTxHash) + : '', + }; + }, + toJSON(message: UnbondingRecord): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = (message.id || BigInt(0)).toString()); + message.status !== undefined && + (obj.status = unbondingRecordStatusToJSON(message.status)); + message.stTokenAmount !== undefined && + (obj.stTokenAmount = message.stTokenAmount); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + message.unbondingCompletionTimeSeconds !== undefined && + (obj.unbondingCompletionTimeSeconds = ( + message.unbondingCompletionTimeSeconds || BigInt(0) + ).toString()); + message.undelegationTxHash !== undefined && + (obj.undelegationTxHash = message.undelegationTxHash); + message.unbondedTokenSweepTxHash !== undefined && + (obj.unbondedTokenSweepTxHash = message.unbondedTokenSweepTxHash); + return obj; + }, + fromPartial(object: Partial): UnbondingRecord { + const message = createBaseUnbondingRecord(); + message.id = + object.id !== undefined && object.id !== null + ? BigInt(object.id.toString()) + : BigInt(0); + message.status = object.status ?? 0; + message.stTokenAmount = object.stTokenAmount ?? ''; + message.nativeAmount = object.nativeAmount ?? ''; + message.unbondingCompletionTimeSeconds = + object.unbondingCompletionTimeSeconds !== undefined && + object.unbondingCompletionTimeSeconds !== null + ? BigInt(object.unbondingCompletionTimeSeconds.toString()) + : BigInt(0); + message.undelegationTxHash = object.undelegationTxHash ?? ''; + message.unbondedTokenSweepTxHash = object.unbondedTokenSweepTxHash ?? ''; + return message; + }, + fromProtoMsg(message: UnbondingRecordProtoMsg): UnbondingRecord { + return UnbondingRecord.decode(message.value); + }, + toProto(message: UnbondingRecord): Uint8Array { + return UnbondingRecord.encode(message).finish(); + }, + toProtoMsg(message: UnbondingRecord): UnbondingRecordProtoMsg { + return { + typeUrl: '/stride.stakedym.UnbondingRecord', + value: UnbondingRecord.encode(message).finish(), + }; + }, +}; +function createBaseRedemptionRecord(): RedemptionRecord { + return { + unbondingRecordId: BigInt(0), + redeemer: '', + stTokenAmount: '', + nativeAmount: '', + }; +} +export const RedemptionRecord = { + typeUrl: '/stride.stakedym.RedemptionRecord', + encode( + message: RedemptionRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.unbondingRecordId !== BigInt(0)) { + writer.uint32(8).uint64(message.unbondingRecordId); + } + if (message.redeemer !== '') { + writer.uint32(18).string(message.redeemer); + } + if (message.stTokenAmount !== '') { + writer.uint32(26).string(message.stTokenAmount); + } + if (message.nativeAmount !== '') { + writer.uint32(34).string(message.nativeAmount); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): RedemptionRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRedemptionRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.unbondingRecordId = reader.uint64(); + break; + case 2: + message.redeemer = reader.string(); + break; + case 3: + message.stTokenAmount = reader.string(); + break; + case 4: + message.nativeAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RedemptionRecord { + return { + unbondingRecordId: isSet(object.unbondingRecordId) + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0), + redeemer: isSet(object.redeemer) ? String(object.redeemer) : '', + stTokenAmount: isSet(object.stTokenAmount) + ? String(object.stTokenAmount) + : '', + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + }; + }, + toJSON(message: RedemptionRecord): JsonSafe { + const obj: any = {}; + message.unbondingRecordId !== undefined && + (obj.unbondingRecordId = ( + message.unbondingRecordId || BigInt(0) + ).toString()); + message.redeemer !== undefined && (obj.redeemer = message.redeemer); + message.stTokenAmount !== undefined && + (obj.stTokenAmount = message.stTokenAmount); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + return obj; + }, + fromPartial(object: Partial): RedemptionRecord { + const message = createBaseRedemptionRecord(); + message.unbondingRecordId = + object.unbondingRecordId !== undefined && + object.unbondingRecordId !== null + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0); + message.redeemer = object.redeemer ?? ''; + message.stTokenAmount = object.stTokenAmount ?? ''; + message.nativeAmount = object.nativeAmount ?? ''; + return message; + }, + fromProtoMsg(message: RedemptionRecordProtoMsg): RedemptionRecord { + return RedemptionRecord.decode(message.value); + }, + toProto(message: RedemptionRecord): Uint8Array { + return RedemptionRecord.encode(message).finish(); + }, + toProtoMsg(message: RedemptionRecord): RedemptionRecordProtoMsg { + return { + typeUrl: '/stride.stakedym.RedemptionRecord', + value: RedemptionRecord.encode(message).finish(), + }; + }, +}; +function createBaseSlashRecord(): SlashRecord { + return { + id: BigInt(0), + time: BigInt(0), + nativeAmount: '', + validatorAddress: '', + }; +} +export const SlashRecord = { + typeUrl: '/stride.stakedym.SlashRecord', + encode( + message: SlashRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== BigInt(0)) { + writer.uint32(8).uint64(message.id); + } + if (message.time !== BigInt(0)) { + writer.uint32(16).uint64(message.time); + } + if (message.nativeAmount !== '') { + writer.uint32(26).string(message.nativeAmount); + } + if (message.validatorAddress !== '') { + writer.uint32(34).string(message.validatorAddress); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): SlashRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSlashRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.uint64(); + break; + case 2: + message.time = reader.uint64(); + break; + case 3: + message.nativeAmount = reader.string(); + break; + case 4: + message.validatorAddress = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): SlashRecord { + return { + id: isSet(object.id) ? BigInt(object.id.toString()) : BigInt(0), + time: isSet(object.time) ? BigInt(object.time.toString()) : BigInt(0), + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + validatorAddress: isSet(object.validatorAddress) + ? String(object.validatorAddress) + : '', + }; + }, + toJSON(message: SlashRecord): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = (message.id || BigInt(0)).toString()); + message.time !== undefined && + (obj.time = (message.time || BigInt(0)).toString()); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + message.validatorAddress !== undefined && + (obj.validatorAddress = message.validatorAddress); + return obj; + }, + fromPartial(object: Partial): SlashRecord { + const message = createBaseSlashRecord(); + message.id = + object.id !== undefined && object.id !== null + ? BigInt(object.id.toString()) + : BigInt(0); + message.time = + object.time !== undefined && object.time !== null + ? BigInt(object.time.toString()) + : BigInt(0); + message.nativeAmount = object.nativeAmount ?? ''; + message.validatorAddress = object.validatorAddress ?? ''; + return message; + }, + fromProtoMsg(message: SlashRecordProtoMsg): SlashRecord { + return SlashRecord.decode(message.value); + }, + toProto(message: SlashRecord): Uint8Array { + return SlashRecord.encode(message).finish(); + }, + toProtoMsg(message: SlashRecord): SlashRecordProtoMsg { + return { + typeUrl: '/stride.stakedym.SlashRecord', + value: SlashRecord.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakedym/tx.ts b/packages/cosmic-proto/src/codegen/stride/stakedym/tx.ts new file mode 100644 index 00000000000..5e00f1eb582 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakedym/tx.ts @@ -0,0 +1,2294 @@ +//@ts-nocheck +import { + DelegationRecord, + type DelegationRecordSDKType, + UnbondingRecord, + type UnbondingRecordSDKType, + RedemptionRecord, + type RedemptionRecordSDKType, +} from './stakedym.js'; +import { Coin, type CoinSDKType } from '../../cosmos/base/v1beta1/coin.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet, Decimal } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export enum OverwritableRecordType { + RECORD_TYPE_DELEGATION = 0, + RECORD_TYPE_UNBONDING = 1, + RECORD_TYPE_REDEMPTION = 2, + UNRECOGNIZED = -1, +} +export const OverwritableRecordTypeSDKType = OverwritableRecordType; +export function overwritableRecordTypeFromJSON( + object: any, +): OverwritableRecordType { + switch (object) { + case 0: + case 'RECORD_TYPE_DELEGATION': + return OverwritableRecordType.RECORD_TYPE_DELEGATION; + case 1: + case 'RECORD_TYPE_UNBONDING': + return OverwritableRecordType.RECORD_TYPE_UNBONDING; + case 2: + case 'RECORD_TYPE_REDEMPTION': + return OverwritableRecordType.RECORD_TYPE_REDEMPTION; + case -1: + case 'UNRECOGNIZED': + default: + return OverwritableRecordType.UNRECOGNIZED; + } +} +export function overwritableRecordTypeToJSON( + object: OverwritableRecordType, +): string { + switch (object) { + case OverwritableRecordType.RECORD_TYPE_DELEGATION: + return 'RECORD_TYPE_DELEGATION'; + case OverwritableRecordType.RECORD_TYPE_UNBONDING: + return 'RECORD_TYPE_UNBONDING'; + case OverwritableRecordType.RECORD_TYPE_REDEMPTION: + return 'RECORD_TYPE_REDEMPTION'; + case OverwritableRecordType.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +/** LiquidStake */ +export interface MsgLiquidStake { + staker: string; + nativeAmount: string; +} +export interface MsgLiquidStakeProtoMsg { + typeUrl: '/stride.stakedym.MsgLiquidStake'; + value: Uint8Array; +} +/** LiquidStake */ +export interface MsgLiquidStakeSDKType { + staker: string; + native_amount: string; +} +export interface MsgLiquidStakeResponse { + stToken: Coin; +} +export interface MsgLiquidStakeResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgLiquidStakeResponse'; + value: Uint8Array; +} +export interface MsgLiquidStakeResponseSDKType { + st_token: CoinSDKType; +} +/** RedeemStake */ +export interface MsgRedeemStake { + redeemer: string; + stTokenAmount: string; +} +export interface MsgRedeemStakeProtoMsg { + typeUrl: '/stride.stakedym.MsgRedeemStake'; + value: Uint8Array; +} +/** RedeemStake */ +export interface MsgRedeemStakeSDKType { + redeemer: string; + st_token_amount: string; +} +export interface MsgRedeemStakeResponse { + nativeToken: Coin; +} +export interface MsgRedeemStakeResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgRedeemStakeResponse'; + value: Uint8Array; +} +export interface MsgRedeemStakeResponseSDKType { + native_token: CoinSDKType; +} +/** ConfirmDelegation */ +export interface MsgConfirmDelegation { + operator: string; + recordId: bigint; + txHash: string; +} +export interface MsgConfirmDelegationProtoMsg { + typeUrl: '/stride.stakedym.MsgConfirmDelegation'; + value: Uint8Array; +} +/** ConfirmDelegation */ +export interface MsgConfirmDelegationSDKType { + operator: string; + record_id: bigint; + tx_hash: string; +} +export interface MsgConfirmDelegationResponse {} +export interface MsgConfirmDelegationResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgConfirmDelegationResponse'; + value: Uint8Array; +} +export interface MsgConfirmDelegationResponseSDKType {} +/** ConfirmUndelegation */ +export interface MsgConfirmUndelegation { + operator: string; + recordId: bigint; + txHash: string; +} +export interface MsgConfirmUndelegationProtoMsg { + typeUrl: '/stride.stakedym.MsgConfirmUndelegation'; + value: Uint8Array; +} +/** ConfirmUndelegation */ +export interface MsgConfirmUndelegationSDKType { + operator: string; + record_id: bigint; + tx_hash: string; +} +export interface MsgConfirmUndelegationResponse {} +export interface MsgConfirmUndelegationResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgConfirmUndelegationResponse'; + value: Uint8Array; +} +export interface MsgConfirmUndelegationResponseSDKType {} +/** ConfirmUnbondedTokenSweep */ +export interface MsgConfirmUnbondedTokenSweep { + operator: string; + recordId: bigint; + txHash: string; +} +export interface MsgConfirmUnbondedTokenSweepProtoMsg { + typeUrl: '/stride.stakedym.MsgConfirmUnbondedTokenSweep'; + value: Uint8Array; +} +/** ConfirmUnbondedTokenSweep */ +export interface MsgConfirmUnbondedTokenSweepSDKType { + operator: string; + record_id: bigint; + tx_hash: string; +} +export interface MsgConfirmUnbondedTokenSweepResponse {} +export interface MsgConfirmUnbondedTokenSweepResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgConfirmUnbondedTokenSweepResponse'; + value: Uint8Array; +} +export interface MsgConfirmUnbondedTokenSweepResponseSDKType {} +/** AdjustDelegatedBalance */ +export interface MsgAdjustDelegatedBalance { + operator: string; + delegationOffset: string; + validatorAddress: string; +} +export interface MsgAdjustDelegatedBalanceProtoMsg { + typeUrl: '/stride.stakedym.MsgAdjustDelegatedBalance'; + value: Uint8Array; +} +/** AdjustDelegatedBalance */ +export interface MsgAdjustDelegatedBalanceSDKType { + operator: string; + delegation_offset: string; + validator_address: string; +} +export interface MsgAdjustDelegatedBalanceResponse {} +export interface MsgAdjustDelegatedBalanceResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgAdjustDelegatedBalanceResponse'; + value: Uint8Array; +} +export interface MsgAdjustDelegatedBalanceResponseSDKType {} +/** UpdateInnerRedemptionRate */ +export interface MsgUpdateInnerRedemptionRateBounds { + creator: string; + minInnerRedemptionRate: string; + maxInnerRedemptionRate: string; +} +export interface MsgUpdateInnerRedemptionRateBoundsProtoMsg { + typeUrl: '/stride.stakedym.MsgUpdateInnerRedemptionRateBounds'; + value: Uint8Array; +} +/** UpdateInnerRedemptionRate */ +export interface MsgUpdateInnerRedemptionRateBoundsSDKType { + creator: string; + min_inner_redemption_rate: string; + max_inner_redemption_rate: string; +} +export interface MsgUpdateInnerRedemptionRateBoundsResponse {} +export interface MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgUpdateInnerRedemptionRateBoundsResponse'; + value: Uint8Array; +} +export interface MsgUpdateInnerRedemptionRateBoundsResponseSDKType {} +/** ResumeHostZone */ +export interface MsgResumeHostZone { + creator: string; +} +export interface MsgResumeHostZoneProtoMsg { + typeUrl: '/stride.stakedym.MsgResumeHostZone'; + value: Uint8Array; +} +/** ResumeHostZone */ +export interface MsgResumeHostZoneSDKType { + creator: string; +} +export interface MsgResumeHostZoneResponse {} +export interface MsgResumeHostZoneResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgResumeHostZoneResponse'; + value: Uint8Array; +} +export interface MsgResumeHostZoneResponseSDKType {} +/** RefreshRedemptionRate */ +export interface MsgRefreshRedemptionRate { + creator: string; +} +export interface MsgRefreshRedemptionRateProtoMsg { + typeUrl: '/stride.stakedym.MsgRefreshRedemptionRate'; + value: Uint8Array; +} +/** RefreshRedemptionRate */ +export interface MsgRefreshRedemptionRateSDKType { + creator: string; +} +export interface MsgRefreshRedemptionRateResponse {} +export interface MsgRefreshRedemptionRateResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgRefreshRedemptionRateResponse'; + value: Uint8Array; +} +export interface MsgRefreshRedemptionRateResponseSDKType {} +/** OverwriteDelegationRecord */ +export interface MsgOverwriteDelegationRecord { + creator: string; + delegationRecord?: DelegationRecord; +} +export interface MsgOverwriteDelegationRecordProtoMsg { + typeUrl: '/stride.stakedym.MsgOverwriteDelegationRecord'; + value: Uint8Array; +} +/** OverwriteDelegationRecord */ +export interface MsgOverwriteDelegationRecordSDKType { + creator: string; + delegation_record?: DelegationRecordSDKType; +} +export interface MsgOverwriteDelegationRecordResponse {} +export interface MsgOverwriteDelegationRecordResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgOverwriteDelegationRecordResponse'; + value: Uint8Array; +} +export interface MsgOverwriteDelegationRecordResponseSDKType {} +/** OverwriteUnbondingRecord */ +export interface MsgOverwriteUnbondingRecord { + creator: string; + unbondingRecord?: UnbondingRecord; +} +export interface MsgOverwriteUnbondingRecordProtoMsg { + typeUrl: '/stride.stakedym.MsgOverwriteUnbondingRecord'; + value: Uint8Array; +} +/** OverwriteUnbondingRecord */ +export interface MsgOverwriteUnbondingRecordSDKType { + creator: string; + unbonding_record?: UnbondingRecordSDKType; +} +export interface MsgOverwriteUnbondingRecordResponse {} +export interface MsgOverwriteUnbondingRecordResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgOverwriteUnbondingRecordResponse'; + value: Uint8Array; +} +export interface MsgOverwriteUnbondingRecordResponseSDKType {} +/** OverwriteRedemptionRecord */ +export interface MsgOverwriteRedemptionRecord { + creator: string; + redemptionRecord?: RedemptionRecord; +} +export interface MsgOverwriteRedemptionRecordProtoMsg { + typeUrl: '/stride.stakedym.MsgOverwriteRedemptionRecord'; + value: Uint8Array; +} +/** OverwriteRedemptionRecord */ +export interface MsgOverwriteRedemptionRecordSDKType { + creator: string; + redemption_record?: RedemptionRecordSDKType; +} +export interface MsgOverwriteRedemptionRecordResponse {} +export interface MsgOverwriteRedemptionRecordResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgOverwriteRedemptionRecordResponse'; + value: Uint8Array; +} +export interface MsgOverwriteRedemptionRecordResponseSDKType {} +/** SetOperatorAddress */ +export interface MsgSetOperatorAddress { + signer: string; + operator: string; +} +export interface MsgSetOperatorAddressProtoMsg { + typeUrl: '/stride.stakedym.MsgSetOperatorAddress'; + value: Uint8Array; +} +/** SetOperatorAddress */ +export interface MsgSetOperatorAddressSDKType { + signer: string; + operator: string; +} +export interface MsgSetOperatorAddressResponse {} +export interface MsgSetOperatorAddressResponseProtoMsg { + typeUrl: '/stride.stakedym.MsgSetOperatorAddressResponse'; + value: Uint8Array; +} +export interface MsgSetOperatorAddressResponseSDKType {} +function createBaseMsgLiquidStake(): MsgLiquidStake { + return { + staker: '', + nativeAmount: '', + }; +} +export const MsgLiquidStake = { + typeUrl: '/stride.stakedym.MsgLiquidStake', + encode( + message: MsgLiquidStake, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.staker !== '') { + writer.uint32(10).string(message.staker); + } + if (message.nativeAmount !== '') { + writer.uint32(18).string(message.nativeAmount); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgLiquidStake { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLiquidStake(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.staker = reader.string(); + break; + case 2: + message.nativeAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLiquidStake { + return { + staker: isSet(object.staker) ? String(object.staker) : '', + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + }; + }, + toJSON(message: MsgLiquidStake): JsonSafe { + const obj: any = {}; + message.staker !== undefined && (obj.staker = message.staker); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + return obj; + }, + fromPartial(object: Partial): MsgLiquidStake { + const message = createBaseMsgLiquidStake(); + message.staker = object.staker ?? ''; + message.nativeAmount = object.nativeAmount ?? ''; + return message; + }, + fromProtoMsg(message: MsgLiquidStakeProtoMsg): MsgLiquidStake { + return MsgLiquidStake.decode(message.value); + }, + toProto(message: MsgLiquidStake): Uint8Array { + return MsgLiquidStake.encode(message).finish(); + }, + toProtoMsg(message: MsgLiquidStake): MsgLiquidStakeProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgLiquidStake', + value: MsgLiquidStake.encode(message).finish(), + }; + }, +}; +function createBaseMsgLiquidStakeResponse(): MsgLiquidStakeResponse { + return { + stToken: Coin.fromPartial({}), + }; +} +export const MsgLiquidStakeResponse = { + typeUrl: '/stride.stakedym.MsgLiquidStakeResponse', + encode( + message: MsgLiquidStakeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.stToken !== undefined) { + Coin.encode(message.stToken, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgLiquidStakeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLiquidStakeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.stToken = Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLiquidStakeResponse { + return { + stToken: isSet(object.stToken) + ? Coin.fromJSON(object.stToken) + : undefined, + }; + }, + toJSON(message: MsgLiquidStakeResponse): JsonSafe { + const obj: any = {}; + message.stToken !== undefined && + (obj.stToken = message.stToken + ? Coin.toJSON(message.stToken) + : undefined); + return obj; + }, + fromPartial(object: Partial): MsgLiquidStakeResponse { + const message = createBaseMsgLiquidStakeResponse(); + message.stToken = + object.stToken !== undefined && object.stToken !== null + ? Coin.fromPartial(object.stToken) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgLiquidStakeResponseProtoMsg, + ): MsgLiquidStakeResponse { + return MsgLiquidStakeResponse.decode(message.value); + }, + toProto(message: MsgLiquidStakeResponse): Uint8Array { + return MsgLiquidStakeResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgLiquidStakeResponse): MsgLiquidStakeResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgLiquidStakeResponse', + value: MsgLiquidStakeResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRedeemStake(): MsgRedeemStake { + return { + redeemer: '', + stTokenAmount: '', + }; +} +export const MsgRedeemStake = { + typeUrl: '/stride.stakedym.MsgRedeemStake', + encode( + message: MsgRedeemStake, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.redeemer !== '') { + writer.uint32(10).string(message.redeemer); + } + if (message.stTokenAmount !== '') { + writer.uint32(18).string(message.stTokenAmount); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgRedeemStake { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRedeemStake(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.redeemer = reader.string(); + break; + case 2: + message.stTokenAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRedeemStake { + return { + redeemer: isSet(object.redeemer) ? String(object.redeemer) : '', + stTokenAmount: isSet(object.stTokenAmount) + ? String(object.stTokenAmount) + : '', + }; + }, + toJSON(message: MsgRedeemStake): JsonSafe { + const obj: any = {}; + message.redeemer !== undefined && (obj.redeemer = message.redeemer); + message.stTokenAmount !== undefined && + (obj.stTokenAmount = message.stTokenAmount); + return obj; + }, + fromPartial(object: Partial): MsgRedeemStake { + const message = createBaseMsgRedeemStake(); + message.redeemer = object.redeemer ?? ''; + message.stTokenAmount = object.stTokenAmount ?? ''; + return message; + }, + fromProtoMsg(message: MsgRedeemStakeProtoMsg): MsgRedeemStake { + return MsgRedeemStake.decode(message.value); + }, + toProto(message: MsgRedeemStake): Uint8Array { + return MsgRedeemStake.encode(message).finish(); + }, + toProtoMsg(message: MsgRedeemStake): MsgRedeemStakeProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgRedeemStake', + value: MsgRedeemStake.encode(message).finish(), + }; + }, +}; +function createBaseMsgRedeemStakeResponse(): MsgRedeemStakeResponse { + return { + nativeToken: Coin.fromPartial({}), + }; +} +export const MsgRedeemStakeResponse = { + typeUrl: '/stride.stakedym.MsgRedeemStakeResponse', + encode( + message: MsgRedeemStakeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nativeToken !== undefined) { + Coin.encode(message.nativeToken, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRedeemStakeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRedeemStakeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nativeToken = Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRedeemStakeResponse { + return { + nativeToken: isSet(object.nativeToken) + ? Coin.fromJSON(object.nativeToken) + : undefined, + }; + }, + toJSON(message: MsgRedeemStakeResponse): JsonSafe { + const obj: any = {}; + message.nativeToken !== undefined && + (obj.nativeToken = message.nativeToken + ? Coin.toJSON(message.nativeToken) + : undefined); + return obj; + }, + fromPartial(object: Partial): MsgRedeemStakeResponse { + const message = createBaseMsgRedeemStakeResponse(); + message.nativeToken = + object.nativeToken !== undefined && object.nativeToken !== null + ? Coin.fromPartial(object.nativeToken) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgRedeemStakeResponseProtoMsg, + ): MsgRedeemStakeResponse { + return MsgRedeemStakeResponse.decode(message.value); + }, + toProto(message: MsgRedeemStakeResponse): Uint8Array { + return MsgRedeemStakeResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgRedeemStakeResponse): MsgRedeemStakeResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgRedeemStakeResponse', + value: MsgRedeemStakeResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmDelegation(): MsgConfirmDelegation { + return { + operator: '', + recordId: BigInt(0), + txHash: '', + }; +} +export const MsgConfirmDelegation = { + typeUrl: '/stride.stakedym.MsgConfirmDelegation', + encode( + message: MsgConfirmDelegation, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.operator !== '') { + writer.uint32(10).string(message.operator); + } + if (message.recordId !== BigInt(0)) { + writer.uint32(16).uint64(message.recordId); + } + if (message.txHash !== '') { + writer.uint32(26).string(message.txHash); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmDelegation { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmDelegation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.operator = reader.string(); + break; + case 2: + message.recordId = reader.uint64(); + break; + case 3: + message.txHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgConfirmDelegation { + return { + operator: isSet(object.operator) ? String(object.operator) : '', + recordId: isSet(object.recordId) + ? BigInt(object.recordId.toString()) + : BigInt(0), + txHash: isSet(object.txHash) ? String(object.txHash) : '', + }; + }, + toJSON(message: MsgConfirmDelegation): JsonSafe { + const obj: any = {}; + message.operator !== undefined && (obj.operator = message.operator); + message.recordId !== undefined && + (obj.recordId = (message.recordId || BigInt(0)).toString()); + message.txHash !== undefined && (obj.txHash = message.txHash); + return obj; + }, + fromPartial(object: Partial): MsgConfirmDelegation { + const message = createBaseMsgConfirmDelegation(); + message.operator = object.operator ?? ''; + message.recordId = + object.recordId !== undefined && object.recordId !== null + ? BigInt(object.recordId.toString()) + : BigInt(0); + message.txHash = object.txHash ?? ''; + return message; + }, + fromProtoMsg(message: MsgConfirmDelegationProtoMsg): MsgConfirmDelegation { + return MsgConfirmDelegation.decode(message.value); + }, + toProto(message: MsgConfirmDelegation): Uint8Array { + return MsgConfirmDelegation.encode(message).finish(); + }, + toProtoMsg(message: MsgConfirmDelegation): MsgConfirmDelegationProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgConfirmDelegation', + value: MsgConfirmDelegation.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmDelegationResponse(): MsgConfirmDelegationResponse { + return {}; +} +export const MsgConfirmDelegationResponse = { + typeUrl: '/stride.stakedym.MsgConfirmDelegationResponse', + encode( + _: MsgConfirmDelegationResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmDelegationResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmDelegationResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgConfirmDelegationResponse { + return {}; + }, + toJSON( + _: MsgConfirmDelegationResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgConfirmDelegationResponse { + const message = createBaseMsgConfirmDelegationResponse(); + return message; + }, + fromProtoMsg( + message: MsgConfirmDelegationResponseProtoMsg, + ): MsgConfirmDelegationResponse { + return MsgConfirmDelegationResponse.decode(message.value); + }, + toProto(message: MsgConfirmDelegationResponse): Uint8Array { + return MsgConfirmDelegationResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgConfirmDelegationResponse, + ): MsgConfirmDelegationResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgConfirmDelegationResponse', + value: MsgConfirmDelegationResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmUndelegation(): MsgConfirmUndelegation { + return { + operator: '', + recordId: BigInt(0), + txHash: '', + }; +} +export const MsgConfirmUndelegation = { + typeUrl: '/stride.stakedym.MsgConfirmUndelegation', + encode( + message: MsgConfirmUndelegation, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.operator !== '') { + writer.uint32(10).string(message.operator); + } + if (message.recordId !== BigInt(0)) { + writer.uint32(16).uint64(message.recordId); + } + if (message.txHash !== '') { + writer.uint32(26).string(message.txHash); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmUndelegation { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmUndelegation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.operator = reader.string(); + break; + case 2: + message.recordId = reader.uint64(); + break; + case 3: + message.txHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgConfirmUndelegation { + return { + operator: isSet(object.operator) ? String(object.operator) : '', + recordId: isSet(object.recordId) + ? BigInt(object.recordId.toString()) + : BigInt(0), + txHash: isSet(object.txHash) ? String(object.txHash) : '', + }; + }, + toJSON(message: MsgConfirmUndelegation): JsonSafe { + const obj: any = {}; + message.operator !== undefined && (obj.operator = message.operator); + message.recordId !== undefined && + (obj.recordId = (message.recordId || BigInt(0)).toString()); + message.txHash !== undefined && (obj.txHash = message.txHash); + return obj; + }, + fromPartial(object: Partial): MsgConfirmUndelegation { + const message = createBaseMsgConfirmUndelegation(); + message.operator = object.operator ?? ''; + message.recordId = + object.recordId !== undefined && object.recordId !== null + ? BigInt(object.recordId.toString()) + : BigInt(0); + message.txHash = object.txHash ?? ''; + return message; + }, + fromProtoMsg( + message: MsgConfirmUndelegationProtoMsg, + ): MsgConfirmUndelegation { + return MsgConfirmUndelegation.decode(message.value); + }, + toProto(message: MsgConfirmUndelegation): Uint8Array { + return MsgConfirmUndelegation.encode(message).finish(); + }, + toProtoMsg(message: MsgConfirmUndelegation): MsgConfirmUndelegationProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgConfirmUndelegation', + value: MsgConfirmUndelegation.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmUndelegationResponse(): MsgConfirmUndelegationResponse { + return {}; +} +export const MsgConfirmUndelegationResponse = { + typeUrl: '/stride.stakedym.MsgConfirmUndelegationResponse', + encode( + _: MsgConfirmUndelegationResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmUndelegationResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmUndelegationResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgConfirmUndelegationResponse { + return {}; + }, + toJSON( + _: MsgConfirmUndelegationResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgConfirmUndelegationResponse { + const message = createBaseMsgConfirmUndelegationResponse(); + return message; + }, + fromProtoMsg( + message: MsgConfirmUndelegationResponseProtoMsg, + ): MsgConfirmUndelegationResponse { + return MsgConfirmUndelegationResponse.decode(message.value); + }, + toProto(message: MsgConfirmUndelegationResponse): Uint8Array { + return MsgConfirmUndelegationResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgConfirmUndelegationResponse, + ): MsgConfirmUndelegationResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgConfirmUndelegationResponse', + value: MsgConfirmUndelegationResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmUnbondedTokenSweep(): MsgConfirmUnbondedTokenSweep { + return { + operator: '', + recordId: BigInt(0), + txHash: '', + }; +} +export const MsgConfirmUnbondedTokenSweep = { + typeUrl: '/stride.stakedym.MsgConfirmUnbondedTokenSweep', + encode( + message: MsgConfirmUnbondedTokenSweep, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.operator !== '') { + writer.uint32(10).string(message.operator); + } + if (message.recordId !== BigInt(0)) { + writer.uint32(16).uint64(message.recordId); + } + if (message.txHash !== '') { + writer.uint32(26).string(message.txHash); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmUnbondedTokenSweep { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmUnbondedTokenSweep(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.operator = reader.string(); + break; + case 2: + message.recordId = reader.uint64(); + break; + case 3: + message.txHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgConfirmUnbondedTokenSweep { + return { + operator: isSet(object.operator) ? String(object.operator) : '', + recordId: isSet(object.recordId) + ? BigInt(object.recordId.toString()) + : BigInt(0), + txHash: isSet(object.txHash) ? String(object.txHash) : '', + }; + }, + toJSON( + message: MsgConfirmUnbondedTokenSweep, + ): JsonSafe { + const obj: any = {}; + message.operator !== undefined && (obj.operator = message.operator); + message.recordId !== undefined && + (obj.recordId = (message.recordId || BigInt(0)).toString()); + message.txHash !== undefined && (obj.txHash = message.txHash); + return obj; + }, + fromPartial( + object: Partial, + ): MsgConfirmUnbondedTokenSweep { + const message = createBaseMsgConfirmUnbondedTokenSweep(); + message.operator = object.operator ?? ''; + message.recordId = + object.recordId !== undefined && object.recordId !== null + ? BigInt(object.recordId.toString()) + : BigInt(0); + message.txHash = object.txHash ?? ''; + return message; + }, + fromProtoMsg( + message: MsgConfirmUnbondedTokenSweepProtoMsg, + ): MsgConfirmUnbondedTokenSweep { + return MsgConfirmUnbondedTokenSweep.decode(message.value); + }, + toProto(message: MsgConfirmUnbondedTokenSweep): Uint8Array { + return MsgConfirmUnbondedTokenSweep.encode(message).finish(); + }, + toProtoMsg( + message: MsgConfirmUnbondedTokenSweep, + ): MsgConfirmUnbondedTokenSweepProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgConfirmUnbondedTokenSweep', + value: MsgConfirmUnbondedTokenSweep.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmUnbondedTokenSweepResponse(): MsgConfirmUnbondedTokenSweepResponse { + return {}; +} +export const MsgConfirmUnbondedTokenSweepResponse = { + typeUrl: '/stride.stakedym.MsgConfirmUnbondedTokenSweepResponse', + encode( + _: MsgConfirmUnbondedTokenSweepResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmUnbondedTokenSweepResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmUnbondedTokenSweepResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgConfirmUnbondedTokenSweepResponse { + return {}; + }, + toJSON( + _: MsgConfirmUnbondedTokenSweepResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgConfirmUnbondedTokenSweepResponse { + const message = createBaseMsgConfirmUnbondedTokenSweepResponse(); + return message; + }, + fromProtoMsg( + message: MsgConfirmUnbondedTokenSweepResponseProtoMsg, + ): MsgConfirmUnbondedTokenSweepResponse { + return MsgConfirmUnbondedTokenSweepResponse.decode(message.value); + }, + toProto(message: MsgConfirmUnbondedTokenSweepResponse): Uint8Array { + return MsgConfirmUnbondedTokenSweepResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgConfirmUnbondedTokenSweepResponse, + ): MsgConfirmUnbondedTokenSweepResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgConfirmUnbondedTokenSweepResponse', + value: MsgConfirmUnbondedTokenSweepResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgAdjustDelegatedBalance(): MsgAdjustDelegatedBalance { + return { + operator: '', + delegationOffset: '', + validatorAddress: '', + }; +} +export const MsgAdjustDelegatedBalance = { + typeUrl: '/stride.stakedym.MsgAdjustDelegatedBalance', + encode( + message: MsgAdjustDelegatedBalance, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.operator !== '') { + writer.uint32(10).string(message.operator); + } + if (message.delegationOffset !== '') { + writer.uint32(18).string(message.delegationOffset); + } + if (message.validatorAddress !== '') { + writer.uint32(26).string(message.validatorAddress); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgAdjustDelegatedBalance { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAdjustDelegatedBalance(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.operator = reader.string(); + break; + case 2: + message.delegationOffset = reader.string(); + break; + case 3: + message.validatorAddress = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgAdjustDelegatedBalance { + return { + operator: isSet(object.operator) ? String(object.operator) : '', + delegationOffset: isSet(object.delegationOffset) + ? String(object.delegationOffset) + : '', + validatorAddress: isSet(object.validatorAddress) + ? String(object.validatorAddress) + : '', + }; + }, + toJSON( + message: MsgAdjustDelegatedBalance, + ): JsonSafe { + const obj: any = {}; + message.operator !== undefined && (obj.operator = message.operator); + message.delegationOffset !== undefined && + (obj.delegationOffset = message.delegationOffset); + message.validatorAddress !== undefined && + (obj.validatorAddress = message.validatorAddress); + return obj; + }, + fromPartial( + object: Partial, + ): MsgAdjustDelegatedBalance { + const message = createBaseMsgAdjustDelegatedBalance(); + message.operator = object.operator ?? ''; + message.delegationOffset = object.delegationOffset ?? ''; + message.validatorAddress = object.validatorAddress ?? ''; + return message; + }, + fromProtoMsg( + message: MsgAdjustDelegatedBalanceProtoMsg, + ): MsgAdjustDelegatedBalance { + return MsgAdjustDelegatedBalance.decode(message.value); + }, + toProto(message: MsgAdjustDelegatedBalance): Uint8Array { + return MsgAdjustDelegatedBalance.encode(message).finish(); + }, + toProtoMsg( + message: MsgAdjustDelegatedBalance, + ): MsgAdjustDelegatedBalanceProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgAdjustDelegatedBalance', + value: MsgAdjustDelegatedBalance.encode(message).finish(), + }; + }, +}; +function createBaseMsgAdjustDelegatedBalanceResponse(): MsgAdjustDelegatedBalanceResponse { + return {}; +} +export const MsgAdjustDelegatedBalanceResponse = { + typeUrl: '/stride.stakedym.MsgAdjustDelegatedBalanceResponse', + encode( + _: MsgAdjustDelegatedBalanceResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgAdjustDelegatedBalanceResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAdjustDelegatedBalanceResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgAdjustDelegatedBalanceResponse { + return {}; + }, + toJSON( + _: MsgAdjustDelegatedBalanceResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgAdjustDelegatedBalanceResponse { + const message = createBaseMsgAdjustDelegatedBalanceResponse(); + return message; + }, + fromProtoMsg( + message: MsgAdjustDelegatedBalanceResponseProtoMsg, + ): MsgAdjustDelegatedBalanceResponse { + return MsgAdjustDelegatedBalanceResponse.decode(message.value); + }, + toProto(message: MsgAdjustDelegatedBalanceResponse): Uint8Array { + return MsgAdjustDelegatedBalanceResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgAdjustDelegatedBalanceResponse, + ): MsgAdjustDelegatedBalanceResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgAdjustDelegatedBalanceResponse', + value: MsgAdjustDelegatedBalanceResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateInnerRedemptionRateBounds(): MsgUpdateInnerRedemptionRateBounds { + return { + creator: '', + minInnerRedemptionRate: '', + maxInnerRedemptionRate: '', + }; +} +export const MsgUpdateInnerRedemptionRateBounds = { + typeUrl: '/stride.stakedym.MsgUpdateInnerRedemptionRateBounds', + encode( + message: MsgUpdateInnerRedemptionRateBounds, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.minInnerRedemptionRate !== '') { + writer + .uint32(18) + .string( + Decimal.fromUserInput(message.minInnerRedemptionRate, 18).atomics, + ); + } + if (message.maxInnerRedemptionRate !== '') { + writer + .uint32(26) + .string( + Decimal.fromUserInput(message.maxInnerRedemptionRate, 18).atomics, + ); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateInnerRedemptionRateBounds { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateInnerRedemptionRateBounds(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.minInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 3: + message.maxInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateInnerRedemptionRateBounds { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + minInnerRedemptionRate: isSet(object.minInnerRedemptionRate) + ? String(object.minInnerRedemptionRate) + : '', + maxInnerRedemptionRate: isSet(object.maxInnerRedemptionRate) + ? String(object.maxInnerRedemptionRate) + : '', + }; + }, + toJSON( + message: MsgUpdateInnerRedemptionRateBounds, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.minInnerRedemptionRate !== undefined && + (obj.minInnerRedemptionRate = message.minInnerRedemptionRate); + message.maxInnerRedemptionRate !== undefined && + (obj.maxInnerRedemptionRate = message.maxInnerRedemptionRate); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateInnerRedemptionRateBounds { + const message = createBaseMsgUpdateInnerRedemptionRateBounds(); + message.creator = object.creator ?? ''; + message.minInnerRedemptionRate = object.minInnerRedemptionRate ?? ''; + message.maxInnerRedemptionRate = object.maxInnerRedemptionRate ?? ''; + return message; + }, + fromProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsProtoMsg, + ): MsgUpdateInnerRedemptionRateBounds { + return MsgUpdateInnerRedemptionRateBounds.decode(message.value); + }, + toProto(message: MsgUpdateInnerRedemptionRateBounds): Uint8Array { + return MsgUpdateInnerRedemptionRateBounds.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateInnerRedemptionRateBounds, + ): MsgUpdateInnerRedemptionRateBoundsProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgUpdateInnerRedemptionRateBounds', + value: MsgUpdateInnerRedemptionRateBounds.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateInnerRedemptionRateBoundsResponse(): MsgUpdateInnerRedemptionRateBoundsResponse { + return {}; +} +export const MsgUpdateInnerRedemptionRateBoundsResponse = { + typeUrl: '/stride.stakedym.MsgUpdateInnerRedemptionRateBoundsResponse', + encode( + _: MsgUpdateInnerRedemptionRateBoundsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateInnerRedemptionRateBoundsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateInnerRedemptionRateBoundsResponse { + return {}; + }, + toJSON( + _: MsgUpdateInnerRedemptionRateBoundsResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + const message = createBaseMsgUpdateInnerRedemptionRateBoundsResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + return MsgUpdateInnerRedemptionRateBoundsResponse.decode(message.value); + }, + toProto(message: MsgUpdateInnerRedemptionRateBoundsResponse): Uint8Array { + return MsgUpdateInnerRedemptionRateBoundsResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsResponse, + ): MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgUpdateInnerRedemptionRateBoundsResponse', + value: + MsgUpdateInnerRedemptionRateBoundsResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgResumeHostZone(): MsgResumeHostZone { + return { + creator: '', + }; +} +export const MsgResumeHostZone = { + typeUrl: '/stride.stakedym.MsgResumeHostZone', + encode( + message: MsgResumeHostZone, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgResumeHostZone { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgResumeHostZone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgResumeHostZone { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + }; + }, + toJSON(message: MsgResumeHostZone): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + return obj; + }, + fromPartial(object: Partial): MsgResumeHostZone { + const message = createBaseMsgResumeHostZone(); + message.creator = object.creator ?? ''; + return message; + }, + fromProtoMsg(message: MsgResumeHostZoneProtoMsg): MsgResumeHostZone { + return MsgResumeHostZone.decode(message.value); + }, + toProto(message: MsgResumeHostZone): Uint8Array { + return MsgResumeHostZone.encode(message).finish(); + }, + toProtoMsg(message: MsgResumeHostZone): MsgResumeHostZoneProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgResumeHostZone', + value: MsgResumeHostZone.encode(message).finish(), + }; + }, +}; +function createBaseMsgResumeHostZoneResponse(): MsgResumeHostZoneResponse { + return {}; +} +export const MsgResumeHostZoneResponse = { + typeUrl: '/stride.stakedym.MsgResumeHostZoneResponse', + encode( + _: MsgResumeHostZoneResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgResumeHostZoneResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgResumeHostZoneResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgResumeHostZoneResponse { + return {}; + }, + toJSON(_: MsgResumeHostZoneResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgResumeHostZoneResponse { + const message = createBaseMsgResumeHostZoneResponse(); + return message; + }, + fromProtoMsg( + message: MsgResumeHostZoneResponseProtoMsg, + ): MsgResumeHostZoneResponse { + return MsgResumeHostZoneResponse.decode(message.value); + }, + toProto(message: MsgResumeHostZoneResponse): Uint8Array { + return MsgResumeHostZoneResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgResumeHostZoneResponse, + ): MsgResumeHostZoneResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgResumeHostZoneResponse', + value: MsgResumeHostZoneResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRefreshRedemptionRate(): MsgRefreshRedemptionRate { + return { + creator: '', + }; +} +export const MsgRefreshRedemptionRate = { + typeUrl: '/stride.stakedym.MsgRefreshRedemptionRate', + encode( + message: MsgRefreshRedemptionRate, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRefreshRedemptionRate { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRefreshRedemptionRate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRefreshRedemptionRate { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + }; + }, + toJSON( + message: MsgRefreshRedemptionRate, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + return obj; + }, + fromPartial( + object: Partial, + ): MsgRefreshRedemptionRate { + const message = createBaseMsgRefreshRedemptionRate(); + message.creator = object.creator ?? ''; + return message; + }, + fromProtoMsg( + message: MsgRefreshRedemptionRateProtoMsg, + ): MsgRefreshRedemptionRate { + return MsgRefreshRedemptionRate.decode(message.value); + }, + toProto(message: MsgRefreshRedemptionRate): Uint8Array { + return MsgRefreshRedemptionRate.encode(message).finish(); + }, + toProtoMsg( + message: MsgRefreshRedemptionRate, + ): MsgRefreshRedemptionRateProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgRefreshRedemptionRate', + value: MsgRefreshRedemptionRate.encode(message).finish(), + }; + }, +}; +function createBaseMsgRefreshRedemptionRateResponse(): MsgRefreshRedemptionRateResponse { + return {}; +} +export const MsgRefreshRedemptionRateResponse = { + typeUrl: '/stride.stakedym.MsgRefreshRedemptionRateResponse', + encode( + _: MsgRefreshRedemptionRateResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRefreshRedemptionRateResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRefreshRedemptionRateResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgRefreshRedemptionRateResponse { + return {}; + }, + toJSON( + _: MsgRefreshRedemptionRateResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgRefreshRedemptionRateResponse { + const message = createBaseMsgRefreshRedemptionRateResponse(); + return message; + }, + fromProtoMsg( + message: MsgRefreshRedemptionRateResponseProtoMsg, + ): MsgRefreshRedemptionRateResponse { + return MsgRefreshRedemptionRateResponse.decode(message.value); + }, + toProto(message: MsgRefreshRedemptionRateResponse): Uint8Array { + return MsgRefreshRedemptionRateResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgRefreshRedemptionRateResponse, + ): MsgRefreshRedemptionRateResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgRefreshRedemptionRateResponse', + value: MsgRefreshRedemptionRateResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteDelegationRecord(): MsgOverwriteDelegationRecord { + return { + creator: '', + delegationRecord: undefined, + }; +} +export const MsgOverwriteDelegationRecord = { + typeUrl: '/stride.stakedym.MsgOverwriteDelegationRecord', + encode( + message: MsgOverwriteDelegationRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.delegationRecord !== undefined) { + DelegationRecord.encode( + message.delegationRecord, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteDelegationRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteDelegationRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.delegationRecord = DelegationRecord.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgOverwriteDelegationRecord { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + delegationRecord: isSet(object.delegationRecord) + ? DelegationRecord.fromJSON(object.delegationRecord) + : undefined, + }; + }, + toJSON( + message: MsgOverwriteDelegationRecord, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.delegationRecord !== undefined && + (obj.delegationRecord = message.delegationRecord + ? DelegationRecord.toJSON(message.delegationRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): MsgOverwriteDelegationRecord { + const message = createBaseMsgOverwriteDelegationRecord(); + message.creator = object.creator ?? ''; + message.delegationRecord = + object.delegationRecord !== undefined && object.delegationRecord !== null + ? DelegationRecord.fromPartial(object.delegationRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgOverwriteDelegationRecordProtoMsg, + ): MsgOverwriteDelegationRecord { + return MsgOverwriteDelegationRecord.decode(message.value); + }, + toProto(message: MsgOverwriteDelegationRecord): Uint8Array { + return MsgOverwriteDelegationRecord.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteDelegationRecord, + ): MsgOverwriteDelegationRecordProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgOverwriteDelegationRecord', + value: MsgOverwriteDelegationRecord.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteDelegationRecordResponse(): MsgOverwriteDelegationRecordResponse { + return {}; +} +export const MsgOverwriteDelegationRecordResponse = { + typeUrl: '/stride.stakedym.MsgOverwriteDelegationRecordResponse', + encode( + _: MsgOverwriteDelegationRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteDelegationRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteDelegationRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgOverwriteDelegationRecordResponse { + return {}; + }, + toJSON( + _: MsgOverwriteDelegationRecordResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgOverwriteDelegationRecordResponse { + const message = createBaseMsgOverwriteDelegationRecordResponse(); + return message; + }, + fromProtoMsg( + message: MsgOverwriteDelegationRecordResponseProtoMsg, + ): MsgOverwriteDelegationRecordResponse { + return MsgOverwriteDelegationRecordResponse.decode(message.value); + }, + toProto(message: MsgOverwriteDelegationRecordResponse): Uint8Array { + return MsgOverwriteDelegationRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteDelegationRecordResponse, + ): MsgOverwriteDelegationRecordResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgOverwriteDelegationRecordResponse', + value: MsgOverwriteDelegationRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteUnbondingRecord(): MsgOverwriteUnbondingRecord { + return { + creator: '', + unbondingRecord: undefined, + }; +} +export const MsgOverwriteUnbondingRecord = { + typeUrl: '/stride.stakedym.MsgOverwriteUnbondingRecord', + encode( + message: MsgOverwriteUnbondingRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.unbondingRecord !== undefined) { + UnbondingRecord.encode( + message.unbondingRecord, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteUnbondingRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteUnbondingRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.unbondingRecord = UnbondingRecord.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgOverwriteUnbondingRecord { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + unbondingRecord: isSet(object.unbondingRecord) + ? UnbondingRecord.fromJSON(object.unbondingRecord) + : undefined, + }; + }, + toJSON( + message: MsgOverwriteUnbondingRecord, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.unbondingRecord !== undefined && + (obj.unbondingRecord = message.unbondingRecord + ? UnbondingRecord.toJSON(message.unbondingRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): MsgOverwriteUnbondingRecord { + const message = createBaseMsgOverwriteUnbondingRecord(); + message.creator = object.creator ?? ''; + message.unbondingRecord = + object.unbondingRecord !== undefined && object.unbondingRecord !== null + ? UnbondingRecord.fromPartial(object.unbondingRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgOverwriteUnbondingRecordProtoMsg, + ): MsgOverwriteUnbondingRecord { + return MsgOverwriteUnbondingRecord.decode(message.value); + }, + toProto(message: MsgOverwriteUnbondingRecord): Uint8Array { + return MsgOverwriteUnbondingRecord.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteUnbondingRecord, + ): MsgOverwriteUnbondingRecordProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgOverwriteUnbondingRecord', + value: MsgOverwriteUnbondingRecord.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteUnbondingRecordResponse(): MsgOverwriteUnbondingRecordResponse { + return {}; +} +export const MsgOverwriteUnbondingRecordResponse = { + typeUrl: '/stride.stakedym.MsgOverwriteUnbondingRecordResponse', + encode( + _: MsgOverwriteUnbondingRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteUnbondingRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteUnbondingRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgOverwriteUnbondingRecordResponse { + return {}; + }, + toJSON( + _: MsgOverwriteUnbondingRecordResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgOverwriteUnbondingRecordResponse { + const message = createBaseMsgOverwriteUnbondingRecordResponse(); + return message; + }, + fromProtoMsg( + message: MsgOverwriteUnbondingRecordResponseProtoMsg, + ): MsgOverwriteUnbondingRecordResponse { + return MsgOverwriteUnbondingRecordResponse.decode(message.value); + }, + toProto(message: MsgOverwriteUnbondingRecordResponse): Uint8Array { + return MsgOverwriteUnbondingRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteUnbondingRecordResponse, + ): MsgOverwriteUnbondingRecordResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgOverwriteUnbondingRecordResponse', + value: MsgOverwriteUnbondingRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteRedemptionRecord(): MsgOverwriteRedemptionRecord { + return { + creator: '', + redemptionRecord: undefined, + }; +} +export const MsgOverwriteRedemptionRecord = { + typeUrl: '/stride.stakedym.MsgOverwriteRedemptionRecord', + encode( + message: MsgOverwriteRedemptionRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.redemptionRecord !== undefined) { + RedemptionRecord.encode( + message.redemptionRecord, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteRedemptionRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteRedemptionRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.redemptionRecord = RedemptionRecord.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgOverwriteRedemptionRecord { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + redemptionRecord: isSet(object.redemptionRecord) + ? RedemptionRecord.fromJSON(object.redemptionRecord) + : undefined, + }; + }, + toJSON( + message: MsgOverwriteRedemptionRecord, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.redemptionRecord !== undefined && + (obj.redemptionRecord = message.redemptionRecord + ? RedemptionRecord.toJSON(message.redemptionRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): MsgOverwriteRedemptionRecord { + const message = createBaseMsgOverwriteRedemptionRecord(); + message.creator = object.creator ?? ''; + message.redemptionRecord = + object.redemptionRecord !== undefined && object.redemptionRecord !== null + ? RedemptionRecord.fromPartial(object.redemptionRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgOverwriteRedemptionRecordProtoMsg, + ): MsgOverwriteRedemptionRecord { + return MsgOverwriteRedemptionRecord.decode(message.value); + }, + toProto(message: MsgOverwriteRedemptionRecord): Uint8Array { + return MsgOverwriteRedemptionRecord.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteRedemptionRecord, + ): MsgOverwriteRedemptionRecordProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgOverwriteRedemptionRecord', + value: MsgOverwriteRedemptionRecord.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteRedemptionRecordResponse(): MsgOverwriteRedemptionRecordResponse { + return {}; +} +export const MsgOverwriteRedemptionRecordResponse = { + typeUrl: '/stride.stakedym.MsgOverwriteRedemptionRecordResponse', + encode( + _: MsgOverwriteRedemptionRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteRedemptionRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteRedemptionRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgOverwriteRedemptionRecordResponse { + return {}; + }, + toJSON( + _: MsgOverwriteRedemptionRecordResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgOverwriteRedemptionRecordResponse { + const message = createBaseMsgOverwriteRedemptionRecordResponse(); + return message; + }, + fromProtoMsg( + message: MsgOverwriteRedemptionRecordResponseProtoMsg, + ): MsgOverwriteRedemptionRecordResponse { + return MsgOverwriteRedemptionRecordResponse.decode(message.value); + }, + toProto(message: MsgOverwriteRedemptionRecordResponse): Uint8Array { + return MsgOverwriteRedemptionRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteRedemptionRecordResponse, + ): MsgOverwriteRedemptionRecordResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgOverwriteRedemptionRecordResponse', + value: MsgOverwriteRedemptionRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgSetOperatorAddress(): MsgSetOperatorAddress { + return { + signer: '', + operator: '', + }; +} +export const MsgSetOperatorAddress = { + typeUrl: '/stride.stakedym.MsgSetOperatorAddress', + encode( + message: MsgSetOperatorAddress, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.signer !== '') { + writer.uint32(10).string(message.signer); + } + if (message.operator !== '') { + writer.uint32(18).string(message.operator); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSetOperatorAddress { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSetOperatorAddress(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.signer = reader.string(); + break; + case 2: + message.operator = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgSetOperatorAddress { + return { + signer: isSet(object.signer) ? String(object.signer) : '', + operator: isSet(object.operator) ? String(object.operator) : '', + }; + }, + toJSON(message: MsgSetOperatorAddress): JsonSafe { + const obj: any = {}; + message.signer !== undefined && (obj.signer = message.signer); + message.operator !== undefined && (obj.operator = message.operator); + return obj; + }, + fromPartial(object: Partial): MsgSetOperatorAddress { + const message = createBaseMsgSetOperatorAddress(); + message.signer = object.signer ?? ''; + message.operator = object.operator ?? ''; + return message; + }, + fromProtoMsg(message: MsgSetOperatorAddressProtoMsg): MsgSetOperatorAddress { + return MsgSetOperatorAddress.decode(message.value); + }, + toProto(message: MsgSetOperatorAddress): Uint8Array { + return MsgSetOperatorAddress.encode(message).finish(); + }, + toProtoMsg(message: MsgSetOperatorAddress): MsgSetOperatorAddressProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgSetOperatorAddress', + value: MsgSetOperatorAddress.encode(message).finish(), + }; + }, +}; +function createBaseMsgSetOperatorAddressResponse(): MsgSetOperatorAddressResponse { + return {}; +} +export const MsgSetOperatorAddressResponse = { + typeUrl: '/stride.stakedym.MsgSetOperatorAddressResponse', + encode( + _: MsgSetOperatorAddressResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSetOperatorAddressResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSetOperatorAddressResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgSetOperatorAddressResponse { + return {}; + }, + toJSON( + _: MsgSetOperatorAddressResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgSetOperatorAddressResponse { + const message = createBaseMsgSetOperatorAddressResponse(); + return message; + }, + fromProtoMsg( + message: MsgSetOperatorAddressResponseProtoMsg, + ): MsgSetOperatorAddressResponse { + return MsgSetOperatorAddressResponse.decode(message.value); + }, + toProto(message: MsgSetOperatorAddressResponse): Uint8Array { + return MsgSetOperatorAddressResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgSetOperatorAddressResponse, + ): MsgSetOperatorAddressResponseProtoMsg { + return { + typeUrl: '/stride.stakedym.MsgSetOperatorAddressResponse', + value: MsgSetOperatorAddressResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/address_unbonding.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/address_unbonding.ts new file mode 100644 index 00000000000..0bc732f69e0 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/address_unbonding.ts @@ -0,0 +1,160 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface AddressUnbonding { + address: string; + receiver: string; + unbondingEstimatedTime: string; + amount: string; + denom: string; + claimIsPending: boolean; + epochNumber: bigint; +} +export interface AddressUnbondingProtoMsg { + typeUrl: '/stride.stakeibc.AddressUnbonding'; + value: Uint8Array; +} +export interface AddressUnbondingSDKType { + address: string; + receiver: string; + unbonding_estimated_time: string; + amount: string; + denom: string; + claim_is_pending: boolean; + epoch_number: bigint; +} +function createBaseAddressUnbonding(): AddressUnbonding { + return { + address: '', + receiver: '', + unbondingEstimatedTime: '', + amount: '', + denom: '', + claimIsPending: false, + epochNumber: BigInt(0), + }; +} +export const AddressUnbonding = { + typeUrl: '/stride.stakeibc.AddressUnbonding', + encode( + message: AddressUnbonding, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.address !== '') { + writer.uint32(10).string(message.address); + } + if (message.receiver !== '') { + writer.uint32(18).string(message.receiver); + } + if (message.unbondingEstimatedTime !== '') { + writer.uint32(26).string(message.unbondingEstimatedTime); + } + if (message.amount !== '') { + writer.uint32(34).string(message.amount); + } + if (message.denom !== '') { + writer.uint32(42).string(message.denom); + } + if (message.claimIsPending === true) { + writer.uint32(64).bool(message.claimIsPending); + } + if (message.epochNumber !== BigInt(0)) { + writer.uint32(72).uint64(message.epochNumber); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): AddressUnbonding { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseAddressUnbonding(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.receiver = reader.string(); + break; + case 3: + message.unbondingEstimatedTime = reader.string(); + break; + case 4: + message.amount = reader.string(); + break; + case 5: + message.denom = reader.string(); + break; + case 8: + message.claimIsPending = reader.bool(); + break; + case 9: + message.epochNumber = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): AddressUnbonding { + return { + address: isSet(object.address) ? String(object.address) : '', + receiver: isSet(object.receiver) ? String(object.receiver) : '', + unbondingEstimatedTime: isSet(object.unbondingEstimatedTime) + ? String(object.unbondingEstimatedTime) + : '', + amount: isSet(object.amount) ? String(object.amount) : '', + denom: isSet(object.denom) ? String(object.denom) : '', + claimIsPending: isSet(object.claimIsPending) + ? Boolean(object.claimIsPending) + : false, + epochNumber: isSet(object.epochNumber) + ? BigInt(object.epochNumber.toString()) + : BigInt(0), + }; + }, + toJSON(message: AddressUnbonding): JsonSafe { + const obj: any = {}; + message.address !== undefined && (obj.address = message.address); + message.receiver !== undefined && (obj.receiver = message.receiver); + message.unbondingEstimatedTime !== undefined && + (obj.unbondingEstimatedTime = message.unbondingEstimatedTime); + message.amount !== undefined && (obj.amount = message.amount); + message.denom !== undefined && (obj.denom = message.denom); + message.claimIsPending !== undefined && + (obj.claimIsPending = message.claimIsPending); + message.epochNumber !== undefined && + (obj.epochNumber = (message.epochNumber || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): AddressUnbonding { + const message = createBaseAddressUnbonding(); + message.address = object.address ?? ''; + message.receiver = object.receiver ?? ''; + message.unbondingEstimatedTime = object.unbondingEstimatedTime ?? ''; + message.amount = object.amount ?? ''; + message.denom = object.denom ?? ''; + message.claimIsPending = object.claimIsPending ?? false; + message.epochNumber = + object.epochNumber !== undefined && object.epochNumber !== null + ? BigInt(object.epochNumber.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: AddressUnbondingProtoMsg): AddressUnbonding { + return AddressUnbonding.decode(message.value); + }, + toProto(message: AddressUnbonding): Uint8Array { + return AddressUnbonding.encode(message).finish(); + }, + toProtoMsg(message: AddressUnbonding): AddressUnbondingProtoMsg { + return { + typeUrl: '/stride.stakeibc.AddressUnbonding', + value: AddressUnbonding.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/callbacks.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/callbacks.ts new file mode 100644 index 00000000000..25cbe456a6c --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/callbacks.ts @@ -0,0 +1,1518 @@ +//@ts-nocheck +import { Coin, type CoinSDKType } from '../../cosmos/base/v1beta1/coin.js'; +import { + LSMTokenDeposit, + type LSMTokenDepositSDKType, +} from '../records/records.js'; +import { HostZone, type HostZoneSDKType } from './host_zone.js'; +import { Validator, type ValidatorSDKType } from './validator.js'; +import { + ICAAccountType, + iCAAccountTypeFromJSON, + iCAAccountTypeToJSON, +} from './ica_account.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface SplitDelegation { + validator: string; + amount: string; +} +export interface SplitDelegationProtoMsg { + typeUrl: '/stride.stakeibc.SplitDelegation'; + value: Uint8Array; +} +export interface SplitDelegationSDKType { + validator: string; + amount: string; +} +export interface SplitUndelegation { + validator: string; + nativeTokenAmount: string; +} +export interface SplitUndelegationProtoMsg { + typeUrl: '/stride.stakeibc.SplitUndelegation'; + value: Uint8Array; +} +export interface SplitUndelegationSDKType { + validator: string; + native_token_amount: string; +} +export interface DelegateCallback { + hostZoneId: string; + depositRecordId: bigint; + splitDelegations: SplitDelegation[]; +} +export interface DelegateCallbackProtoMsg { + typeUrl: '/stride.stakeibc.DelegateCallback'; + value: Uint8Array; +} +export interface DelegateCallbackSDKType { + host_zone_id: string; + deposit_record_id: bigint; + split_delegations: SplitDelegationSDKType[]; +} +export interface ClaimCallback { + userRedemptionRecordId: string; + chainId: string; + epochNumber: bigint; +} +export interface ClaimCallbackProtoMsg { + typeUrl: '/stride.stakeibc.ClaimCallback'; + value: Uint8Array; +} +export interface ClaimCallbackSDKType { + user_redemption_record_id: string; + chain_id: string; + epoch_number: bigint; +} +export interface ReinvestCallback { + reinvestAmount: Coin; + hostZoneId: string; +} +export interface ReinvestCallbackProtoMsg { + typeUrl: '/stride.stakeibc.ReinvestCallback'; + value: Uint8Array; +} +export interface ReinvestCallbackSDKType { + reinvest_amount: CoinSDKType; + host_zone_id: string; +} +export interface UndelegateCallback { + hostZoneId: string; + splitUndelegations: SplitUndelegation[]; + epochUnbondingRecordIds: bigint[]; +} +export interface UndelegateCallbackProtoMsg { + typeUrl: '/stride.stakeibc.UndelegateCallback'; + value: Uint8Array; +} +export interface UndelegateCallbackSDKType { + host_zone_id: string; + split_undelegations: SplitUndelegationSDKType[]; + epoch_unbonding_record_ids: bigint[]; +} +export interface RedemptionCallback { + hostZoneId: string; + epochUnbondingRecordIds: bigint[]; +} +export interface RedemptionCallbackProtoMsg { + typeUrl: '/stride.stakeibc.RedemptionCallback'; + value: Uint8Array; +} +export interface RedemptionCallbackSDKType { + host_zone_id: string; + epoch_unbonding_record_ids: bigint[]; +} +export interface Rebalancing { + srcValidator: string; + dstValidator: string; + amt: string; +} +export interface RebalancingProtoMsg { + typeUrl: '/stride.stakeibc.Rebalancing'; + value: Uint8Array; +} +export interface RebalancingSDKType { + src_validator: string; + dst_validator: string; + amt: string; +} +export interface RebalanceCallback { + hostZoneId: string; + rebalancings: Rebalancing[]; +} +export interface RebalanceCallbackProtoMsg { + typeUrl: '/stride.stakeibc.RebalanceCallback'; + value: Uint8Array; +} +export interface RebalanceCallbackSDKType { + host_zone_id: string; + rebalancings: RebalancingSDKType[]; +} +export interface DetokenizeSharesCallback { + deposit?: LSMTokenDeposit; +} +export interface DetokenizeSharesCallbackProtoMsg { + typeUrl: '/stride.stakeibc.DetokenizeSharesCallback'; + value: Uint8Array; +} +export interface DetokenizeSharesCallbackSDKType { + deposit?: LSMTokenDepositSDKType; +} +export interface LSMLiquidStake { + deposit?: LSMTokenDeposit; + hostZone?: HostZone; + validator?: Validator; +} +export interface LSMLiquidStakeProtoMsg { + typeUrl: '/stride.stakeibc.LSMLiquidStake'; + value: Uint8Array; +} +export interface LSMLiquidStakeSDKType { + deposit?: LSMTokenDepositSDKType; + host_zone?: HostZoneSDKType; + validator?: ValidatorSDKType; +} +export interface ValidatorSharesToTokensQueryCallback { + lsmLiquidStake?: LSMLiquidStake; +} +export interface ValidatorSharesToTokensQueryCallbackProtoMsg { + typeUrl: '/stride.stakeibc.ValidatorSharesToTokensQueryCallback'; + value: Uint8Array; +} +export interface ValidatorSharesToTokensQueryCallbackSDKType { + lsm_liquid_stake?: LSMLiquidStakeSDKType; +} +export interface DelegatorSharesQueryCallback { + /** Validator delegation at the time the query is submitted */ + initialValidatorDelegation: string; +} +export interface DelegatorSharesQueryCallbackProtoMsg { + typeUrl: '/stride.stakeibc.DelegatorSharesQueryCallback'; + value: Uint8Array; +} +export interface DelegatorSharesQueryCallbackSDKType { + initial_validator_delegation: string; +} +export interface CommunityPoolBalanceQueryCallback { + icaType: ICAAccountType; + denom: string; +} +export interface CommunityPoolBalanceQueryCallbackProtoMsg { + typeUrl: '/stride.stakeibc.CommunityPoolBalanceQueryCallback'; + value: Uint8Array; +} +export interface CommunityPoolBalanceQueryCallbackSDKType { + ica_type: ICAAccountType; + denom: string; +} +export interface TradeRouteCallback { + rewardDenom: string; + hostDenom: string; +} +export interface TradeRouteCallbackProtoMsg { + typeUrl: '/stride.stakeibc.TradeRouteCallback'; + value: Uint8Array; +} +export interface TradeRouteCallbackSDKType { + reward_denom: string; + host_denom: string; +} +function createBaseSplitDelegation(): SplitDelegation { + return { + validator: '', + amount: '', + }; +} +export const SplitDelegation = { + typeUrl: '/stride.stakeibc.SplitDelegation', + encode( + message: SplitDelegation, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.validator !== '') { + writer.uint32(10).string(message.validator); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): SplitDelegation { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSplitDelegation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.validator = reader.string(); + break; + case 2: + message.amount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): SplitDelegation { + return { + validator: isSet(object.validator) ? String(object.validator) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + }; + }, + toJSON(message: SplitDelegation): JsonSafe { + const obj: any = {}; + message.validator !== undefined && (obj.validator = message.validator); + message.amount !== undefined && (obj.amount = message.amount); + return obj; + }, + fromPartial(object: Partial): SplitDelegation { + const message = createBaseSplitDelegation(); + message.validator = object.validator ?? ''; + message.amount = object.amount ?? ''; + return message; + }, + fromProtoMsg(message: SplitDelegationProtoMsg): SplitDelegation { + return SplitDelegation.decode(message.value); + }, + toProto(message: SplitDelegation): Uint8Array { + return SplitDelegation.encode(message).finish(); + }, + toProtoMsg(message: SplitDelegation): SplitDelegationProtoMsg { + return { + typeUrl: '/stride.stakeibc.SplitDelegation', + value: SplitDelegation.encode(message).finish(), + }; + }, +}; +function createBaseSplitUndelegation(): SplitUndelegation { + return { + validator: '', + nativeTokenAmount: '', + }; +} +export const SplitUndelegation = { + typeUrl: '/stride.stakeibc.SplitUndelegation', + encode( + message: SplitUndelegation, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.validator !== '') { + writer.uint32(10).string(message.validator); + } + if (message.nativeTokenAmount !== '') { + writer.uint32(18).string(message.nativeTokenAmount); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): SplitUndelegation { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSplitUndelegation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.validator = reader.string(); + break; + case 2: + message.nativeTokenAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): SplitUndelegation { + return { + validator: isSet(object.validator) ? String(object.validator) : '', + nativeTokenAmount: isSet(object.nativeTokenAmount) + ? String(object.nativeTokenAmount) + : '', + }; + }, + toJSON(message: SplitUndelegation): JsonSafe { + const obj: any = {}; + message.validator !== undefined && (obj.validator = message.validator); + message.nativeTokenAmount !== undefined && + (obj.nativeTokenAmount = message.nativeTokenAmount); + return obj; + }, + fromPartial(object: Partial): SplitUndelegation { + const message = createBaseSplitUndelegation(); + message.validator = object.validator ?? ''; + message.nativeTokenAmount = object.nativeTokenAmount ?? ''; + return message; + }, + fromProtoMsg(message: SplitUndelegationProtoMsg): SplitUndelegation { + return SplitUndelegation.decode(message.value); + }, + toProto(message: SplitUndelegation): Uint8Array { + return SplitUndelegation.encode(message).finish(); + }, + toProtoMsg(message: SplitUndelegation): SplitUndelegationProtoMsg { + return { + typeUrl: '/stride.stakeibc.SplitUndelegation', + value: SplitUndelegation.encode(message).finish(), + }; + }, +}; +function createBaseDelegateCallback(): DelegateCallback { + return { + hostZoneId: '', + depositRecordId: BigInt(0), + splitDelegations: [], + }; +} +export const DelegateCallback = { + typeUrl: '/stride.stakeibc.DelegateCallback', + encode( + message: DelegateCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.hostZoneId !== '') { + writer.uint32(10).string(message.hostZoneId); + } + if (message.depositRecordId !== BigInt(0)) { + writer.uint32(16).uint64(message.depositRecordId); + } + for (const v of message.splitDelegations) { + SplitDelegation.encode(v!, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): DelegateCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDelegateCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZoneId = reader.string(); + break; + case 2: + message.depositRecordId = reader.uint64(); + break; + case 3: + message.splitDelegations.push( + SplitDelegation.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): DelegateCallback { + return { + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + depositRecordId: isSet(object.depositRecordId) + ? BigInt(object.depositRecordId.toString()) + : BigInt(0), + splitDelegations: Array.isArray(object?.splitDelegations) + ? object.splitDelegations.map((e: any) => SplitDelegation.fromJSON(e)) + : [], + }; + }, + toJSON(message: DelegateCallback): JsonSafe { + const obj: any = {}; + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + message.depositRecordId !== undefined && + (obj.depositRecordId = (message.depositRecordId || BigInt(0)).toString()); + if (message.splitDelegations) { + obj.splitDelegations = message.splitDelegations.map(e => + e ? SplitDelegation.toJSON(e) : undefined, + ); + } else { + obj.splitDelegations = []; + } + return obj; + }, + fromPartial(object: Partial): DelegateCallback { + const message = createBaseDelegateCallback(); + message.hostZoneId = object.hostZoneId ?? ''; + message.depositRecordId = + object.depositRecordId !== undefined && object.depositRecordId !== null + ? BigInt(object.depositRecordId.toString()) + : BigInt(0); + message.splitDelegations = + object.splitDelegations?.map(e => SplitDelegation.fromPartial(e)) || []; + return message; + }, + fromProtoMsg(message: DelegateCallbackProtoMsg): DelegateCallback { + return DelegateCallback.decode(message.value); + }, + toProto(message: DelegateCallback): Uint8Array { + return DelegateCallback.encode(message).finish(); + }, + toProtoMsg(message: DelegateCallback): DelegateCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.DelegateCallback', + value: DelegateCallback.encode(message).finish(), + }; + }, +}; +function createBaseClaimCallback(): ClaimCallback { + return { + userRedemptionRecordId: '', + chainId: '', + epochNumber: BigInt(0), + }; +} +export const ClaimCallback = { + typeUrl: '/stride.stakeibc.ClaimCallback', + encode( + message: ClaimCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.userRedemptionRecordId !== '') { + writer.uint32(10).string(message.userRedemptionRecordId); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.epochNumber !== BigInt(0)) { + writer.uint32(24).uint64(message.epochNumber); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): ClaimCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseClaimCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.userRedemptionRecordId = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.epochNumber = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): ClaimCallback { + return { + userRedemptionRecordId: isSet(object.userRedemptionRecordId) + ? String(object.userRedemptionRecordId) + : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + epochNumber: isSet(object.epochNumber) + ? BigInt(object.epochNumber.toString()) + : BigInt(0), + }; + }, + toJSON(message: ClaimCallback): JsonSafe { + const obj: any = {}; + message.userRedemptionRecordId !== undefined && + (obj.userRedemptionRecordId = message.userRedemptionRecordId); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.epochNumber !== undefined && + (obj.epochNumber = (message.epochNumber || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): ClaimCallback { + const message = createBaseClaimCallback(); + message.userRedemptionRecordId = object.userRedemptionRecordId ?? ''; + message.chainId = object.chainId ?? ''; + message.epochNumber = + object.epochNumber !== undefined && object.epochNumber !== null + ? BigInt(object.epochNumber.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: ClaimCallbackProtoMsg): ClaimCallback { + return ClaimCallback.decode(message.value); + }, + toProto(message: ClaimCallback): Uint8Array { + return ClaimCallback.encode(message).finish(); + }, + toProtoMsg(message: ClaimCallback): ClaimCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.ClaimCallback', + value: ClaimCallback.encode(message).finish(), + }; + }, +}; +function createBaseReinvestCallback(): ReinvestCallback { + return { + reinvestAmount: Coin.fromPartial({}), + hostZoneId: '', + }; +} +export const ReinvestCallback = { + typeUrl: '/stride.stakeibc.ReinvestCallback', + encode( + message: ReinvestCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.reinvestAmount !== undefined) { + Coin.encode(message.reinvestAmount, writer.uint32(10).fork()).ldelim(); + } + if (message.hostZoneId !== '') { + writer.uint32(26).string(message.hostZoneId); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): ReinvestCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseReinvestCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.reinvestAmount = Coin.decode(reader, reader.uint32()); + break; + case 3: + message.hostZoneId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): ReinvestCallback { + return { + reinvestAmount: isSet(object.reinvestAmount) + ? Coin.fromJSON(object.reinvestAmount) + : undefined, + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + }; + }, + toJSON(message: ReinvestCallback): JsonSafe { + const obj: any = {}; + message.reinvestAmount !== undefined && + (obj.reinvestAmount = message.reinvestAmount + ? Coin.toJSON(message.reinvestAmount) + : undefined); + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + return obj; + }, + fromPartial(object: Partial): ReinvestCallback { + const message = createBaseReinvestCallback(); + message.reinvestAmount = + object.reinvestAmount !== undefined && object.reinvestAmount !== null + ? Coin.fromPartial(object.reinvestAmount) + : undefined; + message.hostZoneId = object.hostZoneId ?? ''; + return message; + }, + fromProtoMsg(message: ReinvestCallbackProtoMsg): ReinvestCallback { + return ReinvestCallback.decode(message.value); + }, + toProto(message: ReinvestCallback): Uint8Array { + return ReinvestCallback.encode(message).finish(); + }, + toProtoMsg(message: ReinvestCallback): ReinvestCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.ReinvestCallback', + value: ReinvestCallback.encode(message).finish(), + }; + }, +}; +function createBaseUndelegateCallback(): UndelegateCallback { + return { + hostZoneId: '', + splitUndelegations: [], + epochUnbondingRecordIds: [], + }; +} +export const UndelegateCallback = { + typeUrl: '/stride.stakeibc.UndelegateCallback', + encode( + message: UndelegateCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.hostZoneId !== '') { + writer.uint32(10).string(message.hostZoneId); + } + for (const v of message.splitUndelegations) { + SplitUndelegation.encode(v!, writer.uint32(18).fork()).ldelim(); + } + writer.uint32(26).fork(); + for (const v of message.epochUnbondingRecordIds) { + writer.uint64(v); + } + writer.ldelim(); + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): UndelegateCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUndelegateCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZoneId = reader.string(); + break; + case 2: + message.splitUndelegations.push( + SplitUndelegation.decode(reader, reader.uint32()), + ); + break; + case 3: + if ((tag & 7) === 2) { + const end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) { + message.epochUnbondingRecordIds.push(reader.uint64()); + } + } else { + message.epochUnbondingRecordIds.push(reader.uint64()); + } + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): UndelegateCallback { + return { + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + splitUndelegations: Array.isArray(object?.splitUndelegations) + ? object.splitUndelegations.map((e: any) => + SplitUndelegation.fromJSON(e), + ) + : [], + epochUnbondingRecordIds: Array.isArray(object?.epochUnbondingRecordIds) + ? object.epochUnbondingRecordIds.map((e: any) => BigInt(e.toString())) + : [], + }; + }, + toJSON(message: UndelegateCallback): JsonSafe { + const obj: any = {}; + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + if (message.splitUndelegations) { + obj.splitUndelegations = message.splitUndelegations.map(e => + e ? SplitUndelegation.toJSON(e) : undefined, + ); + } else { + obj.splitUndelegations = []; + } + if (message.epochUnbondingRecordIds) { + obj.epochUnbondingRecordIds = message.epochUnbondingRecordIds.map(e => + (e || BigInt(0)).toString(), + ); + } else { + obj.epochUnbondingRecordIds = []; + } + return obj; + }, + fromPartial(object: Partial): UndelegateCallback { + const message = createBaseUndelegateCallback(); + message.hostZoneId = object.hostZoneId ?? ''; + message.splitUndelegations = + object.splitUndelegations?.map(e => SplitUndelegation.fromPartial(e)) || + []; + message.epochUnbondingRecordIds = + object.epochUnbondingRecordIds?.map(e => BigInt(e.toString())) || []; + return message; + }, + fromProtoMsg(message: UndelegateCallbackProtoMsg): UndelegateCallback { + return UndelegateCallback.decode(message.value); + }, + toProto(message: UndelegateCallback): Uint8Array { + return UndelegateCallback.encode(message).finish(); + }, + toProtoMsg(message: UndelegateCallback): UndelegateCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.UndelegateCallback', + value: UndelegateCallback.encode(message).finish(), + }; + }, +}; +function createBaseRedemptionCallback(): RedemptionCallback { + return { + hostZoneId: '', + epochUnbondingRecordIds: [], + }; +} +export const RedemptionCallback = { + typeUrl: '/stride.stakeibc.RedemptionCallback', + encode( + message: RedemptionCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.hostZoneId !== '') { + writer.uint32(10).string(message.hostZoneId); + } + writer.uint32(18).fork(); + for (const v of message.epochUnbondingRecordIds) { + writer.uint64(v); + } + writer.ldelim(); + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): RedemptionCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRedemptionCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZoneId = reader.string(); + break; + case 2: + if ((tag & 7) === 2) { + const end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) { + message.epochUnbondingRecordIds.push(reader.uint64()); + } + } else { + message.epochUnbondingRecordIds.push(reader.uint64()); + } + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RedemptionCallback { + return { + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + epochUnbondingRecordIds: Array.isArray(object?.epochUnbondingRecordIds) + ? object.epochUnbondingRecordIds.map((e: any) => BigInt(e.toString())) + : [], + }; + }, + toJSON(message: RedemptionCallback): JsonSafe { + const obj: any = {}; + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + if (message.epochUnbondingRecordIds) { + obj.epochUnbondingRecordIds = message.epochUnbondingRecordIds.map(e => + (e || BigInt(0)).toString(), + ); + } else { + obj.epochUnbondingRecordIds = []; + } + return obj; + }, + fromPartial(object: Partial): RedemptionCallback { + const message = createBaseRedemptionCallback(); + message.hostZoneId = object.hostZoneId ?? ''; + message.epochUnbondingRecordIds = + object.epochUnbondingRecordIds?.map(e => BigInt(e.toString())) || []; + return message; + }, + fromProtoMsg(message: RedemptionCallbackProtoMsg): RedemptionCallback { + return RedemptionCallback.decode(message.value); + }, + toProto(message: RedemptionCallback): Uint8Array { + return RedemptionCallback.encode(message).finish(); + }, + toProtoMsg(message: RedemptionCallback): RedemptionCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.RedemptionCallback', + value: RedemptionCallback.encode(message).finish(), + }; + }, +}; +function createBaseRebalancing(): Rebalancing { + return { + srcValidator: '', + dstValidator: '', + amt: '', + }; +} +export const Rebalancing = { + typeUrl: '/stride.stakeibc.Rebalancing', + encode( + message: Rebalancing, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.srcValidator !== '') { + writer.uint32(10).string(message.srcValidator); + } + if (message.dstValidator !== '') { + writer.uint32(18).string(message.dstValidator); + } + if (message.amt !== '') { + writer.uint32(26).string(message.amt); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Rebalancing { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRebalancing(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.srcValidator = reader.string(); + break; + case 2: + message.dstValidator = reader.string(); + break; + case 3: + message.amt = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): Rebalancing { + return { + srcValidator: isSet(object.srcValidator) + ? String(object.srcValidator) + : '', + dstValidator: isSet(object.dstValidator) + ? String(object.dstValidator) + : '', + amt: isSet(object.amt) ? String(object.amt) : '', + }; + }, + toJSON(message: Rebalancing): JsonSafe { + const obj: any = {}; + message.srcValidator !== undefined && + (obj.srcValidator = message.srcValidator); + message.dstValidator !== undefined && + (obj.dstValidator = message.dstValidator); + message.amt !== undefined && (obj.amt = message.amt); + return obj; + }, + fromPartial(object: Partial): Rebalancing { + const message = createBaseRebalancing(); + message.srcValidator = object.srcValidator ?? ''; + message.dstValidator = object.dstValidator ?? ''; + message.amt = object.amt ?? ''; + return message; + }, + fromProtoMsg(message: RebalancingProtoMsg): Rebalancing { + return Rebalancing.decode(message.value); + }, + toProto(message: Rebalancing): Uint8Array { + return Rebalancing.encode(message).finish(); + }, + toProtoMsg(message: Rebalancing): RebalancingProtoMsg { + return { + typeUrl: '/stride.stakeibc.Rebalancing', + value: Rebalancing.encode(message).finish(), + }; + }, +}; +function createBaseRebalanceCallback(): RebalanceCallback { + return { + hostZoneId: '', + rebalancings: [], + }; +} +export const RebalanceCallback = { + typeUrl: '/stride.stakeibc.RebalanceCallback', + encode( + message: RebalanceCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.hostZoneId !== '') { + writer.uint32(10).string(message.hostZoneId); + } + for (const v of message.rebalancings) { + Rebalancing.encode(v!, writer.uint32(18).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): RebalanceCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRebalanceCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZoneId = reader.string(); + break; + case 2: + message.rebalancings.push( + Rebalancing.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RebalanceCallback { + return { + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + rebalancings: Array.isArray(object?.rebalancings) + ? object.rebalancings.map((e: any) => Rebalancing.fromJSON(e)) + : [], + }; + }, + toJSON(message: RebalanceCallback): JsonSafe { + const obj: any = {}; + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + if (message.rebalancings) { + obj.rebalancings = message.rebalancings.map(e => + e ? Rebalancing.toJSON(e) : undefined, + ); + } else { + obj.rebalancings = []; + } + return obj; + }, + fromPartial(object: Partial): RebalanceCallback { + const message = createBaseRebalanceCallback(); + message.hostZoneId = object.hostZoneId ?? ''; + message.rebalancings = + object.rebalancings?.map(e => Rebalancing.fromPartial(e)) || []; + return message; + }, + fromProtoMsg(message: RebalanceCallbackProtoMsg): RebalanceCallback { + return RebalanceCallback.decode(message.value); + }, + toProto(message: RebalanceCallback): Uint8Array { + return RebalanceCallback.encode(message).finish(); + }, + toProtoMsg(message: RebalanceCallback): RebalanceCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.RebalanceCallback', + value: RebalanceCallback.encode(message).finish(), + }; + }, +}; +function createBaseDetokenizeSharesCallback(): DetokenizeSharesCallback { + return { + deposit: undefined, + }; +} +export const DetokenizeSharesCallback = { + typeUrl: '/stride.stakeibc.DetokenizeSharesCallback', + encode( + message: DetokenizeSharesCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.deposit !== undefined) { + LSMTokenDeposit.encode( + message.deposit, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): DetokenizeSharesCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDetokenizeSharesCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.deposit = LSMTokenDeposit.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): DetokenizeSharesCallback { + return { + deposit: isSet(object.deposit) + ? LSMTokenDeposit.fromJSON(object.deposit) + : undefined, + }; + }, + toJSON( + message: DetokenizeSharesCallback, + ): JsonSafe { + const obj: any = {}; + message.deposit !== undefined && + (obj.deposit = message.deposit + ? LSMTokenDeposit.toJSON(message.deposit) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): DetokenizeSharesCallback { + const message = createBaseDetokenizeSharesCallback(); + message.deposit = + object.deposit !== undefined && object.deposit !== null + ? LSMTokenDeposit.fromPartial(object.deposit) + : undefined; + return message; + }, + fromProtoMsg( + message: DetokenizeSharesCallbackProtoMsg, + ): DetokenizeSharesCallback { + return DetokenizeSharesCallback.decode(message.value); + }, + toProto(message: DetokenizeSharesCallback): Uint8Array { + return DetokenizeSharesCallback.encode(message).finish(); + }, + toProtoMsg( + message: DetokenizeSharesCallback, + ): DetokenizeSharesCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.DetokenizeSharesCallback', + value: DetokenizeSharesCallback.encode(message).finish(), + }; + }, +}; +function createBaseLSMLiquidStake(): LSMLiquidStake { + return { + deposit: undefined, + hostZone: undefined, + validator: undefined, + }; +} +export const LSMLiquidStake = { + typeUrl: '/stride.stakeibc.LSMLiquidStake', + encode( + message: LSMLiquidStake, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.deposit !== undefined) { + LSMTokenDeposit.encode( + message.deposit, + writer.uint32(10).fork(), + ).ldelim(); + } + if (message.hostZone !== undefined) { + HostZone.encode(message.hostZone, writer.uint32(18).fork()).ldelim(); + } + if (message.validator !== undefined) { + Validator.encode(message.validator, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): LSMLiquidStake { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseLSMLiquidStake(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.deposit = LSMTokenDeposit.decode(reader, reader.uint32()); + break; + case 2: + message.hostZone = HostZone.decode(reader, reader.uint32()); + break; + case 3: + message.validator = Validator.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): LSMLiquidStake { + return { + deposit: isSet(object.deposit) + ? LSMTokenDeposit.fromJSON(object.deposit) + : undefined, + hostZone: isSet(object.hostZone) + ? HostZone.fromJSON(object.hostZone) + : undefined, + validator: isSet(object.validator) + ? Validator.fromJSON(object.validator) + : undefined, + }; + }, + toJSON(message: LSMLiquidStake): JsonSafe { + const obj: any = {}; + message.deposit !== undefined && + (obj.deposit = message.deposit + ? LSMTokenDeposit.toJSON(message.deposit) + : undefined); + message.hostZone !== undefined && + (obj.hostZone = message.hostZone + ? HostZone.toJSON(message.hostZone) + : undefined); + message.validator !== undefined && + (obj.validator = message.validator + ? Validator.toJSON(message.validator) + : undefined); + return obj; + }, + fromPartial(object: Partial): LSMLiquidStake { + const message = createBaseLSMLiquidStake(); + message.deposit = + object.deposit !== undefined && object.deposit !== null + ? LSMTokenDeposit.fromPartial(object.deposit) + : undefined; + message.hostZone = + object.hostZone !== undefined && object.hostZone !== null + ? HostZone.fromPartial(object.hostZone) + : undefined; + message.validator = + object.validator !== undefined && object.validator !== null + ? Validator.fromPartial(object.validator) + : undefined; + return message; + }, + fromProtoMsg(message: LSMLiquidStakeProtoMsg): LSMLiquidStake { + return LSMLiquidStake.decode(message.value); + }, + toProto(message: LSMLiquidStake): Uint8Array { + return LSMLiquidStake.encode(message).finish(); + }, + toProtoMsg(message: LSMLiquidStake): LSMLiquidStakeProtoMsg { + return { + typeUrl: '/stride.stakeibc.LSMLiquidStake', + value: LSMLiquidStake.encode(message).finish(), + }; + }, +}; +function createBaseValidatorSharesToTokensQueryCallback(): ValidatorSharesToTokensQueryCallback { + return { + lsmLiquidStake: undefined, + }; +} +export const ValidatorSharesToTokensQueryCallback = { + typeUrl: '/stride.stakeibc.ValidatorSharesToTokensQueryCallback', + encode( + message: ValidatorSharesToTokensQueryCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.lsmLiquidStake !== undefined) { + LSMLiquidStake.encode( + message.lsmLiquidStake, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): ValidatorSharesToTokensQueryCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseValidatorSharesToTokensQueryCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.lsmLiquidStake = LSMLiquidStake.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): ValidatorSharesToTokensQueryCallback { + return { + lsmLiquidStake: isSet(object.lsmLiquidStake) + ? LSMLiquidStake.fromJSON(object.lsmLiquidStake) + : undefined, + }; + }, + toJSON( + message: ValidatorSharesToTokensQueryCallback, + ): JsonSafe { + const obj: any = {}; + message.lsmLiquidStake !== undefined && + (obj.lsmLiquidStake = message.lsmLiquidStake + ? LSMLiquidStake.toJSON(message.lsmLiquidStake) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): ValidatorSharesToTokensQueryCallback { + const message = createBaseValidatorSharesToTokensQueryCallback(); + message.lsmLiquidStake = + object.lsmLiquidStake !== undefined && object.lsmLiquidStake !== null + ? LSMLiquidStake.fromPartial(object.lsmLiquidStake) + : undefined; + return message; + }, + fromProtoMsg( + message: ValidatorSharesToTokensQueryCallbackProtoMsg, + ): ValidatorSharesToTokensQueryCallback { + return ValidatorSharesToTokensQueryCallback.decode(message.value); + }, + toProto(message: ValidatorSharesToTokensQueryCallback): Uint8Array { + return ValidatorSharesToTokensQueryCallback.encode(message).finish(); + }, + toProtoMsg( + message: ValidatorSharesToTokensQueryCallback, + ): ValidatorSharesToTokensQueryCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.ValidatorSharesToTokensQueryCallback', + value: ValidatorSharesToTokensQueryCallback.encode(message).finish(), + }; + }, +}; +function createBaseDelegatorSharesQueryCallback(): DelegatorSharesQueryCallback { + return { + initialValidatorDelegation: '', + }; +} +export const DelegatorSharesQueryCallback = { + typeUrl: '/stride.stakeibc.DelegatorSharesQueryCallback', + encode( + message: DelegatorSharesQueryCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.initialValidatorDelegation !== '') { + writer.uint32(10).string(message.initialValidatorDelegation); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): DelegatorSharesQueryCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDelegatorSharesQueryCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.initialValidatorDelegation = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): DelegatorSharesQueryCallback { + return { + initialValidatorDelegation: isSet(object.initialValidatorDelegation) + ? String(object.initialValidatorDelegation) + : '', + }; + }, + toJSON( + message: DelegatorSharesQueryCallback, + ): JsonSafe { + const obj: any = {}; + message.initialValidatorDelegation !== undefined && + (obj.initialValidatorDelegation = message.initialValidatorDelegation); + return obj; + }, + fromPartial( + object: Partial, + ): DelegatorSharesQueryCallback { + const message = createBaseDelegatorSharesQueryCallback(); + message.initialValidatorDelegation = + object.initialValidatorDelegation ?? ''; + return message; + }, + fromProtoMsg( + message: DelegatorSharesQueryCallbackProtoMsg, + ): DelegatorSharesQueryCallback { + return DelegatorSharesQueryCallback.decode(message.value); + }, + toProto(message: DelegatorSharesQueryCallback): Uint8Array { + return DelegatorSharesQueryCallback.encode(message).finish(); + }, + toProtoMsg( + message: DelegatorSharesQueryCallback, + ): DelegatorSharesQueryCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.DelegatorSharesQueryCallback', + value: DelegatorSharesQueryCallback.encode(message).finish(), + }; + }, +}; +function createBaseCommunityPoolBalanceQueryCallback(): CommunityPoolBalanceQueryCallback { + return { + icaType: 0, + denom: '', + }; +} +export const CommunityPoolBalanceQueryCallback = { + typeUrl: '/stride.stakeibc.CommunityPoolBalanceQueryCallback', + encode( + message: CommunityPoolBalanceQueryCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.icaType !== 0) { + writer.uint32(8).int32(message.icaType); + } + if (message.denom !== '') { + writer.uint32(18).string(message.denom); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): CommunityPoolBalanceQueryCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseCommunityPoolBalanceQueryCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.icaType = reader.int32() as any; + break; + case 2: + message.denom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): CommunityPoolBalanceQueryCallback { + return { + icaType: isSet(object.icaType) + ? iCAAccountTypeFromJSON(object.icaType) + : -1, + denom: isSet(object.denom) ? String(object.denom) : '', + }; + }, + toJSON( + message: CommunityPoolBalanceQueryCallback, + ): JsonSafe { + const obj: any = {}; + message.icaType !== undefined && + (obj.icaType = iCAAccountTypeToJSON(message.icaType)); + message.denom !== undefined && (obj.denom = message.denom); + return obj; + }, + fromPartial( + object: Partial, + ): CommunityPoolBalanceQueryCallback { + const message = createBaseCommunityPoolBalanceQueryCallback(); + message.icaType = object.icaType ?? 0; + message.denom = object.denom ?? ''; + return message; + }, + fromProtoMsg( + message: CommunityPoolBalanceQueryCallbackProtoMsg, + ): CommunityPoolBalanceQueryCallback { + return CommunityPoolBalanceQueryCallback.decode(message.value); + }, + toProto(message: CommunityPoolBalanceQueryCallback): Uint8Array { + return CommunityPoolBalanceQueryCallback.encode(message).finish(); + }, + toProtoMsg( + message: CommunityPoolBalanceQueryCallback, + ): CommunityPoolBalanceQueryCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.CommunityPoolBalanceQueryCallback', + value: CommunityPoolBalanceQueryCallback.encode(message).finish(), + }; + }, +}; +function createBaseTradeRouteCallback(): TradeRouteCallback { + return { + rewardDenom: '', + hostDenom: '', + }; +} +export const TradeRouteCallback = { + typeUrl: '/stride.stakeibc.TradeRouteCallback', + encode( + message: TradeRouteCallback, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.rewardDenom !== '') { + writer.uint32(10).string(message.rewardDenom); + } + if (message.hostDenom !== '') { + writer.uint32(18).string(message.hostDenom); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): TradeRouteCallback { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTradeRouteCallback(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.rewardDenom = reader.string(); + break; + case 2: + message.hostDenom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TradeRouteCallback { + return { + rewardDenom: isSet(object.rewardDenom) ? String(object.rewardDenom) : '', + hostDenom: isSet(object.hostDenom) ? String(object.hostDenom) : '', + }; + }, + toJSON(message: TradeRouteCallback): JsonSafe { + const obj: any = {}; + message.rewardDenom !== undefined && + (obj.rewardDenom = message.rewardDenom); + message.hostDenom !== undefined && (obj.hostDenom = message.hostDenom); + return obj; + }, + fromPartial(object: Partial): TradeRouteCallback { + const message = createBaseTradeRouteCallback(); + message.rewardDenom = object.rewardDenom ?? ''; + message.hostDenom = object.hostDenom ?? ''; + return message; + }, + fromProtoMsg(message: TradeRouteCallbackProtoMsg): TradeRouteCallback { + return TradeRouteCallback.decode(message.value); + }, + toProto(message: TradeRouteCallback): Uint8Array { + return TradeRouteCallback.encode(message).finish(); + }, + toProtoMsg(message: TradeRouteCallback): TradeRouteCallbackProtoMsg { + return { + typeUrl: '/stride.stakeibc.TradeRouteCallback', + value: TradeRouteCallback.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/epoch_tracker.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/epoch_tracker.ts new file mode 100644 index 00000000000..cf2ea0c16e1 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/epoch_tracker.ts @@ -0,0 +1,136 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface EpochTracker { + epochIdentifier: string; + epochNumber: bigint; + nextEpochStartTime: bigint; + duration: bigint; +} +export interface EpochTrackerProtoMsg { + typeUrl: '/stride.stakeibc.EpochTracker'; + value: Uint8Array; +} +export interface EpochTrackerSDKType { + epoch_identifier: string; + epoch_number: bigint; + next_epoch_start_time: bigint; + duration: bigint; +} +function createBaseEpochTracker(): EpochTracker { + return { + epochIdentifier: '', + epochNumber: BigInt(0), + nextEpochStartTime: BigInt(0), + duration: BigInt(0), + }; +} +export const EpochTracker = { + typeUrl: '/stride.stakeibc.EpochTracker', + encode( + message: EpochTracker, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.epochIdentifier !== '') { + writer.uint32(10).string(message.epochIdentifier); + } + if (message.epochNumber !== BigInt(0)) { + writer.uint32(16).uint64(message.epochNumber); + } + if (message.nextEpochStartTime !== BigInt(0)) { + writer.uint32(24).uint64(message.nextEpochStartTime); + } + if (message.duration !== BigInt(0)) { + writer.uint32(32).uint64(message.duration); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): EpochTracker { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseEpochTracker(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochIdentifier = reader.string(); + break; + case 2: + message.epochNumber = reader.uint64(); + break; + case 3: + message.nextEpochStartTime = reader.uint64(); + break; + case 4: + message.duration = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): EpochTracker { + return { + epochIdentifier: isSet(object.epochIdentifier) + ? String(object.epochIdentifier) + : '', + epochNumber: isSet(object.epochNumber) + ? BigInt(object.epochNumber.toString()) + : BigInt(0), + nextEpochStartTime: isSet(object.nextEpochStartTime) + ? BigInt(object.nextEpochStartTime.toString()) + : BigInt(0), + duration: isSet(object.duration) + ? BigInt(object.duration.toString()) + : BigInt(0), + }; + }, + toJSON(message: EpochTracker): JsonSafe { + const obj: any = {}; + message.epochIdentifier !== undefined && + (obj.epochIdentifier = message.epochIdentifier); + message.epochNumber !== undefined && + (obj.epochNumber = (message.epochNumber || BigInt(0)).toString()); + message.nextEpochStartTime !== undefined && + (obj.nextEpochStartTime = ( + message.nextEpochStartTime || BigInt(0) + ).toString()); + message.duration !== undefined && + (obj.duration = (message.duration || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): EpochTracker { + const message = createBaseEpochTracker(); + message.epochIdentifier = object.epochIdentifier ?? ''; + message.epochNumber = + object.epochNumber !== undefined && object.epochNumber !== null + ? BigInt(object.epochNumber.toString()) + : BigInt(0); + message.nextEpochStartTime = + object.nextEpochStartTime !== undefined && + object.nextEpochStartTime !== null + ? BigInt(object.nextEpochStartTime.toString()) + : BigInt(0); + message.duration = + object.duration !== undefined && object.duration !== null + ? BigInt(object.duration.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: EpochTrackerProtoMsg): EpochTracker { + return EpochTracker.decode(message.value); + }, + toProto(message: EpochTracker): Uint8Array { + return EpochTracker.encode(message).finish(); + }, + toProtoMsg(message: EpochTracker): EpochTrackerProtoMsg { + return { + typeUrl: '/stride.stakeibc.EpochTracker', + value: EpochTracker.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/genesis.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/genesis.ts new file mode 100644 index 00000000000..8eedf22ad5c --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/genesis.ts @@ -0,0 +1,163 @@ +//@ts-nocheck +import { Params, type ParamsSDKType } from './params.js'; +import { HostZone, type HostZoneSDKType } from './host_zone.js'; +import { EpochTracker, type EpochTrackerSDKType } from './epoch_tracker.js'; +import { TradeRoute, type TradeRouteSDKType } from './trade_route.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** GenesisState defines the stakeibc module's genesis state. */ +export interface GenesisState { + params: Params; + portId: string; + hostZoneList: HostZone[]; + epochTrackerList: EpochTracker[]; + tradeRoutes: TradeRoute[]; +} +export interface GenesisStateProtoMsg { + typeUrl: '/stride.stakeibc.GenesisState'; + value: Uint8Array; +} +/** GenesisState defines the stakeibc module's genesis state. */ +export interface GenesisStateSDKType { + params: ParamsSDKType; + port_id: string; + host_zone_list: HostZoneSDKType[]; + epoch_tracker_list: EpochTrackerSDKType[]; + trade_routes: TradeRouteSDKType[]; +} +function createBaseGenesisState(): GenesisState { + return { + params: Params.fromPartial({}), + portId: '', + hostZoneList: [], + epochTrackerList: [], + tradeRoutes: [], + }; +} +export const GenesisState = { + typeUrl: '/stride.stakeibc.GenesisState', + encode( + message: GenesisState, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.params !== undefined) { + Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + if (message.portId !== '') { + writer.uint32(18).string(message.portId); + } + for (const v of message.hostZoneList) { + HostZone.encode(v!, writer.uint32(42).fork()).ldelim(); + } + for (const v of message.epochTrackerList) { + EpochTracker.encode(v!, writer.uint32(82).fork()).ldelim(); + } + for (const v of message.tradeRoutes) { + TradeRoute.encode(v!, writer.uint32(98).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): GenesisState { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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.decode(reader, reader.uint32()); + break; + case 2: + message.portId = reader.string(); + break; + case 5: + message.hostZoneList.push(HostZone.decode(reader, reader.uint32())); + break; + case 10: + message.epochTrackerList.push( + EpochTracker.decode(reader, reader.uint32()), + ); + break; + case 12: + message.tradeRoutes.push(TradeRoute.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): GenesisState { + return { + params: isSet(object.params) ? Params.fromJSON(object.params) : undefined, + portId: isSet(object.portId) ? String(object.portId) : '', + hostZoneList: Array.isArray(object?.hostZoneList) + ? object.hostZoneList.map((e: any) => HostZone.fromJSON(e)) + : [], + epochTrackerList: Array.isArray(object?.epochTrackerList) + ? object.epochTrackerList.map((e: any) => EpochTracker.fromJSON(e)) + : [], + tradeRoutes: Array.isArray(object?.tradeRoutes) + ? object.tradeRoutes.map((e: any) => TradeRoute.fromJSON(e)) + : [], + }; + }, + toJSON(message: GenesisState): JsonSafe { + const obj: any = {}; + message.params !== undefined && + (obj.params = message.params ? Params.toJSON(message.params) : undefined); + message.portId !== undefined && (obj.portId = message.portId); + if (message.hostZoneList) { + obj.hostZoneList = message.hostZoneList.map(e => + e ? HostZone.toJSON(e) : undefined, + ); + } else { + obj.hostZoneList = []; + } + if (message.epochTrackerList) { + obj.epochTrackerList = message.epochTrackerList.map(e => + e ? EpochTracker.toJSON(e) : undefined, + ); + } else { + obj.epochTrackerList = []; + } + if (message.tradeRoutes) { + obj.tradeRoutes = message.tradeRoutes.map(e => + e ? TradeRoute.toJSON(e) : undefined, + ); + } else { + obj.tradeRoutes = []; + } + return obj; + }, + fromPartial(object: Partial): GenesisState { + const message = createBaseGenesisState(); + message.params = + object.params !== undefined && object.params !== null + ? Params.fromPartial(object.params) + : undefined; + message.portId = object.portId ?? ''; + message.hostZoneList = + object.hostZoneList?.map(e => HostZone.fromPartial(e)) || []; + message.epochTrackerList = + object.epochTrackerList?.map(e => EpochTracker.fromPartial(e)) || []; + message.tradeRoutes = + object.tradeRoutes?.map(e => TradeRoute.fromPartial(e)) || []; + return message; + }, + fromProtoMsg(message: GenesisStateProtoMsg): GenesisState { + return GenesisState.decode(message.value); + }, + toProto(message: GenesisState): Uint8Array { + return GenesisState.encode(message).finish(); + }, + toProtoMsg(message: GenesisState): GenesisStateProtoMsg { + return { + typeUrl: '/stride.stakeibc.GenesisState', + value: GenesisState.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/gov.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/gov.ts new file mode 100644 index 00000000000..ec81791e3d6 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/gov.ts @@ -0,0 +1,259 @@ +//@ts-nocheck +import { Validator, type ValidatorSDKType } from './validator.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface AddValidatorsProposal { + title: string; + description: string; + hostZone: string; + validators: Validator[]; + deposit: string; +} +export interface AddValidatorsProposalProtoMsg { + typeUrl: '/stride.stakeibc.AddValidatorsProposal'; + value: Uint8Array; +} +export interface AddValidatorsProposalSDKType { + title: string; + description: string; + host_zone: string; + validators: ValidatorSDKType[]; + deposit: string; +} +export interface ToggleLSMProposal { + title: string; + description: string; + hostZone: string; + enabled: boolean; + deposit: string; +} +export interface ToggleLSMProposalProtoMsg { + typeUrl: '/stride.stakeibc.ToggleLSMProposal'; + value: Uint8Array; +} +export interface ToggleLSMProposalSDKType { + title: string; + description: string; + host_zone: string; + enabled: boolean; + deposit: string; +} +function createBaseAddValidatorsProposal(): AddValidatorsProposal { + return { + title: '', + description: '', + hostZone: '', + validators: [], + deposit: '', + }; +} +export const AddValidatorsProposal = { + typeUrl: '/stride.stakeibc.AddValidatorsProposal', + encode( + message: AddValidatorsProposal, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.title !== '') { + writer.uint32(10).string(message.title); + } + if (message.description !== '') { + writer.uint32(18).string(message.description); + } + if (message.hostZone !== '') { + writer.uint32(26).string(message.hostZone); + } + for (const v of message.validators) { + Validator.encode(v!, writer.uint32(34).fork()).ldelim(); + } + if (message.deposit !== '') { + writer.uint32(42).string(message.deposit); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): AddValidatorsProposal { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseAddValidatorsProposal(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.title = reader.string(); + break; + case 2: + message.description = reader.string(); + break; + case 3: + message.hostZone = reader.string(); + break; + case 4: + message.validators.push(Validator.decode(reader, reader.uint32())); + break; + case 5: + message.deposit = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): AddValidatorsProposal { + return { + title: isSet(object.title) ? String(object.title) : '', + description: isSet(object.description) ? String(object.description) : '', + hostZone: isSet(object.hostZone) ? String(object.hostZone) : '', + validators: Array.isArray(object?.validators) + ? object.validators.map((e: any) => Validator.fromJSON(e)) + : [], + deposit: isSet(object.deposit) ? String(object.deposit) : '', + }; + }, + toJSON(message: AddValidatorsProposal): JsonSafe { + const obj: any = {}; + message.title !== undefined && (obj.title = message.title); + message.description !== undefined && + (obj.description = message.description); + message.hostZone !== undefined && (obj.hostZone = message.hostZone); + if (message.validators) { + obj.validators = message.validators.map(e => + e ? Validator.toJSON(e) : undefined, + ); + } else { + obj.validators = []; + } + message.deposit !== undefined && (obj.deposit = message.deposit); + return obj; + }, + fromPartial(object: Partial): AddValidatorsProposal { + const message = createBaseAddValidatorsProposal(); + message.title = object.title ?? ''; + message.description = object.description ?? ''; + message.hostZone = object.hostZone ?? ''; + message.validators = + object.validators?.map(e => Validator.fromPartial(e)) || []; + message.deposit = object.deposit ?? ''; + return message; + }, + fromProtoMsg(message: AddValidatorsProposalProtoMsg): AddValidatorsProposal { + return AddValidatorsProposal.decode(message.value); + }, + toProto(message: AddValidatorsProposal): Uint8Array { + return AddValidatorsProposal.encode(message).finish(); + }, + toProtoMsg(message: AddValidatorsProposal): AddValidatorsProposalProtoMsg { + return { + typeUrl: '/stride.stakeibc.AddValidatorsProposal', + value: AddValidatorsProposal.encode(message).finish(), + }; + }, +}; +function createBaseToggleLSMProposal(): ToggleLSMProposal { + return { + title: '', + description: '', + hostZone: '', + enabled: false, + deposit: '', + }; +} +export const ToggleLSMProposal = { + typeUrl: '/stride.stakeibc.ToggleLSMProposal', + encode( + message: ToggleLSMProposal, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.title !== '') { + writer.uint32(10).string(message.title); + } + if (message.description !== '') { + writer.uint32(18).string(message.description); + } + if (message.hostZone !== '') { + writer.uint32(26).string(message.hostZone); + } + if (message.enabled === true) { + writer.uint32(32).bool(message.enabled); + } + if (message.deposit !== '') { + writer.uint32(42).string(message.deposit); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): ToggleLSMProposal { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseToggleLSMProposal(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.title = reader.string(); + break; + case 2: + message.description = reader.string(); + break; + case 3: + message.hostZone = reader.string(); + break; + case 4: + message.enabled = reader.bool(); + break; + case 5: + message.deposit = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): ToggleLSMProposal { + return { + title: isSet(object.title) ? String(object.title) : '', + description: isSet(object.description) ? String(object.description) : '', + hostZone: isSet(object.hostZone) ? String(object.hostZone) : '', + enabled: isSet(object.enabled) ? Boolean(object.enabled) : false, + deposit: isSet(object.deposit) ? String(object.deposit) : '', + }; + }, + toJSON(message: ToggleLSMProposal): JsonSafe { + const obj: any = {}; + message.title !== undefined && (obj.title = message.title); + message.description !== undefined && + (obj.description = message.description); + message.hostZone !== undefined && (obj.hostZone = message.hostZone); + message.enabled !== undefined && (obj.enabled = message.enabled); + message.deposit !== undefined && (obj.deposit = message.deposit); + return obj; + }, + fromPartial(object: Partial): ToggleLSMProposal { + const message = createBaseToggleLSMProposal(); + message.title = object.title ?? ''; + message.description = object.description ?? ''; + message.hostZone = object.hostZone ?? ''; + message.enabled = object.enabled ?? false; + message.deposit = object.deposit ?? ''; + return message; + }, + fromProtoMsg(message: ToggleLSMProposalProtoMsg): ToggleLSMProposal { + return ToggleLSMProposal.decode(message.value); + }, + toProto(message: ToggleLSMProposal): Uint8Array { + return ToggleLSMProposal.encode(message).finish(); + }, + toProtoMsg(message: ToggleLSMProposal): ToggleLSMProposalProtoMsg { + return { + typeUrl: '/stride.stakeibc.ToggleLSMProposal', + value: ToggleLSMProposal.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/host_zone.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/host_zone.ts new file mode 100644 index 00000000000..cc3ddc00175 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/host_zone.ts @@ -0,0 +1,753 @@ +//@ts-nocheck +import { Validator, type ValidatorSDKType } from './validator.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { Decimal, isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** + * CommunityPoolRebate stores the size of the community pool liquid stake + * (denominated in stTokens) and the rebate rate as a decimal + */ +export interface CommunityPoolRebate { + /** Rebate percentage as a decimal (e.g. 0.2 for 20%) */ + rebateRate: string; + /** Number of stTokens received from the community pool liquid stake */ + liquidStakedStTokenAmount: string; +} +export interface CommunityPoolRebateProtoMsg { + typeUrl: '/stride.stakeibc.CommunityPoolRebate'; + value: Uint8Array; +} +/** + * CommunityPoolRebate stores the size of the community pool liquid stake + * (denominated in stTokens) and the rebate rate as a decimal + */ +export interface CommunityPoolRebateSDKType { + rebate_rate: string; + liquid_staked_st_token_amount: string; +} +/** Core data structure to track liquid staking zones */ +export interface HostZone { + /** Chain ID of the host zone */ + chainId: string; + /** Bech32 prefix of host zone's address */ + bech32prefix: string; + /** ConnectionID from Stride to the host zone (ID is on the stride side) */ + connectionId: string; + /** Transfer Channel ID from Stride to the host zone (ID is on the stride side) */ + transferChannelId: string; + /** ibc denom of the host zone's native token on stride */ + ibcDenom: string; + /** native denom on host zone */ + hostDenom: string; + /** The unbonding period in days (e.g. 21) */ + unbondingPeriod: bigint; + /** List of validators that are delegated to */ + validators: Validator[]; + /** Address that custodies native tokens during a liquid stake */ + depositAddress: string; + /** ICA Address on the host zone responsible for collecting rewards */ + withdrawalIcaAddress: string; + /** ICA Address on the host zone responsible for commission */ + feeIcaAddress: string; + /** ICA Address on the host zone responsible for staking and unstaking */ + delegationIcaAddress: string; + /** ICA Address that receives unstaked tokens after they've finished unbonding */ + redemptionIcaAddress: string; + /** + * ICA Address that receives tokens from a community pool to liquid stake or + * redeem In the case of a liquid stake, the community pool deposits native + * tokens In the case of a redemption, the community pool deposits stTokens + */ + communityPoolDepositIcaAddress: string; + /** + * ICA Address that distributes tokens back to the community pool during a + * community pool liquid stake or redeem In the case of a liquid stake, the + * return address sends back stTokens In the case of a redemption, the return + * address sends back native tokens + */ + communityPoolReturnIcaAddress: string; + /** + * Module account on Stride that receives native tokens from the deposit ICA + * and liquid stakes them + */ + communityPoolStakeHoldingAddress: string; + /** + * Module account on Stride that receives stTokens from the deposit ICA and + * redeems them + */ + communityPoolRedeemHoldingAddress: string; + /** + * Optional community pool address to send tokens to after a community pool + * liquid stake or redemption If this address is empty, the tokens are sent to + * the main community pool + */ + communityPoolTreasuryAddress: string; + /** The total delegated balance on the host zone */ + totalDelegations: string; + /** The redemption rate from the previous epoch */ + lastRedemptionRate: string; + /** The current redemption rate */ + redemptionRate: string; + /** + * The min outer redemption rate bound - controlled only be governance + * The min inner bound cannot exceed this bound + */ + minRedemptionRate: string; + /** + * The max outer redemption rate bound - controlled only be governance + * The max inner bound cannot exceed this bound + */ + maxRedemptionRate: string; + /** + * The min minner redemption rate bound - controlled by the admin + * If the redemption rate exceeds this bound, the host zone is halted + */ + minInnerRedemptionRate: string; + /** + * The max minner redemption rate bound - controlled by the admin + * If the redemption rate exceeds this bound, the host zone is halted + */ + maxInnerRedemptionRate: string; + /** + * The max number of messages that can be sent in a delegation + * or undelegation ICA tx + */ + maxMessagesPerIcaTx: bigint; + /** Indicates whether redemptions are allowed through this module */ + redemptionsEnabled: boolean; + /** + * An optional fee rebate + * If there is no rebate for the host zone, this will be nil + */ + communityPoolRebate?: CommunityPoolRebate; + /** A boolean indicating whether the chain has LSM enabled */ + lsmLiquidStakeEnabled: boolean; + /** A boolean indicating whether the chain is currently halted */ + halted: boolean; +} +export interface HostZoneProtoMsg { + typeUrl: '/stride.stakeibc.HostZone'; + value: Uint8Array; +} +/** Core data structure to track liquid staking zones */ +export interface HostZoneSDKType { + chain_id: string; + bech32prefix: string; + connection_id: string; + transfer_channel_id: string; + ibc_denom: string; + host_denom: string; + unbonding_period: bigint; + validators: ValidatorSDKType[]; + deposit_address: string; + withdrawal_ica_address: string; + fee_ica_address: string; + delegation_ica_address: string; + redemption_ica_address: string; + community_pool_deposit_ica_address: string; + community_pool_return_ica_address: string; + community_pool_stake_holding_address: string; + community_pool_redeem_holding_address: string; + community_pool_treasury_address: string; + total_delegations: string; + last_redemption_rate: string; + redemption_rate: string; + min_redemption_rate: string; + max_redemption_rate: string; + min_inner_redemption_rate: string; + max_inner_redemption_rate: string; + max_messages_per_ica_tx: bigint; + redemptions_enabled: boolean; + community_pool_rebate?: CommunityPoolRebateSDKType; + lsm_liquid_stake_enabled: boolean; + halted: boolean; +} +function createBaseCommunityPoolRebate(): CommunityPoolRebate { + return { + rebateRate: '', + liquidStakedStTokenAmount: '', + }; +} +export const CommunityPoolRebate = { + typeUrl: '/stride.stakeibc.CommunityPoolRebate', + encode( + message: CommunityPoolRebate, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.rebateRate !== '') { + writer + .uint32(10) + .string(Decimal.fromUserInput(message.rebateRate, 18).atomics); + } + if (message.liquidStakedStTokenAmount !== '') { + writer.uint32(18).string(message.liquidStakedStTokenAmount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): CommunityPoolRebate { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseCommunityPoolRebate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.rebateRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 2: + message.liquidStakedStTokenAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): CommunityPoolRebate { + return { + rebateRate: isSet(object.rebateRate) ? String(object.rebateRate) : '', + liquidStakedStTokenAmount: isSet(object.liquidStakedStTokenAmount) + ? String(object.liquidStakedStTokenAmount) + : '', + }; + }, + toJSON(message: CommunityPoolRebate): JsonSafe { + const obj: any = {}; + message.rebateRate !== undefined && (obj.rebateRate = message.rebateRate); + message.liquidStakedStTokenAmount !== undefined && + (obj.liquidStakedStTokenAmount = message.liquidStakedStTokenAmount); + return obj; + }, + fromPartial(object: Partial): CommunityPoolRebate { + const message = createBaseCommunityPoolRebate(); + message.rebateRate = object.rebateRate ?? ''; + message.liquidStakedStTokenAmount = object.liquidStakedStTokenAmount ?? ''; + return message; + }, + fromProtoMsg(message: CommunityPoolRebateProtoMsg): CommunityPoolRebate { + return CommunityPoolRebate.decode(message.value); + }, + toProto(message: CommunityPoolRebate): Uint8Array { + return CommunityPoolRebate.encode(message).finish(); + }, + toProtoMsg(message: CommunityPoolRebate): CommunityPoolRebateProtoMsg { + return { + typeUrl: '/stride.stakeibc.CommunityPoolRebate', + value: CommunityPoolRebate.encode(message).finish(), + }; + }, +}; +function createBaseHostZone(): HostZone { + return { + chainId: '', + bech32prefix: '', + connectionId: '', + transferChannelId: '', + ibcDenom: '', + hostDenom: '', + unbondingPeriod: BigInt(0), + validators: [], + depositAddress: '', + withdrawalIcaAddress: '', + feeIcaAddress: '', + delegationIcaAddress: '', + redemptionIcaAddress: '', + communityPoolDepositIcaAddress: '', + communityPoolReturnIcaAddress: '', + communityPoolStakeHoldingAddress: '', + communityPoolRedeemHoldingAddress: '', + communityPoolTreasuryAddress: '', + totalDelegations: '', + lastRedemptionRate: '', + redemptionRate: '', + minRedemptionRate: '', + maxRedemptionRate: '', + minInnerRedemptionRate: '', + maxInnerRedemptionRate: '', + maxMessagesPerIcaTx: BigInt(0), + redemptionsEnabled: false, + communityPoolRebate: undefined, + lsmLiquidStakeEnabled: false, + halted: false, + }; +} +export const HostZone = { + typeUrl: '/stride.stakeibc.HostZone', + encode( + message: HostZone, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + if (message.bech32prefix !== '') { + writer.uint32(138).string(message.bech32prefix); + } + if (message.connectionId !== '') { + writer.uint32(18).string(message.connectionId); + } + if (message.transferChannelId !== '') { + writer.uint32(98).string(message.transferChannelId); + } + if (message.ibcDenom !== '') { + writer.uint32(66).string(message.ibcDenom); + } + if (message.hostDenom !== '') { + writer.uint32(74).string(message.hostDenom); + } + if (message.unbondingPeriod !== BigInt(0)) { + writer.uint32(208).uint64(message.unbondingPeriod); + } + for (const v of message.validators) { + Validator.encode(v!, writer.uint32(26).fork()).ldelim(); + } + if (message.depositAddress !== '') { + writer.uint32(146).string(message.depositAddress); + } + if (message.withdrawalIcaAddress !== '') { + writer.uint32(178).string(message.withdrawalIcaAddress); + } + if (message.feeIcaAddress !== '') { + writer.uint32(186).string(message.feeIcaAddress); + } + if (message.delegationIcaAddress !== '') { + writer.uint32(194).string(message.delegationIcaAddress); + } + if (message.redemptionIcaAddress !== '') { + writer.uint32(202).string(message.redemptionIcaAddress); + } + if (message.communityPoolDepositIcaAddress !== '') { + writer.uint32(242).string(message.communityPoolDepositIcaAddress); + } + if (message.communityPoolReturnIcaAddress !== '') { + writer.uint32(250).string(message.communityPoolReturnIcaAddress); + } + if (message.communityPoolStakeHoldingAddress !== '') { + writer.uint32(258).string(message.communityPoolStakeHoldingAddress); + } + if (message.communityPoolRedeemHoldingAddress !== '') { + writer.uint32(266).string(message.communityPoolRedeemHoldingAddress); + } + if (message.communityPoolTreasuryAddress !== '') { + writer.uint32(282).string(message.communityPoolTreasuryAddress); + } + if (message.totalDelegations !== '') { + writer.uint32(106).string(message.totalDelegations); + } + if (message.lastRedemptionRate !== '') { + writer + .uint32(82) + .string(Decimal.fromUserInput(message.lastRedemptionRate, 18).atomics); + } + if (message.redemptionRate !== '') { + writer + .uint32(90) + .string(Decimal.fromUserInput(message.redemptionRate, 18).atomics); + } + if (message.minRedemptionRate !== '') { + writer + .uint32(162) + .string(Decimal.fromUserInput(message.minRedemptionRate, 18).atomics); + } + if (message.maxRedemptionRate !== '') { + writer + .uint32(170) + .string(Decimal.fromUserInput(message.maxRedemptionRate, 18).atomics); + } + if (message.minInnerRedemptionRate !== '') { + writer + .uint32(226) + .string( + Decimal.fromUserInput(message.minInnerRedemptionRate, 18).atomics, + ); + } + if (message.maxInnerRedemptionRate !== '') { + writer + .uint32(234) + .string( + Decimal.fromUserInput(message.maxInnerRedemptionRate, 18).atomics, + ); + } + if (message.maxMessagesPerIcaTx !== BigInt(0)) { + writer.uint32(288).uint64(message.maxMessagesPerIcaTx); + } + if (message.redemptionsEnabled === true) { + writer.uint32(296).bool(message.redemptionsEnabled); + } + if (message.communityPoolRebate !== undefined) { + CommunityPoolRebate.encode( + message.communityPoolRebate, + writer.uint32(274).fork(), + ).ldelim(); + } + if (message.lsmLiquidStakeEnabled === true) { + writer.uint32(216).bool(message.lsmLiquidStakeEnabled); + } + if (message.halted === true) { + writer.uint32(152).bool(message.halted); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): HostZone { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseHostZone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + case 17: + message.bech32prefix = reader.string(); + break; + case 2: + message.connectionId = reader.string(); + break; + case 12: + message.transferChannelId = reader.string(); + break; + case 8: + message.ibcDenom = reader.string(); + break; + case 9: + message.hostDenom = reader.string(); + break; + case 26: + message.unbondingPeriod = reader.uint64(); + break; + case 3: + message.validators.push(Validator.decode(reader, reader.uint32())); + break; + case 18: + message.depositAddress = reader.string(); + break; + case 22: + message.withdrawalIcaAddress = reader.string(); + break; + case 23: + message.feeIcaAddress = reader.string(); + break; + case 24: + message.delegationIcaAddress = reader.string(); + break; + case 25: + message.redemptionIcaAddress = reader.string(); + break; + case 30: + message.communityPoolDepositIcaAddress = reader.string(); + break; + case 31: + message.communityPoolReturnIcaAddress = reader.string(); + break; + case 32: + message.communityPoolStakeHoldingAddress = reader.string(); + break; + case 33: + message.communityPoolRedeemHoldingAddress = reader.string(); + break; + case 35: + message.communityPoolTreasuryAddress = reader.string(); + break; + case 13: + message.totalDelegations = reader.string(); + break; + case 10: + message.lastRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 11: + message.redemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 20: + message.minRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 21: + message.maxRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 28: + message.minInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 29: + message.maxInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 36: + message.maxMessagesPerIcaTx = reader.uint64(); + break; + case 37: + message.redemptionsEnabled = reader.bool(); + break; + case 34: + message.communityPoolRebate = CommunityPoolRebate.decode( + reader, + reader.uint32(), + ); + break; + case 27: + message.lsmLiquidStakeEnabled = reader.bool(); + break; + case 19: + message.halted = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): HostZone { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + bech32prefix: isSet(object.bech32prefix) + ? String(object.bech32prefix) + : '', + connectionId: isSet(object.connectionId) + ? String(object.connectionId) + : '', + transferChannelId: isSet(object.transferChannelId) + ? String(object.transferChannelId) + : '', + ibcDenom: isSet(object.ibcDenom) ? String(object.ibcDenom) : '', + hostDenom: isSet(object.hostDenom) ? String(object.hostDenom) : '', + unbondingPeriod: isSet(object.unbondingPeriod) + ? BigInt(object.unbondingPeriod.toString()) + : BigInt(0), + validators: Array.isArray(object?.validators) + ? object.validators.map((e: any) => Validator.fromJSON(e)) + : [], + depositAddress: isSet(object.depositAddress) + ? String(object.depositAddress) + : '', + withdrawalIcaAddress: isSet(object.withdrawalIcaAddress) + ? String(object.withdrawalIcaAddress) + : '', + feeIcaAddress: isSet(object.feeIcaAddress) + ? String(object.feeIcaAddress) + : '', + delegationIcaAddress: isSet(object.delegationIcaAddress) + ? String(object.delegationIcaAddress) + : '', + redemptionIcaAddress: isSet(object.redemptionIcaAddress) + ? String(object.redemptionIcaAddress) + : '', + communityPoolDepositIcaAddress: isSet( + object.communityPoolDepositIcaAddress, + ) + ? String(object.communityPoolDepositIcaAddress) + : '', + communityPoolReturnIcaAddress: isSet(object.communityPoolReturnIcaAddress) + ? String(object.communityPoolReturnIcaAddress) + : '', + communityPoolStakeHoldingAddress: isSet( + object.communityPoolStakeHoldingAddress, + ) + ? String(object.communityPoolStakeHoldingAddress) + : '', + communityPoolRedeemHoldingAddress: isSet( + object.communityPoolRedeemHoldingAddress, + ) + ? String(object.communityPoolRedeemHoldingAddress) + : '', + communityPoolTreasuryAddress: isSet(object.communityPoolTreasuryAddress) + ? String(object.communityPoolTreasuryAddress) + : '', + totalDelegations: isSet(object.totalDelegations) + ? String(object.totalDelegations) + : '', + lastRedemptionRate: isSet(object.lastRedemptionRate) + ? String(object.lastRedemptionRate) + : '', + redemptionRate: isSet(object.redemptionRate) + ? String(object.redemptionRate) + : '', + minRedemptionRate: isSet(object.minRedemptionRate) + ? String(object.minRedemptionRate) + : '', + maxRedemptionRate: isSet(object.maxRedemptionRate) + ? String(object.maxRedemptionRate) + : '', + minInnerRedemptionRate: isSet(object.minInnerRedemptionRate) + ? String(object.minInnerRedemptionRate) + : '', + maxInnerRedemptionRate: isSet(object.maxInnerRedemptionRate) + ? String(object.maxInnerRedemptionRate) + : '', + maxMessagesPerIcaTx: isSet(object.maxMessagesPerIcaTx) + ? BigInt(object.maxMessagesPerIcaTx.toString()) + : BigInt(0), + redemptionsEnabled: isSet(object.redemptionsEnabled) + ? Boolean(object.redemptionsEnabled) + : false, + communityPoolRebate: isSet(object.communityPoolRebate) + ? CommunityPoolRebate.fromJSON(object.communityPoolRebate) + : undefined, + lsmLiquidStakeEnabled: isSet(object.lsmLiquidStakeEnabled) + ? Boolean(object.lsmLiquidStakeEnabled) + : false, + halted: isSet(object.halted) ? Boolean(object.halted) : false, + }; + }, + toJSON(message: HostZone): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + message.bech32prefix !== undefined && + (obj.bech32prefix = message.bech32prefix); + message.connectionId !== undefined && + (obj.connectionId = message.connectionId); + message.transferChannelId !== undefined && + (obj.transferChannelId = message.transferChannelId); + message.ibcDenom !== undefined && (obj.ibcDenom = message.ibcDenom); + message.hostDenom !== undefined && (obj.hostDenom = message.hostDenom); + message.unbondingPeriod !== undefined && + (obj.unbondingPeriod = (message.unbondingPeriod || BigInt(0)).toString()); + if (message.validators) { + obj.validators = message.validators.map(e => + e ? Validator.toJSON(e) : undefined, + ); + } else { + obj.validators = []; + } + message.depositAddress !== undefined && + (obj.depositAddress = message.depositAddress); + message.withdrawalIcaAddress !== undefined && + (obj.withdrawalIcaAddress = message.withdrawalIcaAddress); + message.feeIcaAddress !== undefined && + (obj.feeIcaAddress = message.feeIcaAddress); + message.delegationIcaAddress !== undefined && + (obj.delegationIcaAddress = message.delegationIcaAddress); + message.redemptionIcaAddress !== undefined && + (obj.redemptionIcaAddress = message.redemptionIcaAddress); + message.communityPoolDepositIcaAddress !== undefined && + (obj.communityPoolDepositIcaAddress = + message.communityPoolDepositIcaAddress); + message.communityPoolReturnIcaAddress !== undefined && + (obj.communityPoolReturnIcaAddress = + message.communityPoolReturnIcaAddress); + message.communityPoolStakeHoldingAddress !== undefined && + (obj.communityPoolStakeHoldingAddress = + message.communityPoolStakeHoldingAddress); + message.communityPoolRedeemHoldingAddress !== undefined && + (obj.communityPoolRedeemHoldingAddress = + message.communityPoolRedeemHoldingAddress); + message.communityPoolTreasuryAddress !== undefined && + (obj.communityPoolTreasuryAddress = message.communityPoolTreasuryAddress); + message.totalDelegations !== undefined && + (obj.totalDelegations = message.totalDelegations); + message.lastRedemptionRate !== undefined && + (obj.lastRedemptionRate = message.lastRedemptionRate); + message.redemptionRate !== undefined && + (obj.redemptionRate = message.redemptionRate); + message.minRedemptionRate !== undefined && + (obj.minRedemptionRate = message.minRedemptionRate); + message.maxRedemptionRate !== undefined && + (obj.maxRedemptionRate = message.maxRedemptionRate); + message.minInnerRedemptionRate !== undefined && + (obj.minInnerRedemptionRate = message.minInnerRedemptionRate); + message.maxInnerRedemptionRate !== undefined && + (obj.maxInnerRedemptionRate = message.maxInnerRedemptionRate); + message.maxMessagesPerIcaTx !== undefined && + (obj.maxMessagesPerIcaTx = ( + message.maxMessagesPerIcaTx || BigInt(0) + ).toString()); + message.redemptionsEnabled !== undefined && + (obj.redemptionsEnabled = message.redemptionsEnabled); + message.communityPoolRebate !== undefined && + (obj.communityPoolRebate = message.communityPoolRebate + ? CommunityPoolRebate.toJSON(message.communityPoolRebate) + : undefined); + message.lsmLiquidStakeEnabled !== undefined && + (obj.lsmLiquidStakeEnabled = message.lsmLiquidStakeEnabled); + message.halted !== undefined && (obj.halted = message.halted); + return obj; + }, + fromPartial(object: Partial): HostZone { + const message = createBaseHostZone(); + message.chainId = object.chainId ?? ''; + message.bech32prefix = object.bech32prefix ?? ''; + message.connectionId = object.connectionId ?? ''; + message.transferChannelId = object.transferChannelId ?? ''; + message.ibcDenom = object.ibcDenom ?? ''; + message.hostDenom = object.hostDenom ?? ''; + message.unbondingPeriod = + object.unbondingPeriod !== undefined && object.unbondingPeriod !== null + ? BigInt(object.unbondingPeriod.toString()) + : BigInt(0); + message.validators = + object.validators?.map(e => Validator.fromPartial(e)) || []; + message.depositAddress = object.depositAddress ?? ''; + message.withdrawalIcaAddress = object.withdrawalIcaAddress ?? ''; + message.feeIcaAddress = object.feeIcaAddress ?? ''; + message.delegationIcaAddress = object.delegationIcaAddress ?? ''; + message.redemptionIcaAddress = object.redemptionIcaAddress ?? ''; + message.communityPoolDepositIcaAddress = + object.communityPoolDepositIcaAddress ?? ''; + message.communityPoolReturnIcaAddress = + object.communityPoolReturnIcaAddress ?? ''; + message.communityPoolStakeHoldingAddress = + object.communityPoolStakeHoldingAddress ?? ''; + message.communityPoolRedeemHoldingAddress = + object.communityPoolRedeemHoldingAddress ?? ''; + message.communityPoolTreasuryAddress = + object.communityPoolTreasuryAddress ?? ''; + message.totalDelegations = object.totalDelegations ?? ''; + message.lastRedemptionRate = object.lastRedemptionRate ?? ''; + message.redemptionRate = object.redemptionRate ?? ''; + message.minRedemptionRate = object.minRedemptionRate ?? ''; + message.maxRedemptionRate = object.maxRedemptionRate ?? ''; + message.minInnerRedemptionRate = object.minInnerRedemptionRate ?? ''; + message.maxInnerRedemptionRate = object.maxInnerRedemptionRate ?? ''; + message.maxMessagesPerIcaTx = + object.maxMessagesPerIcaTx !== undefined && + object.maxMessagesPerIcaTx !== null + ? BigInt(object.maxMessagesPerIcaTx.toString()) + : BigInt(0); + message.redemptionsEnabled = object.redemptionsEnabled ?? false; + message.communityPoolRebate = + object.communityPoolRebate !== undefined && + object.communityPoolRebate !== null + ? CommunityPoolRebate.fromPartial(object.communityPoolRebate) + : undefined; + message.lsmLiquidStakeEnabled = object.lsmLiquidStakeEnabled ?? false; + message.halted = object.halted ?? false; + return message; + }, + fromProtoMsg(message: HostZoneProtoMsg): HostZone { + return HostZone.decode(message.value); + }, + toProto(message: HostZone): Uint8Array { + return HostZone.encode(message).finish(); + }, + toProtoMsg(message: HostZone): HostZoneProtoMsg { + return { + typeUrl: '/stride.stakeibc.HostZone', + value: HostZone.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/ica_account.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/ica_account.ts new file mode 100644 index 00000000000..0a42d5722e4 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/ica_account.ts @@ -0,0 +1,183 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export enum ICAAccountType { + DELEGATION = 0, + FEE = 1, + WITHDRAWAL = 2, + REDEMPTION = 3, + COMMUNITY_POOL_DEPOSIT = 4, + COMMUNITY_POOL_RETURN = 5, + CONVERTER_UNWIND = 6, + CONVERTER_TRADE = 7, + UNRECOGNIZED = -1, +} +export const ICAAccountTypeSDKType = ICAAccountType; +export function iCAAccountTypeFromJSON(object: any): ICAAccountType { + switch (object) { + case 0: + case 'DELEGATION': + return ICAAccountType.DELEGATION; + case 1: + case 'FEE': + return ICAAccountType.FEE; + case 2: + case 'WITHDRAWAL': + return ICAAccountType.WITHDRAWAL; + case 3: + case 'REDEMPTION': + return ICAAccountType.REDEMPTION; + case 4: + case 'COMMUNITY_POOL_DEPOSIT': + return ICAAccountType.COMMUNITY_POOL_DEPOSIT; + case 5: + case 'COMMUNITY_POOL_RETURN': + return ICAAccountType.COMMUNITY_POOL_RETURN; + case 6: + case 'CONVERTER_UNWIND': + return ICAAccountType.CONVERTER_UNWIND; + case 7: + case 'CONVERTER_TRADE': + return ICAAccountType.CONVERTER_TRADE; + case -1: + case 'UNRECOGNIZED': + default: + return ICAAccountType.UNRECOGNIZED; + } +} +export function iCAAccountTypeToJSON(object: ICAAccountType): string { + switch (object) { + case ICAAccountType.DELEGATION: + return 'DELEGATION'; + case ICAAccountType.FEE: + return 'FEE'; + case ICAAccountType.WITHDRAWAL: + return 'WITHDRAWAL'; + case ICAAccountType.REDEMPTION: + return 'REDEMPTION'; + case ICAAccountType.COMMUNITY_POOL_DEPOSIT: + return 'COMMUNITY_POOL_DEPOSIT'; + case ICAAccountType.COMMUNITY_POOL_RETURN: + return 'COMMUNITY_POOL_RETURN'; + case ICAAccountType.CONVERTER_UNWIND: + return 'CONVERTER_UNWIND'; + case ICAAccountType.CONVERTER_TRADE: + return 'CONVERTER_TRADE'; + case ICAAccountType.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +export interface ICAAccount { + chainId: string; + type: ICAAccountType; + connectionId: string; + address: string; +} +export interface ICAAccountProtoMsg { + typeUrl: '/stride.stakeibc.ICAAccount'; + value: Uint8Array; +} +export interface ICAAccountSDKType { + chain_id: string; + type: ICAAccountType; + connection_id: string; + address: string; +} +function createBaseICAAccount(): ICAAccount { + return { + chainId: '', + type: 0, + connectionId: '', + address: '', + }; +} +export const ICAAccount = { + typeUrl: '/stride.stakeibc.ICAAccount', + encode( + message: ICAAccount, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + if (message.type !== 0) { + writer.uint32(16).int32(message.type); + } + if (message.connectionId !== '') { + writer.uint32(26).string(message.connectionId); + } + if (message.address !== '') { + writer.uint32(34).string(message.address); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): ICAAccount { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseICAAccount(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + case 2: + message.type = reader.int32() as any; + break; + case 3: + message.connectionId = reader.string(); + break; + case 4: + message.address = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): ICAAccount { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + type: isSet(object.type) ? iCAAccountTypeFromJSON(object.type) : -1, + connectionId: isSet(object.connectionId) + ? String(object.connectionId) + : '', + address: isSet(object.address) ? String(object.address) : '', + }; + }, + toJSON(message: ICAAccount): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + message.type !== undefined && + (obj.type = iCAAccountTypeToJSON(message.type)); + message.connectionId !== undefined && + (obj.connectionId = message.connectionId); + message.address !== undefined && (obj.address = message.address); + return obj; + }, + fromPartial(object: Partial): ICAAccount { + const message = createBaseICAAccount(); + message.chainId = object.chainId ?? ''; + message.type = object.type ?? 0; + message.connectionId = object.connectionId ?? ''; + message.address = object.address ?? ''; + return message; + }, + fromProtoMsg(message: ICAAccountProtoMsg): ICAAccount { + return ICAAccount.decode(message.value); + }, + toProto(message: ICAAccount): Uint8Array { + return ICAAccount.encode(message).finish(); + }, + toProtoMsg(message: ICAAccount): ICAAccountProtoMsg { + return { + typeUrl: '/stride.stakeibc.ICAAccount', + value: ICAAccount.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/packet.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/packet.ts new file mode 100644 index 00000000000..a391d79cee8 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/packet.ts @@ -0,0 +1,139 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface StakeibcPacketData { + noData?: NoData; +} +export interface StakeibcPacketDataProtoMsg { + typeUrl: '/stride.stakeibc.StakeibcPacketData'; + value: Uint8Array; +} +export interface StakeibcPacketDataSDKType { + no_data?: NoDataSDKType; +} +export interface NoData {} +export interface NoDataProtoMsg { + typeUrl: '/stride.stakeibc.NoData'; + value: Uint8Array; +} +export interface NoDataSDKType {} +function createBaseStakeibcPacketData(): StakeibcPacketData { + return { + noData: undefined, + }; +} +export const StakeibcPacketData = { + typeUrl: '/stride.stakeibc.StakeibcPacketData', + encode( + message: StakeibcPacketData, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.noData !== undefined) { + NoData.encode(message.noData, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): StakeibcPacketData { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseStakeibcPacketData(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.noData = NoData.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): StakeibcPacketData { + return { + noData: isSet(object.noData) ? NoData.fromJSON(object.noData) : undefined, + }; + }, + toJSON(message: StakeibcPacketData): JsonSafe { + const obj: any = {}; + message.noData !== undefined && + (obj.noData = message.noData ? NoData.toJSON(message.noData) : undefined); + return obj; + }, + fromPartial(object: Partial): StakeibcPacketData { + const message = createBaseStakeibcPacketData(); + message.noData = + object.noData !== undefined && object.noData !== null + ? NoData.fromPartial(object.noData) + : undefined; + return message; + }, + fromProtoMsg(message: StakeibcPacketDataProtoMsg): StakeibcPacketData { + return StakeibcPacketData.decode(message.value); + }, + toProto(message: StakeibcPacketData): Uint8Array { + return StakeibcPacketData.encode(message).finish(); + }, + toProtoMsg(message: StakeibcPacketData): StakeibcPacketDataProtoMsg { + return { + typeUrl: '/stride.stakeibc.StakeibcPacketData', + value: StakeibcPacketData.encode(message).finish(), + }; + }, +}; +function createBaseNoData(): NoData { + return {}; +} +export const NoData = { + typeUrl: '/stride.stakeibc.NoData', + encode( + _: NoData, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): NoData { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseNoData(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): NoData { + return {}; + }, + toJSON(_: NoData): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): NoData { + const message = createBaseNoData(); + return message; + }, + fromProtoMsg(message: NoDataProtoMsg): NoData { + return NoData.decode(message.value); + }, + toProto(message: NoData): Uint8Array { + return NoData.encode(message).finish(); + }, + toProtoMsg(message: NoData): NoDataProtoMsg { + return { + typeUrl: '/stride.stakeibc.NoData', + value: NoData.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/params.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/params.ts new file mode 100644 index 00000000000..b610efab1f5 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/params.ts @@ -0,0 +1,397 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** + * Params defines the parameters for the module. + * next id: 20 + */ +export interface Params { + /** define epoch lengths, in stride_epochs */ + rewardsInterval: bigint; + delegateInterval: bigint; + depositInterval: bigint; + redemptionRateInterval: bigint; + strideCommission: bigint; + reinvestInterval: bigint; + icaTimeoutNanos: bigint; + bufferSize: bigint; + ibcTimeoutBlocks: bigint; + feeTransferTimeoutNanos: bigint; + maxStakeIcaCallsPerEpoch: bigint; + defaultMinRedemptionRateThreshold: bigint; + defaultMaxRedemptionRateThreshold: bigint; + ibcTransferTimeoutNanos: bigint; + validatorSlashQueryThreshold: bigint; + validatorWeightCap: bigint; +} +export interface ParamsProtoMsg { + typeUrl: '/stride.stakeibc.Params'; + value: Uint8Array; +} +/** + * Params defines the parameters for the module. + * next id: 20 + */ +export interface ParamsSDKType { + rewards_interval: bigint; + delegate_interval: bigint; + deposit_interval: bigint; + redemption_rate_interval: bigint; + stride_commission: bigint; + reinvest_interval: bigint; + ica_timeout_nanos: bigint; + buffer_size: bigint; + ibc_timeout_blocks: bigint; + fee_transfer_timeout_nanos: bigint; + max_stake_ica_calls_per_epoch: bigint; + default_min_redemption_rate_threshold: bigint; + default_max_redemption_rate_threshold: bigint; + ibc_transfer_timeout_nanos: bigint; + validator_slash_query_threshold: bigint; + validator_weight_cap: bigint; +} +function createBaseParams(): Params { + return { + rewardsInterval: BigInt(0), + delegateInterval: BigInt(0), + depositInterval: BigInt(0), + redemptionRateInterval: BigInt(0), + strideCommission: BigInt(0), + reinvestInterval: BigInt(0), + icaTimeoutNanos: BigInt(0), + bufferSize: BigInt(0), + ibcTimeoutBlocks: BigInt(0), + feeTransferTimeoutNanos: BigInt(0), + maxStakeIcaCallsPerEpoch: BigInt(0), + defaultMinRedemptionRateThreshold: BigInt(0), + defaultMaxRedemptionRateThreshold: BigInt(0), + ibcTransferTimeoutNanos: BigInt(0), + validatorSlashQueryThreshold: BigInt(0), + validatorWeightCap: BigInt(0), + }; +} +export const Params = { + typeUrl: '/stride.stakeibc.Params', + encode( + message: Params, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.rewardsInterval !== BigInt(0)) { + writer.uint32(8).uint64(message.rewardsInterval); + } + if (message.delegateInterval !== BigInt(0)) { + writer.uint32(48).uint64(message.delegateInterval); + } + if (message.depositInterval !== BigInt(0)) { + writer.uint32(16).uint64(message.depositInterval); + } + if (message.redemptionRateInterval !== BigInt(0)) { + writer.uint32(24).uint64(message.redemptionRateInterval); + } + if (message.strideCommission !== BigInt(0)) { + writer.uint32(32).uint64(message.strideCommission); + } + if (message.reinvestInterval !== BigInt(0)) { + writer.uint32(56).uint64(message.reinvestInterval); + } + if (message.icaTimeoutNanos !== BigInt(0)) { + writer.uint32(72).uint64(message.icaTimeoutNanos); + } + if (message.bufferSize !== BigInt(0)) { + writer.uint32(80).uint64(message.bufferSize); + } + if (message.ibcTimeoutBlocks !== BigInt(0)) { + writer.uint32(88).uint64(message.ibcTimeoutBlocks); + } + if (message.feeTransferTimeoutNanos !== BigInt(0)) { + writer.uint32(96).uint64(message.feeTransferTimeoutNanos); + } + if (message.maxStakeIcaCallsPerEpoch !== BigInt(0)) { + writer.uint32(104).uint64(message.maxStakeIcaCallsPerEpoch); + } + if (message.defaultMinRedemptionRateThreshold !== BigInt(0)) { + writer.uint32(112).uint64(message.defaultMinRedemptionRateThreshold); + } + if (message.defaultMaxRedemptionRateThreshold !== BigInt(0)) { + writer.uint32(120).uint64(message.defaultMaxRedemptionRateThreshold); + } + if (message.ibcTransferTimeoutNanos !== BigInt(0)) { + writer.uint32(128).uint64(message.ibcTransferTimeoutNanos); + } + if (message.validatorSlashQueryThreshold !== BigInt(0)) { + writer.uint32(152).uint64(message.validatorSlashQueryThreshold); + } + if (message.validatorWeightCap !== BigInt(0)) { + writer.uint32(160).uint64(message.validatorWeightCap); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Params { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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.rewardsInterval = reader.uint64(); + break; + case 6: + message.delegateInterval = reader.uint64(); + break; + case 2: + message.depositInterval = reader.uint64(); + break; + case 3: + message.redemptionRateInterval = reader.uint64(); + break; + case 4: + message.strideCommission = reader.uint64(); + break; + case 7: + message.reinvestInterval = reader.uint64(); + break; + case 9: + message.icaTimeoutNanos = reader.uint64(); + break; + case 10: + message.bufferSize = reader.uint64(); + break; + case 11: + message.ibcTimeoutBlocks = reader.uint64(); + break; + case 12: + message.feeTransferTimeoutNanos = reader.uint64(); + break; + case 13: + message.maxStakeIcaCallsPerEpoch = reader.uint64(); + break; + case 14: + message.defaultMinRedemptionRateThreshold = reader.uint64(); + break; + case 15: + message.defaultMaxRedemptionRateThreshold = reader.uint64(); + break; + case 16: + message.ibcTransferTimeoutNanos = reader.uint64(); + break; + case 19: + message.validatorSlashQueryThreshold = reader.uint64(); + break; + case 20: + message.validatorWeightCap = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): Params { + return { + rewardsInterval: isSet(object.rewardsInterval) + ? BigInt(object.rewardsInterval.toString()) + : BigInt(0), + delegateInterval: isSet(object.delegateInterval) + ? BigInt(object.delegateInterval.toString()) + : BigInt(0), + depositInterval: isSet(object.depositInterval) + ? BigInt(object.depositInterval.toString()) + : BigInt(0), + redemptionRateInterval: isSet(object.redemptionRateInterval) + ? BigInt(object.redemptionRateInterval.toString()) + : BigInt(0), + strideCommission: isSet(object.strideCommission) + ? BigInt(object.strideCommission.toString()) + : BigInt(0), + reinvestInterval: isSet(object.reinvestInterval) + ? BigInt(object.reinvestInterval.toString()) + : BigInt(0), + icaTimeoutNanos: isSet(object.icaTimeoutNanos) + ? BigInt(object.icaTimeoutNanos.toString()) + : BigInt(0), + bufferSize: isSet(object.bufferSize) + ? BigInt(object.bufferSize.toString()) + : BigInt(0), + ibcTimeoutBlocks: isSet(object.ibcTimeoutBlocks) + ? BigInt(object.ibcTimeoutBlocks.toString()) + : BigInt(0), + feeTransferTimeoutNanos: isSet(object.feeTransferTimeoutNanos) + ? BigInt(object.feeTransferTimeoutNanos.toString()) + : BigInt(0), + maxStakeIcaCallsPerEpoch: isSet(object.maxStakeIcaCallsPerEpoch) + ? BigInt(object.maxStakeIcaCallsPerEpoch.toString()) + : BigInt(0), + defaultMinRedemptionRateThreshold: isSet( + object.defaultMinRedemptionRateThreshold, + ) + ? BigInt(object.defaultMinRedemptionRateThreshold.toString()) + : BigInt(0), + defaultMaxRedemptionRateThreshold: isSet( + object.defaultMaxRedemptionRateThreshold, + ) + ? BigInt(object.defaultMaxRedemptionRateThreshold.toString()) + : BigInt(0), + ibcTransferTimeoutNanos: isSet(object.ibcTransferTimeoutNanos) + ? BigInt(object.ibcTransferTimeoutNanos.toString()) + : BigInt(0), + validatorSlashQueryThreshold: isSet(object.validatorSlashQueryThreshold) + ? BigInt(object.validatorSlashQueryThreshold.toString()) + : BigInt(0), + validatorWeightCap: isSet(object.validatorWeightCap) + ? BigInt(object.validatorWeightCap.toString()) + : BigInt(0), + }; + }, + toJSON(message: Params): JsonSafe { + const obj: any = {}; + message.rewardsInterval !== undefined && + (obj.rewardsInterval = (message.rewardsInterval || BigInt(0)).toString()); + message.delegateInterval !== undefined && + (obj.delegateInterval = ( + message.delegateInterval || BigInt(0) + ).toString()); + message.depositInterval !== undefined && + (obj.depositInterval = (message.depositInterval || BigInt(0)).toString()); + message.redemptionRateInterval !== undefined && + (obj.redemptionRateInterval = ( + message.redemptionRateInterval || BigInt(0) + ).toString()); + message.strideCommission !== undefined && + (obj.strideCommission = ( + message.strideCommission || BigInt(0) + ).toString()); + message.reinvestInterval !== undefined && + (obj.reinvestInterval = ( + message.reinvestInterval || BigInt(0) + ).toString()); + message.icaTimeoutNanos !== undefined && + (obj.icaTimeoutNanos = (message.icaTimeoutNanos || BigInt(0)).toString()); + message.bufferSize !== undefined && + (obj.bufferSize = (message.bufferSize || BigInt(0)).toString()); + message.ibcTimeoutBlocks !== undefined && + (obj.ibcTimeoutBlocks = ( + message.ibcTimeoutBlocks || BigInt(0) + ).toString()); + message.feeTransferTimeoutNanos !== undefined && + (obj.feeTransferTimeoutNanos = ( + message.feeTransferTimeoutNanos || BigInt(0) + ).toString()); + message.maxStakeIcaCallsPerEpoch !== undefined && + (obj.maxStakeIcaCallsPerEpoch = ( + message.maxStakeIcaCallsPerEpoch || BigInt(0) + ).toString()); + message.defaultMinRedemptionRateThreshold !== undefined && + (obj.defaultMinRedemptionRateThreshold = ( + message.defaultMinRedemptionRateThreshold || BigInt(0) + ).toString()); + message.defaultMaxRedemptionRateThreshold !== undefined && + (obj.defaultMaxRedemptionRateThreshold = ( + message.defaultMaxRedemptionRateThreshold || BigInt(0) + ).toString()); + message.ibcTransferTimeoutNanos !== undefined && + (obj.ibcTransferTimeoutNanos = ( + message.ibcTransferTimeoutNanos || BigInt(0) + ).toString()); + message.validatorSlashQueryThreshold !== undefined && + (obj.validatorSlashQueryThreshold = ( + message.validatorSlashQueryThreshold || BigInt(0) + ).toString()); + message.validatorWeightCap !== undefined && + (obj.validatorWeightCap = ( + message.validatorWeightCap || BigInt(0) + ).toString()); + return obj; + }, + fromPartial(object: Partial): Params { + const message = createBaseParams(); + message.rewardsInterval = + object.rewardsInterval !== undefined && object.rewardsInterval !== null + ? BigInt(object.rewardsInterval.toString()) + : BigInt(0); + message.delegateInterval = + object.delegateInterval !== undefined && object.delegateInterval !== null + ? BigInt(object.delegateInterval.toString()) + : BigInt(0); + message.depositInterval = + object.depositInterval !== undefined && object.depositInterval !== null + ? BigInt(object.depositInterval.toString()) + : BigInt(0); + message.redemptionRateInterval = + object.redemptionRateInterval !== undefined && + object.redemptionRateInterval !== null + ? BigInt(object.redemptionRateInterval.toString()) + : BigInt(0); + message.strideCommission = + object.strideCommission !== undefined && object.strideCommission !== null + ? BigInt(object.strideCommission.toString()) + : BigInt(0); + message.reinvestInterval = + object.reinvestInterval !== undefined && object.reinvestInterval !== null + ? BigInt(object.reinvestInterval.toString()) + : BigInt(0); + message.icaTimeoutNanos = + object.icaTimeoutNanos !== undefined && object.icaTimeoutNanos !== null + ? BigInt(object.icaTimeoutNanos.toString()) + : BigInt(0); + message.bufferSize = + object.bufferSize !== undefined && object.bufferSize !== null + ? BigInt(object.bufferSize.toString()) + : BigInt(0); + message.ibcTimeoutBlocks = + object.ibcTimeoutBlocks !== undefined && object.ibcTimeoutBlocks !== null + ? BigInt(object.ibcTimeoutBlocks.toString()) + : BigInt(0); + message.feeTransferTimeoutNanos = + object.feeTransferTimeoutNanos !== undefined && + object.feeTransferTimeoutNanos !== null + ? BigInt(object.feeTransferTimeoutNanos.toString()) + : BigInt(0); + message.maxStakeIcaCallsPerEpoch = + object.maxStakeIcaCallsPerEpoch !== undefined && + object.maxStakeIcaCallsPerEpoch !== null + ? BigInt(object.maxStakeIcaCallsPerEpoch.toString()) + : BigInt(0); + message.defaultMinRedemptionRateThreshold = + object.defaultMinRedemptionRateThreshold !== undefined && + object.defaultMinRedemptionRateThreshold !== null + ? BigInt(object.defaultMinRedemptionRateThreshold.toString()) + : BigInt(0); + message.defaultMaxRedemptionRateThreshold = + object.defaultMaxRedemptionRateThreshold !== undefined && + object.defaultMaxRedemptionRateThreshold !== null + ? BigInt(object.defaultMaxRedemptionRateThreshold.toString()) + : BigInt(0); + message.ibcTransferTimeoutNanos = + object.ibcTransferTimeoutNanos !== undefined && + object.ibcTransferTimeoutNanos !== null + ? BigInt(object.ibcTransferTimeoutNanos.toString()) + : BigInt(0); + message.validatorSlashQueryThreshold = + object.validatorSlashQueryThreshold !== undefined && + object.validatorSlashQueryThreshold !== null + ? BigInt(object.validatorSlashQueryThreshold.toString()) + : BigInt(0); + message.validatorWeightCap = + object.validatorWeightCap !== undefined && + object.validatorWeightCap !== null + ? BigInt(object.validatorWeightCap.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: ParamsProtoMsg): Params { + return Params.decode(message.value); + }, + toProto(message: Params): Uint8Array { + return Params.encode(message).finish(); + }, + toProtoMsg(message: Params): ParamsProtoMsg { + return { + typeUrl: '/stride.stakeibc.Params', + value: Params.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/query.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/query.ts new file mode 100644 index 00000000000..d010b5e36e3 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/query.ts @@ -0,0 +1,1925 @@ +//@ts-nocheck +import { + PageRequest, + type PageRequestSDKType, + PageResponse, + type PageResponseSDKType, +} from '../../cosmos/base/query/v1beta1/pagination.js'; +import { Params, type ParamsSDKType } from './params.js'; +import { Validator, type ValidatorSDKType } from './validator.js'; +import { HostZone, type HostZoneSDKType } from './host_zone.js'; +import { EpochTracker, type EpochTrackerSDKType } from './epoch_tracker.js'; +import { + AddressUnbonding, + type AddressUnbondingSDKType, +} from './address_unbonding.js'; +import { TradeRoute, type TradeRouteSDKType } from './trade_route.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** + * QueryInterchainAccountFromAddressRequest is the request type for the + * Query/InterchainAccountAddress RPC + */ +export interface QueryInterchainAccountFromAddressRequest { + owner: string; + connectionId: string; +} +export interface QueryInterchainAccountFromAddressRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryInterchainAccountFromAddressRequest'; + value: Uint8Array; +} +/** + * QueryInterchainAccountFromAddressRequest is the request type for the + * Query/InterchainAccountAddress RPC + */ +export interface QueryInterchainAccountFromAddressRequestSDKType { + owner: string; + connection_id: string; +} +/** + * QueryInterchainAccountFromAddressResponse the response type for the + * Query/InterchainAccountAddress RPC + */ +export interface QueryInterchainAccountFromAddressResponse { + interchainAccountAddress: string; +} +export interface QueryInterchainAccountFromAddressResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryInterchainAccountFromAddressResponse'; + value: Uint8Array; +} +/** + * QueryInterchainAccountFromAddressResponse the response type for the + * Query/InterchainAccountAddress RPC + */ +export interface QueryInterchainAccountFromAddressResponseSDKType { + interchain_account_address: string; +} +/** QueryParamsRequest is request type for the Query/Params RPC method. */ +export interface QueryParamsRequest {} +export interface QueryParamsRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryParamsRequest'; + value: Uint8Array; +} +/** QueryParamsRequest is request type for the Query/Params RPC method. */ +export interface QueryParamsRequestSDKType {} +/** 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 QueryParamsResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryParamsResponse'; + value: Uint8Array; +} +/** QueryParamsResponse is response type for the Query/Params RPC method. */ +export interface QueryParamsResponseSDKType { + params: ParamsSDKType; +} +export interface QueryGetValidatorsRequest { + chainId: string; +} +export interface QueryGetValidatorsRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryGetValidatorsRequest'; + value: Uint8Array; +} +export interface QueryGetValidatorsRequestSDKType { + chain_id: string; +} +export interface QueryGetValidatorsResponse { + validators: Validator[]; +} +export interface QueryGetValidatorsResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryGetValidatorsResponse'; + value: Uint8Array; +} +export interface QueryGetValidatorsResponseSDKType { + validators: ValidatorSDKType[]; +} +export interface QueryGetHostZoneRequest { + chainId: string; +} +export interface QueryGetHostZoneRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryGetHostZoneRequest'; + value: Uint8Array; +} +export interface QueryGetHostZoneRequestSDKType { + chain_id: string; +} +export interface QueryGetHostZoneResponse { + hostZone: HostZone; +} +export interface QueryGetHostZoneResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryGetHostZoneResponse'; + value: Uint8Array; +} +export interface QueryGetHostZoneResponseSDKType { + host_zone: HostZoneSDKType; +} +export interface QueryAllHostZoneRequest { + pagination?: PageRequest; +} +export interface QueryAllHostZoneRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryAllHostZoneRequest'; + value: Uint8Array; +} +export interface QueryAllHostZoneRequestSDKType { + pagination?: PageRequestSDKType; +} +export interface QueryAllHostZoneResponse { + hostZone: HostZone[]; + pagination?: PageResponse; +} +export interface QueryAllHostZoneResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryAllHostZoneResponse'; + value: Uint8Array; +} +export interface QueryAllHostZoneResponseSDKType { + host_zone: HostZoneSDKType[]; + pagination?: PageResponseSDKType; +} +export interface QueryModuleAddressRequest { + name: string; +} +export interface QueryModuleAddressRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryModuleAddressRequest'; + value: Uint8Array; +} +export interface QueryModuleAddressRequestSDKType { + name: string; +} +export interface QueryModuleAddressResponse { + addr: string; +} +export interface QueryModuleAddressResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryModuleAddressResponse'; + value: Uint8Array; +} +export interface QueryModuleAddressResponseSDKType { + addr: string; +} +export interface QueryGetEpochTrackerRequest { + epochIdentifier: string; +} +export interface QueryGetEpochTrackerRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryGetEpochTrackerRequest'; + value: Uint8Array; +} +export interface QueryGetEpochTrackerRequestSDKType { + epoch_identifier: string; +} +export interface QueryGetEpochTrackerResponse { + epochTracker: EpochTracker; +} +export interface QueryGetEpochTrackerResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryGetEpochTrackerResponse'; + value: Uint8Array; +} +export interface QueryGetEpochTrackerResponseSDKType { + epoch_tracker: EpochTrackerSDKType; +} +export interface QueryAllEpochTrackerRequest {} +export interface QueryAllEpochTrackerRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryAllEpochTrackerRequest'; + value: Uint8Array; +} +export interface QueryAllEpochTrackerRequestSDKType {} +export interface QueryAllEpochTrackerResponse { + epochTracker: EpochTracker[]; +} +export interface QueryAllEpochTrackerResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryAllEpochTrackerResponse'; + value: Uint8Array; +} +export interface QueryAllEpochTrackerResponseSDKType { + epoch_tracker: EpochTrackerSDKType[]; +} +export interface QueryGetNextPacketSequenceRequest { + channelId: string; + portId: string; +} +export interface QueryGetNextPacketSequenceRequestProtoMsg { + typeUrl: '/stride.stakeibc.QueryGetNextPacketSequenceRequest'; + value: Uint8Array; +} +export interface QueryGetNextPacketSequenceRequestSDKType { + channel_id: string; + port_id: string; +} +export interface QueryGetNextPacketSequenceResponse { + sequence: bigint; +} +export interface QueryGetNextPacketSequenceResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryGetNextPacketSequenceResponse'; + value: Uint8Array; +} +export interface QueryGetNextPacketSequenceResponseSDKType { + sequence: bigint; +} +export interface QueryAddressUnbondings { + address: string; +} +export interface QueryAddressUnbondingsProtoMsg { + typeUrl: '/stride.stakeibc.QueryAddressUnbondings'; + value: Uint8Array; +} +export interface QueryAddressUnbondingsSDKType { + address: string; +} +export interface QueryAddressUnbondingsResponse { + addressUnbondings: AddressUnbonding[]; +} +export interface QueryAddressUnbondingsResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryAddressUnbondingsResponse'; + value: Uint8Array; +} +export interface QueryAddressUnbondingsResponseSDKType { + address_unbondings: AddressUnbondingSDKType[]; +} +export interface QueryAllTradeRoutes {} +export interface QueryAllTradeRoutesProtoMsg { + typeUrl: '/stride.stakeibc.QueryAllTradeRoutes'; + value: Uint8Array; +} +export interface QueryAllTradeRoutesSDKType {} +export interface QueryAllTradeRoutesResponse { + tradeRoutes: TradeRoute[]; +} +export interface QueryAllTradeRoutesResponseProtoMsg { + typeUrl: '/stride.stakeibc.QueryAllTradeRoutesResponse'; + value: Uint8Array; +} +export interface QueryAllTradeRoutesResponseSDKType { + trade_routes: TradeRouteSDKType[]; +} +function createBaseQueryInterchainAccountFromAddressRequest(): QueryInterchainAccountFromAddressRequest { + return { + owner: '', + connectionId: '', + }; +} +export const QueryInterchainAccountFromAddressRequest = { + typeUrl: '/stride.stakeibc.QueryInterchainAccountFromAddressRequest', + encode( + message: QueryInterchainAccountFromAddressRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.owner !== '') { + writer.uint32(10).string(message.owner); + } + if (message.connectionId !== '') { + writer.uint32(18).string(message.connectionId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryInterchainAccountFromAddressRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryInterchainAccountFromAddressRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.owner = reader.string(); + break; + case 2: + message.connectionId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryInterchainAccountFromAddressRequest { + return { + owner: isSet(object.owner) ? String(object.owner) : '', + connectionId: isSet(object.connectionId) + ? String(object.connectionId) + : '', + }; + }, + toJSON( + message: QueryInterchainAccountFromAddressRequest, + ): JsonSafe { + const obj: any = {}; + message.owner !== undefined && (obj.owner = message.owner); + message.connectionId !== undefined && + (obj.connectionId = message.connectionId); + return obj; + }, + fromPartial( + object: Partial, + ): QueryInterchainAccountFromAddressRequest { + const message = createBaseQueryInterchainAccountFromAddressRequest(); + message.owner = object.owner ?? ''; + message.connectionId = object.connectionId ?? ''; + return message; + }, + fromProtoMsg( + message: QueryInterchainAccountFromAddressRequestProtoMsg, + ): QueryInterchainAccountFromAddressRequest { + return QueryInterchainAccountFromAddressRequest.decode(message.value); + }, + toProto(message: QueryInterchainAccountFromAddressRequest): Uint8Array { + return QueryInterchainAccountFromAddressRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryInterchainAccountFromAddressRequest, + ): QueryInterchainAccountFromAddressRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryInterchainAccountFromAddressRequest', + value: QueryInterchainAccountFromAddressRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryInterchainAccountFromAddressResponse(): QueryInterchainAccountFromAddressResponse { + return { + interchainAccountAddress: '', + }; +} +export const QueryInterchainAccountFromAddressResponse = { + typeUrl: '/stride.stakeibc.QueryInterchainAccountFromAddressResponse', + encode( + message: QueryInterchainAccountFromAddressResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.interchainAccountAddress !== '') { + writer.uint32(10).string(message.interchainAccountAddress); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryInterchainAccountFromAddressResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryInterchainAccountFromAddressResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.interchainAccountAddress = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryInterchainAccountFromAddressResponse { + return { + interchainAccountAddress: isSet(object.interchainAccountAddress) + ? String(object.interchainAccountAddress) + : '', + }; + }, + toJSON( + message: QueryInterchainAccountFromAddressResponse, + ): JsonSafe { + const obj: any = {}; + message.interchainAccountAddress !== undefined && + (obj.interchainAccountAddress = message.interchainAccountAddress); + return obj; + }, + fromPartial( + object: Partial, + ): QueryInterchainAccountFromAddressResponse { + const message = createBaseQueryInterchainAccountFromAddressResponse(); + message.interchainAccountAddress = object.interchainAccountAddress ?? ''; + return message; + }, + fromProtoMsg( + message: QueryInterchainAccountFromAddressResponseProtoMsg, + ): QueryInterchainAccountFromAddressResponse { + return QueryInterchainAccountFromAddressResponse.decode(message.value); + }, + toProto(message: QueryInterchainAccountFromAddressResponse): Uint8Array { + return QueryInterchainAccountFromAddressResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryInterchainAccountFromAddressResponse, + ): QueryInterchainAccountFromAddressResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryInterchainAccountFromAddressResponse', + value: QueryInterchainAccountFromAddressResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryParamsRequest(): QueryParamsRequest { + return {}; +} +export const QueryParamsRequest = { + typeUrl: '/stride.stakeibc.QueryParamsRequest', + encode( + _: QueryParamsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryParamsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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(_: any): QueryParamsRequest { + return {}; + }, + toJSON(_: QueryParamsRequest): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QueryParamsRequest { + const message = createBaseQueryParamsRequest(); + return message; + }, + fromProtoMsg(message: QueryParamsRequestProtoMsg): QueryParamsRequest { + return QueryParamsRequest.decode(message.value); + }, + toProto(message: QueryParamsRequest): Uint8Array { + return QueryParamsRequest.encode(message).finish(); + }, + toProtoMsg(message: QueryParamsRequest): QueryParamsRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryParamsRequest', + value: QueryParamsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryParamsResponse(): QueryParamsResponse { + return { + params: Params.fromPartial({}), + }; +} +export const QueryParamsResponse = { + typeUrl: '/stride.stakeibc.QueryParamsResponse', + encode( + message: QueryParamsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.params !== undefined) { + Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryParamsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryParamsResponse { + return { + params: isSet(object.params) ? Params.fromJSON(object.params) : undefined, + }; + }, + toJSON(message: QueryParamsResponse): JsonSafe { + const obj: any = {}; + message.params !== undefined && + (obj.params = message.params ? Params.toJSON(message.params) : undefined); + return obj; + }, + fromPartial(object: Partial): QueryParamsResponse { + const message = createBaseQueryParamsResponse(); + message.params = + object.params !== undefined && object.params !== null + ? Params.fromPartial(object.params) + : undefined; + return message; + }, + fromProtoMsg(message: QueryParamsResponseProtoMsg): QueryParamsResponse { + return QueryParamsResponse.decode(message.value); + }, + toProto(message: QueryParamsResponse): Uint8Array { + return QueryParamsResponse.encode(message).finish(); + }, + toProtoMsg(message: QueryParamsResponse): QueryParamsResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryParamsResponse', + value: QueryParamsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetValidatorsRequest(): QueryGetValidatorsRequest { + return { + chainId: '', + }; +} +export const QueryGetValidatorsRequest = { + typeUrl: '/stride.stakeibc.QueryGetValidatorsRequest', + encode( + message: QueryGetValidatorsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetValidatorsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetValidatorsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetValidatorsRequest { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + }; + }, + toJSON( + message: QueryGetValidatorsRequest, + ): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetValidatorsRequest { + const message = createBaseQueryGetValidatorsRequest(); + message.chainId = object.chainId ?? ''; + return message; + }, + fromProtoMsg( + message: QueryGetValidatorsRequestProtoMsg, + ): QueryGetValidatorsRequest { + return QueryGetValidatorsRequest.decode(message.value); + }, + toProto(message: QueryGetValidatorsRequest): Uint8Array { + return QueryGetValidatorsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetValidatorsRequest, + ): QueryGetValidatorsRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryGetValidatorsRequest', + value: QueryGetValidatorsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetValidatorsResponse(): QueryGetValidatorsResponse { + return { + validators: [], + }; +} +export const QueryGetValidatorsResponse = { + typeUrl: '/stride.stakeibc.QueryGetValidatorsResponse', + encode( + message: QueryGetValidatorsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.validators) { + Validator.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetValidatorsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetValidatorsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.validators.push(Validator.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetValidatorsResponse { + return { + validators: Array.isArray(object?.validators) + ? object.validators.map((e: any) => Validator.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryGetValidatorsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.validators) { + obj.validators = message.validators.map(e => + e ? Validator.toJSON(e) : undefined, + ); + } else { + obj.validators = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetValidatorsResponse { + const message = createBaseQueryGetValidatorsResponse(); + message.validators = + object.validators?.map(e => Validator.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryGetValidatorsResponseProtoMsg, + ): QueryGetValidatorsResponse { + return QueryGetValidatorsResponse.decode(message.value); + }, + toProto(message: QueryGetValidatorsResponse): Uint8Array { + return QueryGetValidatorsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetValidatorsResponse, + ): QueryGetValidatorsResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryGetValidatorsResponse', + value: QueryGetValidatorsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetHostZoneRequest(): QueryGetHostZoneRequest { + return { + chainId: '', + }; +} +export const QueryGetHostZoneRequest = { + typeUrl: '/stride.stakeibc.QueryGetHostZoneRequest', + encode( + message: QueryGetHostZoneRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetHostZoneRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetHostZoneRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetHostZoneRequest { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + }; + }, + toJSON(message: QueryGetHostZoneRequest): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetHostZoneRequest { + const message = createBaseQueryGetHostZoneRequest(); + message.chainId = object.chainId ?? ''; + return message; + }, + fromProtoMsg( + message: QueryGetHostZoneRequestProtoMsg, + ): QueryGetHostZoneRequest { + return QueryGetHostZoneRequest.decode(message.value); + }, + toProto(message: QueryGetHostZoneRequest): Uint8Array { + return QueryGetHostZoneRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetHostZoneRequest, + ): QueryGetHostZoneRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryGetHostZoneRequest', + value: QueryGetHostZoneRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetHostZoneResponse(): QueryGetHostZoneResponse { + return { + hostZone: HostZone.fromPartial({}), + }; +} +export const QueryGetHostZoneResponse = { + typeUrl: '/stride.stakeibc.QueryGetHostZoneResponse', + encode( + message: QueryGetHostZoneResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.hostZone !== undefined) { + HostZone.encode(message.hostZone, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetHostZoneResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetHostZoneResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZone = HostZone.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetHostZoneResponse { + return { + hostZone: isSet(object.hostZone) + ? HostZone.fromJSON(object.hostZone) + : undefined, + }; + }, + toJSON( + message: QueryGetHostZoneResponse, + ): JsonSafe { + const obj: any = {}; + message.hostZone !== undefined && + (obj.hostZone = message.hostZone + ? HostZone.toJSON(message.hostZone) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetHostZoneResponse { + const message = createBaseQueryGetHostZoneResponse(); + message.hostZone = + object.hostZone !== undefined && object.hostZone !== null + ? HostZone.fromPartial(object.hostZone) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetHostZoneResponseProtoMsg, + ): QueryGetHostZoneResponse { + return QueryGetHostZoneResponse.decode(message.value); + }, + toProto(message: QueryGetHostZoneResponse): Uint8Array { + return QueryGetHostZoneResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetHostZoneResponse, + ): QueryGetHostZoneResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryGetHostZoneResponse', + value: QueryGetHostZoneResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllHostZoneRequest(): QueryAllHostZoneRequest { + return { + pagination: undefined, + }; +} +export const QueryAllHostZoneRequest = { + typeUrl: '/stride.stakeibc.QueryAllHostZoneRequest', + encode( + message: QueryAllHostZoneRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllHostZoneRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllHostZoneRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllHostZoneRequest { + return { + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON(message: QueryAllHostZoneRequest): JsonSafe { + const obj: any = {}; + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllHostZoneRequest { + const message = createBaseQueryAllHostZoneRequest(); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllHostZoneRequestProtoMsg, + ): QueryAllHostZoneRequest { + return QueryAllHostZoneRequest.decode(message.value); + }, + toProto(message: QueryAllHostZoneRequest): Uint8Array { + return QueryAllHostZoneRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllHostZoneRequest, + ): QueryAllHostZoneRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryAllHostZoneRequest', + value: QueryAllHostZoneRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllHostZoneResponse(): QueryAllHostZoneResponse { + return { + hostZone: [], + pagination: undefined, + }; +} +export const QueryAllHostZoneResponse = { + typeUrl: '/stride.stakeibc.QueryAllHostZoneResponse', + encode( + message: QueryAllHostZoneResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.hostZone) { + HostZone.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllHostZoneResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllHostZoneResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZone.push(HostZone.decode(reader, reader.uint32())); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllHostZoneResponse { + return { + hostZone: Array.isArray(object?.hostZone) + ? object.hostZone.map((e: any) => HostZone.fromJSON(e)) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryAllHostZoneResponse, + ): JsonSafe { + const obj: any = {}; + if (message.hostZone) { + obj.hostZone = message.hostZone.map(e => + e ? HostZone.toJSON(e) : undefined, + ); + } else { + obj.hostZone = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllHostZoneResponse { + const message = createBaseQueryAllHostZoneResponse(); + message.hostZone = object.hostZone?.map(e => HostZone.fromPartial(e)) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryAllHostZoneResponseProtoMsg, + ): QueryAllHostZoneResponse { + return QueryAllHostZoneResponse.decode(message.value); + }, + toProto(message: QueryAllHostZoneResponse): Uint8Array { + return QueryAllHostZoneResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllHostZoneResponse, + ): QueryAllHostZoneResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryAllHostZoneResponse', + value: QueryAllHostZoneResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryModuleAddressRequest(): QueryModuleAddressRequest { + return { + name: '', + }; +} +export const QueryModuleAddressRequest = { + typeUrl: '/stride.stakeibc.QueryModuleAddressRequest', + encode( + message: QueryModuleAddressRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.name !== '') { + writer.uint32(10).string(message.name); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryModuleAddressRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryModuleAddressRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryModuleAddressRequest { + return { + name: isSet(object.name) ? String(object.name) : '', + }; + }, + toJSON( + message: QueryModuleAddressRequest, + ): JsonSafe { + const obj: any = {}; + message.name !== undefined && (obj.name = message.name); + return obj; + }, + fromPartial( + object: Partial, + ): QueryModuleAddressRequest { + const message = createBaseQueryModuleAddressRequest(); + message.name = object.name ?? ''; + return message; + }, + fromProtoMsg( + message: QueryModuleAddressRequestProtoMsg, + ): QueryModuleAddressRequest { + return QueryModuleAddressRequest.decode(message.value); + }, + toProto(message: QueryModuleAddressRequest): Uint8Array { + return QueryModuleAddressRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryModuleAddressRequest, + ): QueryModuleAddressRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryModuleAddressRequest', + value: QueryModuleAddressRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryModuleAddressResponse(): QueryModuleAddressResponse { + return { + addr: '', + }; +} +export const QueryModuleAddressResponse = { + typeUrl: '/stride.stakeibc.QueryModuleAddressResponse', + encode( + message: QueryModuleAddressResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.addr !== '') { + writer.uint32(10).string(message.addr); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryModuleAddressResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryModuleAddressResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.addr = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryModuleAddressResponse { + return { + addr: isSet(object.addr) ? String(object.addr) : '', + }; + }, + toJSON( + message: QueryModuleAddressResponse, + ): JsonSafe { + const obj: any = {}; + message.addr !== undefined && (obj.addr = message.addr); + return obj; + }, + fromPartial( + object: Partial, + ): QueryModuleAddressResponse { + const message = createBaseQueryModuleAddressResponse(); + message.addr = object.addr ?? ''; + return message; + }, + fromProtoMsg( + message: QueryModuleAddressResponseProtoMsg, + ): QueryModuleAddressResponse { + return QueryModuleAddressResponse.decode(message.value); + }, + toProto(message: QueryModuleAddressResponse): Uint8Array { + return QueryModuleAddressResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryModuleAddressResponse, + ): QueryModuleAddressResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryModuleAddressResponse', + value: QueryModuleAddressResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetEpochTrackerRequest(): QueryGetEpochTrackerRequest { + return { + epochIdentifier: '', + }; +} +export const QueryGetEpochTrackerRequest = { + typeUrl: '/stride.stakeibc.QueryGetEpochTrackerRequest', + encode( + message: QueryGetEpochTrackerRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.epochIdentifier !== '') { + writer.uint32(10).string(message.epochIdentifier); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetEpochTrackerRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetEpochTrackerRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochIdentifier = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetEpochTrackerRequest { + return { + epochIdentifier: isSet(object.epochIdentifier) + ? String(object.epochIdentifier) + : '', + }; + }, + toJSON( + message: QueryGetEpochTrackerRequest, + ): JsonSafe { + const obj: any = {}; + message.epochIdentifier !== undefined && + (obj.epochIdentifier = message.epochIdentifier); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetEpochTrackerRequest { + const message = createBaseQueryGetEpochTrackerRequest(); + message.epochIdentifier = object.epochIdentifier ?? ''; + return message; + }, + fromProtoMsg( + message: QueryGetEpochTrackerRequestProtoMsg, + ): QueryGetEpochTrackerRequest { + return QueryGetEpochTrackerRequest.decode(message.value); + }, + toProto(message: QueryGetEpochTrackerRequest): Uint8Array { + return QueryGetEpochTrackerRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetEpochTrackerRequest, + ): QueryGetEpochTrackerRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryGetEpochTrackerRequest', + value: QueryGetEpochTrackerRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetEpochTrackerResponse(): QueryGetEpochTrackerResponse { + return { + epochTracker: EpochTracker.fromPartial({}), + }; +} +export const QueryGetEpochTrackerResponse = { + typeUrl: '/stride.stakeibc.QueryGetEpochTrackerResponse', + encode( + message: QueryGetEpochTrackerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.epochTracker !== undefined) { + EpochTracker.encode( + message.epochTracker, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetEpochTrackerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetEpochTrackerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochTracker = EpochTracker.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetEpochTrackerResponse { + return { + epochTracker: isSet(object.epochTracker) + ? EpochTracker.fromJSON(object.epochTracker) + : undefined, + }; + }, + toJSON( + message: QueryGetEpochTrackerResponse, + ): JsonSafe { + const obj: any = {}; + message.epochTracker !== undefined && + (obj.epochTracker = message.epochTracker + ? EpochTracker.toJSON(message.epochTracker) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetEpochTrackerResponse { + const message = createBaseQueryGetEpochTrackerResponse(); + message.epochTracker = + object.epochTracker !== undefined && object.epochTracker !== null + ? EpochTracker.fromPartial(object.epochTracker) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryGetEpochTrackerResponseProtoMsg, + ): QueryGetEpochTrackerResponse { + return QueryGetEpochTrackerResponse.decode(message.value); + }, + toProto(message: QueryGetEpochTrackerResponse): Uint8Array { + return QueryGetEpochTrackerResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetEpochTrackerResponse, + ): QueryGetEpochTrackerResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryGetEpochTrackerResponse', + value: QueryGetEpochTrackerResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllEpochTrackerRequest(): QueryAllEpochTrackerRequest { + return {}; +} +export const QueryAllEpochTrackerRequest = { + typeUrl: '/stride.stakeibc.QueryAllEpochTrackerRequest', + encode( + _: QueryAllEpochTrackerRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllEpochTrackerRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllEpochTrackerRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryAllEpochTrackerRequest { + return {}; + }, + toJSON( + _: QueryAllEpochTrackerRequest, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): QueryAllEpochTrackerRequest { + const message = createBaseQueryAllEpochTrackerRequest(); + return message; + }, + fromProtoMsg( + message: QueryAllEpochTrackerRequestProtoMsg, + ): QueryAllEpochTrackerRequest { + return QueryAllEpochTrackerRequest.decode(message.value); + }, + toProto(message: QueryAllEpochTrackerRequest): Uint8Array { + return QueryAllEpochTrackerRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllEpochTrackerRequest, + ): QueryAllEpochTrackerRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryAllEpochTrackerRequest', + value: QueryAllEpochTrackerRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllEpochTrackerResponse(): QueryAllEpochTrackerResponse { + return { + epochTracker: [], + }; +} +export const QueryAllEpochTrackerResponse = { + typeUrl: '/stride.stakeibc.QueryAllEpochTrackerResponse', + encode( + message: QueryAllEpochTrackerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.epochTracker) { + EpochTracker.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllEpochTrackerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllEpochTrackerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.epochTracker.push( + EpochTracker.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllEpochTrackerResponse { + return { + epochTracker: Array.isArray(object?.epochTracker) + ? object.epochTracker.map((e: any) => EpochTracker.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryAllEpochTrackerResponse, + ): JsonSafe { + const obj: any = {}; + if (message.epochTracker) { + obj.epochTracker = message.epochTracker.map(e => + e ? EpochTracker.toJSON(e) : undefined, + ); + } else { + obj.epochTracker = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllEpochTrackerResponse { + const message = createBaseQueryAllEpochTrackerResponse(); + message.epochTracker = + object.epochTracker?.map(e => EpochTracker.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryAllEpochTrackerResponseProtoMsg, + ): QueryAllEpochTrackerResponse { + return QueryAllEpochTrackerResponse.decode(message.value); + }, + toProto(message: QueryAllEpochTrackerResponse): Uint8Array { + return QueryAllEpochTrackerResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllEpochTrackerResponse, + ): QueryAllEpochTrackerResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryAllEpochTrackerResponse', + value: QueryAllEpochTrackerResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetNextPacketSequenceRequest(): QueryGetNextPacketSequenceRequest { + return { + channelId: '', + portId: '', + }; +} +export const QueryGetNextPacketSequenceRequest = { + typeUrl: '/stride.stakeibc.QueryGetNextPacketSequenceRequest', + encode( + message: QueryGetNextPacketSequenceRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.channelId !== '') { + writer.uint32(10).string(message.channelId); + } + if (message.portId !== '') { + writer.uint32(18).string(message.portId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetNextPacketSequenceRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetNextPacketSequenceRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.channelId = reader.string(); + break; + case 2: + message.portId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetNextPacketSequenceRequest { + return { + channelId: isSet(object.channelId) ? String(object.channelId) : '', + portId: isSet(object.portId) ? String(object.portId) : '', + }; + }, + toJSON( + message: QueryGetNextPacketSequenceRequest, + ): JsonSafe { + const obj: any = {}; + message.channelId !== undefined && (obj.channelId = message.channelId); + message.portId !== undefined && (obj.portId = message.portId); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetNextPacketSequenceRequest { + const message = createBaseQueryGetNextPacketSequenceRequest(); + message.channelId = object.channelId ?? ''; + message.portId = object.portId ?? ''; + return message; + }, + fromProtoMsg( + message: QueryGetNextPacketSequenceRequestProtoMsg, + ): QueryGetNextPacketSequenceRequest { + return QueryGetNextPacketSequenceRequest.decode(message.value); + }, + toProto(message: QueryGetNextPacketSequenceRequest): Uint8Array { + return QueryGetNextPacketSequenceRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetNextPacketSequenceRequest, + ): QueryGetNextPacketSequenceRequestProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryGetNextPacketSequenceRequest', + value: QueryGetNextPacketSequenceRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryGetNextPacketSequenceResponse(): QueryGetNextPacketSequenceResponse { + return { + sequence: BigInt(0), + }; +} +export const QueryGetNextPacketSequenceResponse = { + typeUrl: '/stride.stakeibc.QueryGetNextPacketSequenceResponse', + encode( + message: QueryGetNextPacketSequenceResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.sequence !== BigInt(0)) { + writer.uint32(8).uint64(message.sequence); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryGetNextPacketSequenceResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryGetNextPacketSequenceResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sequence = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryGetNextPacketSequenceResponse { + return { + sequence: isSet(object.sequence) + ? BigInt(object.sequence.toString()) + : BigInt(0), + }; + }, + toJSON( + message: QueryGetNextPacketSequenceResponse, + ): JsonSafe { + const obj: any = {}; + message.sequence !== undefined && + (obj.sequence = (message.sequence || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): QueryGetNextPacketSequenceResponse { + const message = createBaseQueryGetNextPacketSequenceResponse(); + message.sequence = + object.sequence !== undefined && object.sequence !== null + ? BigInt(object.sequence.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: QueryGetNextPacketSequenceResponseProtoMsg, + ): QueryGetNextPacketSequenceResponse { + return QueryGetNextPacketSequenceResponse.decode(message.value); + }, + toProto(message: QueryGetNextPacketSequenceResponse): Uint8Array { + return QueryGetNextPacketSequenceResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryGetNextPacketSequenceResponse, + ): QueryGetNextPacketSequenceResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryGetNextPacketSequenceResponse', + value: QueryGetNextPacketSequenceResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAddressUnbondings(): QueryAddressUnbondings { + return { + address: '', + }; +} +export const QueryAddressUnbondings = { + typeUrl: '/stride.stakeibc.QueryAddressUnbondings', + encode( + message: QueryAddressUnbondings, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.address !== '') { + writer.uint32(10).string(message.address); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAddressUnbondings { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAddressUnbondings(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAddressUnbondings { + return { + address: isSet(object.address) ? String(object.address) : '', + }; + }, + toJSON(message: QueryAddressUnbondings): JsonSafe { + const obj: any = {}; + message.address !== undefined && (obj.address = message.address); + return obj; + }, + fromPartial(object: Partial): QueryAddressUnbondings { + const message = createBaseQueryAddressUnbondings(); + message.address = object.address ?? ''; + return message; + }, + fromProtoMsg( + message: QueryAddressUnbondingsProtoMsg, + ): QueryAddressUnbondings { + return QueryAddressUnbondings.decode(message.value); + }, + toProto(message: QueryAddressUnbondings): Uint8Array { + return QueryAddressUnbondings.encode(message).finish(); + }, + toProtoMsg(message: QueryAddressUnbondings): QueryAddressUnbondingsProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryAddressUnbondings', + value: QueryAddressUnbondings.encode(message).finish(), + }; + }, +}; +function createBaseQueryAddressUnbondingsResponse(): QueryAddressUnbondingsResponse { + return { + addressUnbondings: [], + }; +} +export const QueryAddressUnbondingsResponse = { + typeUrl: '/stride.stakeibc.QueryAddressUnbondingsResponse', + encode( + message: QueryAddressUnbondingsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.addressUnbondings) { + AddressUnbonding.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAddressUnbondingsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAddressUnbondingsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.addressUnbondings.push( + AddressUnbonding.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAddressUnbondingsResponse { + return { + addressUnbondings: Array.isArray(object?.addressUnbondings) + ? object.addressUnbondings.map((e: any) => AddressUnbonding.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryAddressUnbondingsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.addressUnbondings) { + obj.addressUnbondings = message.addressUnbondings.map(e => + e ? AddressUnbonding.toJSON(e) : undefined, + ); + } else { + obj.addressUnbondings = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryAddressUnbondingsResponse { + const message = createBaseQueryAddressUnbondingsResponse(); + message.addressUnbondings = + object.addressUnbondings?.map(e => AddressUnbonding.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryAddressUnbondingsResponseProtoMsg, + ): QueryAddressUnbondingsResponse { + return QueryAddressUnbondingsResponse.decode(message.value); + }, + toProto(message: QueryAddressUnbondingsResponse): Uint8Array { + return QueryAddressUnbondingsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAddressUnbondingsResponse, + ): QueryAddressUnbondingsResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryAddressUnbondingsResponse', + value: QueryAddressUnbondingsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllTradeRoutes(): QueryAllTradeRoutes { + return {}; +} +export const QueryAllTradeRoutes = { + typeUrl: '/stride.stakeibc.QueryAllTradeRoutes', + encode( + _: QueryAllTradeRoutes, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllTradeRoutes { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllTradeRoutes(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryAllTradeRoutes { + return {}; + }, + toJSON(_: QueryAllTradeRoutes): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QueryAllTradeRoutes { + const message = createBaseQueryAllTradeRoutes(); + return message; + }, + fromProtoMsg(message: QueryAllTradeRoutesProtoMsg): QueryAllTradeRoutes { + return QueryAllTradeRoutes.decode(message.value); + }, + toProto(message: QueryAllTradeRoutes): Uint8Array { + return QueryAllTradeRoutes.encode(message).finish(); + }, + toProtoMsg(message: QueryAllTradeRoutes): QueryAllTradeRoutesProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryAllTradeRoutes', + value: QueryAllTradeRoutes.encode(message).finish(), + }; + }, +}; +function createBaseQueryAllTradeRoutesResponse(): QueryAllTradeRoutesResponse { + return { + tradeRoutes: [], + }; +} +export const QueryAllTradeRoutesResponse = { + typeUrl: '/stride.stakeibc.QueryAllTradeRoutesResponse', + encode( + message: QueryAllTradeRoutesResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.tradeRoutes) { + TradeRoute.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryAllTradeRoutesResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryAllTradeRoutesResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.tradeRoutes.push(TradeRoute.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryAllTradeRoutesResponse { + return { + tradeRoutes: Array.isArray(object?.tradeRoutes) + ? object.tradeRoutes.map((e: any) => TradeRoute.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryAllTradeRoutesResponse, + ): JsonSafe { + const obj: any = {}; + if (message.tradeRoutes) { + obj.tradeRoutes = message.tradeRoutes.map(e => + e ? TradeRoute.toJSON(e) : undefined, + ); + } else { + obj.tradeRoutes = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryAllTradeRoutesResponse { + const message = createBaseQueryAllTradeRoutesResponse(); + message.tradeRoutes = + object.tradeRoutes?.map(e => TradeRoute.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryAllTradeRoutesResponseProtoMsg, + ): QueryAllTradeRoutesResponse { + return QueryAllTradeRoutesResponse.decode(message.value); + }, + toProto(message: QueryAllTradeRoutesResponse): Uint8Array { + return QueryAllTradeRoutesResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryAllTradeRoutesResponse, + ): QueryAllTradeRoutesResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.QueryAllTradeRoutesResponse', + value: QueryAllTradeRoutesResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/trade_route.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/trade_route.ts new file mode 100644 index 00000000000..677c711b04d --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/trade_route.ts @@ -0,0 +1,548 @@ +//@ts-nocheck +import { ICAAccount, type ICAAccountSDKType } from './ica_account.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { Decimal, isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** + * Deprecated, this configuration is no longer needed since swaps + * are executed off-chain via authz + * + * Stores pool information needed to execute the swap along a trade route + */ +/** @deprecated */ +export interface TradeConfig { + /** Currently Osmosis is the only trade chain so this is an osmosis pool id */ + poolId: bigint; + /** + * Spot price in the pool to convert the reward denom to the host denom + * output_tokens = swap_price * input tokens + * This value may be slightly stale as it is updated by an ICQ + */ + swapPrice: string; + /** unix time in seconds that the price was last updated */ + priceUpdateTimestamp: bigint; + /** + * Threshold defining the percentage of tokens that could be lost in the trade + * This captures both the loss from slippage and from a stale price on stride + * 0.05 means the output from the trade can be no less than a 5% deviation + * from the current value + */ + maxAllowedSwapLossRate: string; + /** + * min and max set boundaries of reward denom on trade chain we will swap + * min also decides when reward token transfers are worth it (transfer fees) + */ + minSwapAmount: string; + maxSwapAmount: string; +} +export interface TradeConfigProtoMsg { + typeUrl: '/stride.stakeibc.TradeConfig'; + value: Uint8Array; +} +/** + * Deprecated, this configuration is no longer needed since swaps + * are executed off-chain via authz + * + * Stores pool information needed to execute the swap along a trade route + */ +/** @deprecated */ +export interface TradeConfigSDKType { + pool_id: bigint; + swap_price: string; + price_update_timestamp: bigint; + max_allowed_swap_loss_rate: string; + min_swap_amount: string; + max_swap_amount: string; +} +/** + * TradeRoute represents a round trip including info on transfer and how to do + * the swap. It makes the assumption that the reward token is always foreign to + * the host so therefore the first two hops are to unwind the ibc denom enroute + * to the trade chain and the last hop is the return so funds start/end in the + * withdrawl ICA on hostZone + * The structure is key'd on reward denom and host denom in their native forms + * (i.e. reward_denom_on_reward_zone and host_denom_on_host_zone) + */ +export interface TradeRoute { + /** ibc denom for the reward on the host zone */ + rewardDenomOnHostZone: string; + /** should be the native denom for the reward chain */ + rewardDenomOnRewardZone: string; + /** ibc denom of the reward on the trade chain, input to the swap */ + rewardDenomOnTradeZone: string; + /** ibc of the host denom on the trade chain, output from the swap */ + hostDenomOnTradeZone: string; + /** should be the same as the native host denom on the host chain */ + hostDenomOnHostZone: string; + /** + * ICAAccount on the host zone with the reward tokens + * This is the same as the host zone withdrawal ICA account + */ + hostAccount: ICAAccount; + /** + * ICAAccount on the reward zone that is acts as the intermediate + * receiver of the transfer from host zone to trade zone + */ + rewardAccount: ICAAccount; + /** + * ICAAccount responsible for executing the swap of reward + * tokens for host tokens + */ + tradeAccount: ICAAccount; + /** + * Channel responsible for the transfer of reward tokens from the host + * zone to the reward zone. This is the channel ID on the host zone side + */ + hostToRewardChannelId: string; + /** + * Channel responsible for the transfer of reward tokens from the reward + * zone to the trade zone. This is the channel ID on the reward zone side + */ + rewardToTradeChannelId: string; + /** + * Channel responsible for the transfer of host tokens from the trade + * zone, back to the host zone. This is the channel ID on the trade zone side + */ + tradeToHostChannelId: string; + /** + * Minimum amount of reward token that must be accumulated before + * the tokens are transferred to the trade ICA + */ + minTransferAmount: string; + /** + * Deprecated, the trades are now executed off-chain via authz + * so the trade configuration is no longer needed + * + * specifies the configuration needed to execute the swap + * such as pool_id, slippage, min trade amount, etc. + */ + /** @deprecated */ + tradeConfig: TradeConfig; +} +export interface TradeRouteProtoMsg { + typeUrl: '/stride.stakeibc.TradeRoute'; + value: Uint8Array; +} +/** + * TradeRoute represents a round trip including info on transfer and how to do + * the swap. It makes the assumption that the reward token is always foreign to + * the host so therefore the first two hops are to unwind the ibc denom enroute + * to the trade chain and the last hop is the return so funds start/end in the + * withdrawl ICA on hostZone + * The structure is key'd on reward denom and host denom in their native forms + * (i.e. reward_denom_on_reward_zone and host_denom_on_host_zone) + */ +export interface TradeRouteSDKType { + reward_denom_on_host_zone: string; + reward_denom_on_reward_zone: string; + reward_denom_on_trade_zone: string; + host_denom_on_trade_zone: string; + host_denom_on_host_zone: string; + host_account: ICAAccountSDKType; + reward_account: ICAAccountSDKType; + trade_account: ICAAccountSDKType; + host_to_reward_channel_id: string; + reward_to_trade_channel_id: string; + trade_to_host_channel_id: string; + min_transfer_amount: string; + /** @deprecated */ + trade_config: TradeConfigSDKType; +} +function createBaseTradeConfig(): TradeConfig { + return { + poolId: BigInt(0), + swapPrice: '', + priceUpdateTimestamp: BigInt(0), + maxAllowedSwapLossRate: '', + minSwapAmount: '', + maxSwapAmount: '', + }; +} +export const TradeConfig = { + typeUrl: '/stride.stakeibc.TradeConfig', + encode( + message: TradeConfig, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.poolId !== BigInt(0)) { + writer.uint32(8).uint64(message.poolId); + } + if (message.swapPrice !== '') { + writer + .uint32(18) + .string(Decimal.fromUserInput(message.swapPrice, 18).atomics); + } + if (message.priceUpdateTimestamp !== BigInt(0)) { + writer.uint32(24).uint64(message.priceUpdateTimestamp); + } + if (message.maxAllowedSwapLossRate !== '') { + writer + .uint32(34) + .string( + Decimal.fromUserInput(message.maxAllowedSwapLossRate, 18).atomics, + ); + } + if (message.minSwapAmount !== '') { + writer.uint32(42).string(message.minSwapAmount); + } + if (message.maxSwapAmount !== '') { + writer.uint32(50).string(message.maxSwapAmount); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): TradeConfig { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTradeConfig(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.poolId = reader.uint64(); + break; + case 2: + message.swapPrice = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 3: + message.priceUpdateTimestamp = reader.uint64(); + break; + case 4: + message.maxAllowedSwapLossRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 5: + message.minSwapAmount = reader.string(); + break; + case 6: + message.maxSwapAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TradeConfig { + return { + poolId: isSet(object.poolId) + ? BigInt(object.poolId.toString()) + : BigInt(0), + swapPrice: isSet(object.swapPrice) ? String(object.swapPrice) : '', + priceUpdateTimestamp: isSet(object.priceUpdateTimestamp) + ? BigInt(object.priceUpdateTimestamp.toString()) + : BigInt(0), + maxAllowedSwapLossRate: isSet(object.maxAllowedSwapLossRate) + ? String(object.maxAllowedSwapLossRate) + : '', + minSwapAmount: isSet(object.minSwapAmount) + ? String(object.minSwapAmount) + : '', + maxSwapAmount: isSet(object.maxSwapAmount) + ? String(object.maxSwapAmount) + : '', + }; + }, + toJSON(message: TradeConfig): JsonSafe { + const obj: any = {}; + message.poolId !== undefined && + (obj.poolId = (message.poolId || BigInt(0)).toString()); + message.swapPrice !== undefined && (obj.swapPrice = message.swapPrice); + message.priceUpdateTimestamp !== undefined && + (obj.priceUpdateTimestamp = ( + message.priceUpdateTimestamp || BigInt(0) + ).toString()); + message.maxAllowedSwapLossRate !== undefined && + (obj.maxAllowedSwapLossRate = message.maxAllowedSwapLossRate); + message.minSwapAmount !== undefined && + (obj.minSwapAmount = message.minSwapAmount); + message.maxSwapAmount !== undefined && + (obj.maxSwapAmount = message.maxSwapAmount); + return obj; + }, + fromPartial(object: Partial): TradeConfig { + const message = createBaseTradeConfig(); + message.poolId = + object.poolId !== undefined && object.poolId !== null + ? BigInt(object.poolId.toString()) + : BigInt(0); + message.swapPrice = object.swapPrice ?? ''; + message.priceUpdateTimestamp = + object.priceUpdateTimestamp !== undefined && + object.priceUpdateTimestamp !== null + ? BigInt(object.priceUpdateTimestamp.toString()) + : BigInt(0); + message.maxAllowedSwapLossRate = object.maxAllowedSwapLossRate ?? ''; + message.minSwapAmount = object.minSwapAmount ?? ''; + message.maxSwapAmount = object.maxSwapAmount ?? ''; + return message; + }, + fromProtoMsg(message: TradeConfigProtoMsg): TradeConfig { + return TradeConfig.decode(message.value); + }, + toProto(message: TradeConfig): Uint8Array { + return TradeConfig.encode(message).finish(); + }, + toProtoMsg(message: TradeConfig): TradeConfigProtoMsg { + return { + typeUrl: '/stride.stakeibc.TradeConfig', + value: TradeConfig.encode(message).finish(), + }; + }, +}; +function createBaseTradeRoute(): TradeRoute { + return { + rewardDenomOnHostZone: '', + rewardDenomOnRewardZone: '', + rewardDenomOnTradeZone: '', + hostDenomOnTradeZone: '', + hostDenomOnHostZone: '', + hostAccount: ICAAccount.fromPartial({}), + rewardAccount: ICAAccount.fromPartial({}), + tradeAccount: ICAAccount.fromPartial({}), + hostToRewardChannelId: '', + rewardToTradeChannelId: '', + tradeToHostChannelId: '', + minTransferAmount: '', + tradeConfig: TradeConfig.fromPartial({}), + }; +} +export const TradeRoute = { + typeUrl: '/stride.stakeibc.TradeRoute', + encode( + message: TradeRoute, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.rewardDenomOnHostZone !== '') { + writer.uint32(10).string(message.rewardDenomOnHostZone); + } + if (message.rewardDenomOnRewardZone !== '') { + writer.uint32(18).string(message.rewardDenomOnRewardZone); + } + if (message.rewardDenomOnTradeZone !== '') { + writer.uint32(26).string(message.rewardDenomOnTradeZone); + } + if (message.hostDenomOnTradeZone !== '') { + writer.uint32(34).string(message.hostDenomOnTradeZone); + } + if (message.hostDenomOnHostZone !== '') { + writer.uint32(42).string(message.hostDenomOnHostZone); + } + if (message.hostAccount !== undefined) { + ICAAccount.encode(message.hostAccount, writer.uint32(50).fork()).ldelim(); + } + if (message.rewardAccount !== undefined) { + ICAAccount.encode( + message.rewardAccount, + writer.uint32(58).fork(), + ).ldelim(); + } + if (message.tradeAccount !== undefined) { + ICAAccount.encode( + message.tradeAccount, + writer.uint32(66).fork(), + ).ldelim(); + } + if (message.hostToRewardChannelId !== '') { + writer.uint32(74).string(message.hostToRewardChannelId); + } + if (message.rewardToTradeChannelId !== '') { + writer.uint32(82).string(message.rewardToTradeChannelId); + } + if (message.tradeToHostChannelId !== '') { + writer.uint32(90).string(message.tradeToHostChannelId); + } + if (message.minTransferAmount !== '') { + writer.uint32(106).string(message.minTransferAmount); + } + if (message.tradeConfig !== undefined) { + TradeConfig.encode( + message.tradeConfig, + writer.uint32(98).fork(), + ).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): TradeRoute { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTradeRoute(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.rewardDenomOnHostZone = reader.string(); + break; + case 2: + message.rewardDenomOnRewardZone = reader.string(); + break; + case 3: + message.rewardDenomOnTradeZone = reader.string(); + break; + case 4: + message.hostDenomOnTradeZone = reader.string(); + break; + case 5: + message.hostDenomOnHostZone = reader.string(); + break; + case 6: + message.hostAccount = ICAAccount.decode(reader, reader.uint32()); + break; + case 7: + message.rewardAccount = ICAAccount.decode(reader, reader.uint32()); + break; + case 8: + message.tradeAccount = ICAAccount.decode(reader, reader.uint32()); + break; + case 9: + message.hostToRewardChannelId = reader.string(); + break; + case 10: + message.rewardToTradeChannelId = reader.string(); + break; + case 11: + message.tradeToHostChannelId = reader.string(); + break; + case 13: + message.minTransferAmount = reader.string(); + break; + case 12: + message.tradeConfig = TradeConfig.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TradeRoute { + return { + rewardDenomOnHostZone: isSet(object.rewardDenomOnHostZone) + ? String(object.rewardDenomOnHostZone) + : '', + rewardDenomOnRewardZone: isSet(object.rewardDenomOnRewardZone) + ? String(object.rewardDenomOnRewardZone) + : '', + rewardDenomOnTradeZone: isSet(object.rewardDenomOnTradeZone) + ? String(object.rewardDenomOnTradeZone) + : '', + hostDenomOnTradeZone: isSet(object.hostDenomOnTradeZone) + ? String(object.hostDenomOnTradeZone) + : '', + hostDenomOnHostZone: isSet(object.hostDenomOnHostZone) + ? String(object.hostDenomOnHostZone) + : '', + hostAccount: isSet(object.hostAccount) + ? ICAAccount.fromJSON(object.hostAccount) + : undefined, + rewardAccount: isSet(object.rewardAccount) + ? ICAAccount.fromJSON(object.rewardAccount) + : undefined, + tradeAccount: isSet(object.tradeAccount) + ? ICAAccount.fromJSON(object.tradeAccount) + : undefined, + hostToRewardChannelId: isSet(object.hostToRewardChannelId) + ? String(object.hostToRewardChannelId) + : '', + rewardToTradeChannelId: isSet(object.rewardToTradeChannelId) + ? String(object.rewardToTradeChannelId) + : '', + tradeToHostChannelId: isSet(object.tradeToHostChannelId) + ? String(object.tradeToHostChannelId) + : '', + minTransferAmount: isSet(object.minTransferAmount) + ? String(object.minTransferAmount) + : '', + tradeConfig: isSet(object.tradeConfig) + ? TradeConfig.fromJSON(object.tradeConfig) + : undefined, + }; + }, + toJSON(message: TradeRoute): JsonSafe { + const obj: any = {}; + message.rewardDenomOnHostZone !== undefined && + (obj.rewardDenomOnHostZone = message.rewardDenomOnHostZone); + message.rewardDenomOnRewardZone !== undefined && + (obj.rewardDenomOnRewardZone = message.rewardDenomOnRewardZone); + message.rewardDenomOnTradeZone !== undefined && + (obj.rewardDenomOnTradeZone = message.rewardDenomOnTradeZone); + message.hostDenomOnTradeZone !== undefined && + (obj.hostDenomOnTradeZone = message.hostDenomOnTradeZone); + message.hostDenomOnHostZone !== undefined && + (obj.hostDenomOnHostZone = message.hostDenomOnHostZone); + message.hostAccount !== undefined && + (obj.hostAccount = message.hostAccount + ? ICAAccount.toJSON(message.hostAccount) + : undefined); + message.rewardAccount !== undefined && + (obj.rewardAccount = message.rewardAccount + ? ICAAccount.toJSON(message.rewardAccount) + : undefined); + message.tradeAccount !== undefined && + (obj.tradeAccount = message.tradeAccount + ? ICAAccount.toJSON(message.tradeAccount) + : undefined); + message.hostToRewardChannelId !== undefined && + (obj.hostToRewardChannelId = message.hostToRewardChannelId); + message.rewardToTradeChannelId !== undefined && + (obj.rewardToTradeChannelId = message.rewardToTradeChannelId); + message.tradeToHostChannelId !== undefined && + (obj.tradeToHostChannelId = message.tradeToHostChannelId); + message.minTransferAmount !== undefined && + (obj.minTransferAmount = message.minTransferAmount); + message.tradeConfig !== undefined && + (obj.tradeConfig = message.tradeConfig + ? TradeConfig.toJSON(message.tradeConfig) + : undefined); + return obj; + }, + fromPartial(object: Partial): TradeRoute { + const message = createBaseTradeRoute(); + message.rewardDenomOnHostZone = object.rewardDenomOnHostZone ?? ''; + message.rewardDenomOnRewardZone = object.rewardDenomOnRewardZone ?? ''; + message.rewardDenomOnTradeZone = object.rewardDenomOnTradeZone ?? ''; + message.hostDenomOnTradeZone = object.hostDenomOnTradeZone ?? ''; + message.hostDenomOnHostZone = object.hostDenomOnHostZone ?? ''; + message.hostAccount = + object.hostAccount !== undefined && object.hostAccount !== null + ? ICAAccount.fromPartial(object.hostAccount) + : undefined; + message.rewardAccount = + object.rewardAccount !== undefined && object.rewardAccount !== null + ? ICAAccount.fromPartial(object.rewardAccount) + : undefined; + message.tradeAccount = + object.tradeAccount !== undefined && object.tradeAccount !== null + ? ICAAccount.fromPartial(object.tradeAccount) + : undefined; + message.hostToRewardChannelId = object.hostToRewardChannelId ?? ''; + message.rewardToTradeChannelId = object.rewardToTradeChannelId ?? ''; + message.tradeToHostChannelId = object.tradeToHostChannelId ?? ''; + message.minTransferAmount = object.minTransferAmount ?? ''; + message.tradeConfig = + object.tradeConfig !== undefined && object.tradeConfig !== null + ? TradeConfig.fromPartial(object.tradeConfig) + : undefined; + return message; + }, + fromProtoMsg(message: TradeRouteProtoMsg): TradeRoute { + return TradeRoute.decode(message.value); + }, + toProto(message: TradeRoute): Uint8Array { + return TradeRoute.encode(message).finish(); + }, + toProtoMsg(message: TradeRoute): TradeRouteProtoMsg { + return { + typeUrl: '/stride.stakeibc.TradeRoute', + value: TradeRoute.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/tx.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/tx.ts new file mode 100644 index 00000000000..b2805ec8914 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/tx.ts @@ -0,0 +1,4607 @@ +//@ts-nocheck +import { Validator, type ValidatorSDKType } from './validator.js'; +import { Coin, type CoinSDKType } from '../../cosmos/base/v1beta1/coin.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { Decimal, isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export enum AuthzPermissionChange { + /** GRANT - Grant the address trade permissions */ + GRANT = 0, + /** REVOKE - Revoke trade permissions from the address */ + REVOKE = 1, + UNRECOGNIZED = -1, +} +export const AuthzPermissionChangeSDKType = AuthzPermissionChange; +export function authzPermissionChangeFromJSON( + object: any, +): AuthzPermissionChange { + switch (object) { + case 0: + case 'GRANT': + return AuthzPermissionChange.GRANT; + case 1: + case 'REVOKE': + return AuthzPermissionChange.REVOKE; + case -1: + case 'UNRECOGNIZED': + default: + return AuthzPermissionChange.UNRECOGNIZED; + } +} +export function authzPermissionChangeToJSON( + object: AuthzPermissionChange, +): string { + switch (object) { + case AuthzPermissionChange.GRANT: + return 'GRANT'; + case AuthzPermissionChange.REVOKE: + return 'REVOKE'; + case AuthzPermissionChange.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +export interface MsgUpdateInnerRedemptionRateBounds { + creator: string; + chainId: string; + minInnerRedemptionRate: string; + maxInnerRedemptionRate: string; +} +export interface MsgUpdateInnerRedemptionRateBoundsProtoMsg { + typeUrl: '/stride.stakeibc.MsgUpdateInnerRedemptionRateBounds'; + value: Uint8Array; +} +export interface MsgUpdateInnerRedemptionRateBoundsSDKType { + creator: string; + chain_id: string; + min_inner_redemption_rate: string; + max_inner_redemption_rate: string; +} +export interface MsgUpdateInnerRedemptionRateBoundsResponse {} +export interface MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgUpdateInnerRedemptionRateBoundsResponse'; + value: Uint8Array; +} +export interface MsgUpdateInnerRedemptionRateBoundsResponseSDKType {} +export interface MsgLiquidStake { + creator: string; + amount: string; + hostDenom: string; +} +export interface MsgLiquidStakeProtoMsg { + typeUrl: '/stride.stakeibc.MsgLiquidStake'; + value: Uint8Array; +} +export interface MsgLiquidStakeSDKType { + creator: string; + amount: string; + host_denom: string; +} +export interface MsgLiquidStakeResponse { + stToken: Coin; +} +export interface MsgLiquidStakeResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgLiquidStakeResponse'; + value: Uint8Array; +} +export interface MsgLiquidStakeResponseSDKType { + st_token: CoinSDKType; +} +export interface MsgLSMLiquidStake { + creator: string; + amount: string; + lsmTokenIbcDenom: string; +} +export interface MsgLSMLiquidStakeProtoMsg { + typeUrl: '/stride.stakeibc.MsgLSMLiquidStake'; + value: Uint8Array; +} +export interface MsgLSMLiquidStakeSDKType { + creator: string; + amount: string; + lsm_token_ibc_denom: string; +} +export interface MsgLSMLiquidStakeResponse { + transactionComplete: boolean; +} +export interface MsgLSMLiquidStakeResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgLSMLiquidStakeResponse'; + value: Uint8Array; +} +export interface MsgLSMLiquidStakeResponseSDKType { + transaction_complete: boolean; +} +export interface MsgClearBalance { + creator: string; + chainId: string; + amount: string; + channel: string; +} +export interface MsgClearBalanceProtoMsg { + typeUrl: '/stride.stakeibc.MsgClearBalance'; + value: Uint8Array; +} +export interface MsgClearBalanceSDKType { + creator: string; + chain_id: string; + amount: string; + channel: string; +} +export interface MsgClearBalanceResponse {} +export interface MsgClearBalanceResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgClearBalanceResponse'; + value: Uint8Array; +} +export interface MsgClearBalanceResponseSDKType {} +export interface MsgRedeemStake { + creator: string; + amount: string; + hostZone: string; + receiver: string; +} +export interface MsgRedeemStakeProtoMsg { + typeUrl: '/stride.stakeibc.MsgRedeemStake'; + value: Uint8Array; +} +export interface MsgRedeemStakeSDKType { + creator: string; + amount: string; + host_zone: string; + receiver: string; +} +export interface MsgRedeemStakeResponse {} +export interface MsgRedeemStakeResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgRedeemStakeResponse'; + value: Uint8Array; +} +export interface MsgRedeemStakeResponseSDKType {} +/** next: 15 */ +export interface MsgRegisterHostZone { + connectionId: string; + bech32prefix: string; + hostDenom: string; + ibcDenom: string; + creator: string; + transferChannelId: string; + unbondingPeriod: bigint; + minRedemptionRate: string; + maxRedemptionRate: string; + lsmLiquidStakeEnabled: boolean; + communityPoolTreasuryAddress: string; + maxMessagesPerIcaTx: bigint; +} +export interface MsgRegisterHostZoneProtoMsg { + typeUrl: '/stride.stakeibc.MsgRegisterHostZone'; + value: Uint8Array; +} +/** next: 15 */ +export interface MsgRegisterHostZoneSDKType { + connection_id: string; + bech32prefix: string; + host_denom: string; + ibc_denom: string; + creator: string; + transfer_channel_id: string; + unbonding_period: bigint; + min_redemption_rate: string; + max_redemption_rate: string; + lsm_liquid_stake_enabled: boolean; + community_pool_treasury_address: string; + max_messages_per_ica_tx: bigint; +} +export interface MsgRegisterHostZoneResponse {} +export interface MsgRegisterHostZoneResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgRegisterHostZoneResponse'; + value: Uint8Array; +} +export interface MsgRegisterHostZoneResponseSDKType {} +export interface MsgClaimUndelegatedTokens { + creator: string; + /** UserUnbondingRecords are keyed on {chain_id}.{epoch}.{receiver} */ + hostZoneId: string; + epoch: bigint; + receiver: string; +} +export interface MsgClaimUndelegatedTokensProtoMsg { + typeUrl: '/stride.stakeibc.MsgClaimUndelegatedTokens'; + value: Uint8Array; +} +export interface MsgClaimUndelegatedTokensSDKType { + creator: string; + host_zone_id: string; + epoch: bigint; + receiver: string; +} +export interface MsgClaimUndelegatedTokensResponse {} +export interface MsgClaimUndelegatedTokensResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgClaimUndelegatedTokensResponse'; + value: Uint8Array; +} +export interface MsgClaimUndelegatedTokensResponseSDKType {} +export interface MsgRebalanceValidators { + creator: string; + hostZone: string; + numRebalance: bigint; +} +export interface MsgRebalanceValidatorsProtoMsg { + typeUrl: '/stride.stakeibc.MsgRebalanceValidators'; + value: Uint8Array; +} +export interface MsgRebalanceValidatorsSDKType { + creator: string; + host_zone: string; + num_rebalance: bigint; +} +export interface MsgRebalanceValidatorsResponse {} +export interface MsgRebalanceValidatorsResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgRebalanceValidatorsResponse'; + value: Uint8Array; +} +export interface MsgRebalanceValidatorsResponseSDKType {} +export interface MsgAddValidators { + creator: string; + hostZone: string; + validators: Validator[]; +} +export interface MsgAddValidatorsProtoMsg { + typeUrl: '/stride.stakeibc.MsgAddValidators'; + value: Uint8Array; +} +export interface MsgAddValidatorsSDKType { + creator: string; + host_zone: string; + validators: ValidatorSDKType[]; +} +export interface MsgAddValidatorsResponse {} +export interface MsgAddValidatorsResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgAddValidatorsResponse'; + value: Uint8Array; +} +export interface MsgAddValidatorsResponseSDKType {} +export interface ValidatorWeight { + address: string; + weight: bigint; +} +export interface ValidatorWeightProtoMsg { + typeUrl: '/stride.stakeibc.ValidatorWeight'; + value: Uint8Array; +} +export interface ValidatorWeightSDKType { + address: string; + weight: bigint; +} +export interface MsgChangeValidatorWeights { + creator: string; + hostZone: string; + validatorWeights: ValidatorWeight[]; +} +export interface MsgChangeValidatorWeightsProtoMsg { + typeUrl: '/stride.stakeibc.MsgChangeValidatorWeights'; + value: Uint8Array; +} +export interface MsgChangeValidatorWeightsSDKType { + creator: string; + host_zone: string; + validator_weights: ValidatorWeightSDKType[]; +} +export interface MsgChangeValidatorWeightsResponse {} +export interface MsgChangeValidatorWeightsResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgChangeValidatorWeightsResponse'; + value: Uint8Array; +} +export interface MsgChangeValidatorWeightsResponseSDKType {} +export interface MsgDeleteValidator { + creator: string; + hostZone: string; + valAddr: string; +} +export interface MsgDeleteValidatorProtoMsg { + typeUrl: '/stride.stakeibc.MsgDeleteValidator'; + value: Uint8Array; +} +export interface MsgDeleteValidatorSDKType { + creator: string; + host_zone: string; + val_addr: string; +} +export interface MsgDeleteValidatorResponse {} +export interface MsgDeleteValidatorResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgDeleteValidatorResponse'; + value: Uint8Array; +} +export interface MsgDeleteValidatorResponseSDKType {} +export interface MsgRestoreInterchainAccount { + creator: string; + chainId: string; + connectionId: string; + accountOwner: string; +} +export interface MsgRestoreInterchainAccountProtoMsg { + typeUrl: '/stride.stakeibc.MsgRestoreInterchainAccount'; + value: Uint8Array; +} +export interface MsgRestoreInterchainAccountSDKType { + creator: string; + chain_id: string; + connection_id: string; + account_owner: string; +} +export interface MsgRestoreInterchainAccountResponse {} +export interface MsgRestoreInterchainAccountResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgRestoreInterchainAccountResponse'; + value: Uint8Array; +} +export interface MsgRestoreInterchainAccountResponseSDKType {} +export interface MsgCloseDelegationChannel { + creator: string; + chainId: string; +} +export interface MsgCloseDelegationChannelProtoMsg { + typeUrl: '/stride.stakeibc.MsgCloseDelegationChannel'; + value: Uint8Array; +} +export interface MsgCloseDelegationChannelSDKType { + creator: string; + chain_id: string; +} +export interface MsgCloseDelegationChannelResponse {} +export interface MsgCloseDelegationChannelResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgCloseDelegationChannelResponse'; + value: Uint8Array; +} +export interface MsgCloseDelegationChannelResponseSDKType {} +export interface MsgUpdateValidatorSharesExchRate { + creator: string; + chainId: string; + valoper: string; +} +export interface MsgUpdateValidatorSharesExchRateProtoMsg { + typeUrl: '/stride.stakeibc.MsgUpdateValidatorSharesExchRate'; + value: Uint8Array; +} +export interface MsgUpdateValidatorSharesExchRateSDKType { + creator: string; + chain_id: string; + valoper: string; +} +export interface MsgUpdateValidatorSharesExchRateResponse {} +export interface MsgUpdateValidatorSharesExchRateResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgUpdateValidatorSharesExchRateResponse'; + value: Uint8Array; +} +export interface MsgUpdateValidatorSharesExchRateResponseSDKType {} +export interface MsgCalibrateDelegation { + creator: string; + chainId: string; + valoper: string; +} +export interface MsgCalibrateDelegationProtoMsg { + typeUrl: '/stride.stakeibc.MsgCalibrateDelegation'; + value: Uint8Array; +} +export interface MsgCalibrateDelegationSDKType { + creator: string; + chain_id: string; + valoper: string; +} +export interface MsgCalibrateDelegationResponse {} +export interface MsgCalibrateDelegationResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgCalibrateDelegationResponse'; + value: Uint8Array; +} +export interface MsgCalibrateDelegationResponseSDKType {} +export interface MsgResumeHostZone { + creator: string; + chainId: string; +} +export interface MsgResumeHostZoneProtoMsg { + typeUrl: '/stride.stakeibc.MsgResumeHostZone'; + value: Uint8Array; +} +export interface MsgResumeHostZoneSDKType { + creator: string; + chain_id: string; +} +export interface MsgResumeHostZoneResponse {} +export interface MsgResumeHostZoneResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgResumeHostZoneResponse'; + value: Uint8Array; +} +export interface MsgResumeHostZoneResponseSDKType {} +/** Creates a new trade route */ +export interface MsgCreateTradeRoute { + /** + * authority is the address that controls the module (defaults to x/gov unless + * overwritten). + */ + authority: string; + /** The chain ID of the host zone */ + hostChainId: string; + /** Connection IDs between stride and the other zones */ + strideToRewardConnectionId: string; + strideToTradeConnectionId: string; + /** Transfer channels between the host, reward, and trade zones */ + hostToRewardTransferChannelId: string; + rewardToTradeTransferChannelId: string; + tradeToHostTransferChannelId: string; + /** ibc denom for the reward token on the host zone (e.g. ibc/usdc on dYdX) */ + rewardDenomOnHost: string; + /** native denom of reward token on the reward zone (e.g. usdc on Noble) */ + rewardDenomOnReward: string; + /** ibc denom of the reward token on the trade zone (e.g. ibc/usdc on Osmosis) */ + rewardDenomOnTrade: string; + /** ibc denom of the host's token on the trade zone (e.g. ibc/dydx on Osmosis) */ + hostDenomOnTrade: string; + /** the host zone's native denom (e.g. dydx on dYdX) */ + hostDenomOnHost: string; + /** + * Deprecated, the trades are now executed off-chain via authz + * + * The osmosis pool ID + */ + /** @deprecated */ + poolId: bigint; + /** + * Deprecated, the trades are now executed off-chain via authz + * + * Threshold defining the percentage of tokens that could be lost in the trade + * This captures both the loss from slippage and from a stale price on stride + * "0.05" means the output from the trade can be no less than a 5% deviation + * from the current value + */ + /** @deprecated */ + maxAllowedSwapLossRate: string; + /** + * Deprecated, the trades are now executed off-chain via authz + * + * minimum amount of reward tokens to initate a swap + * if not provided, defaults to 0 + */ + minSwapAmount: string; + /** + * Deprecated, the trades are now executed off-chain via authz + * + * maximum amount of reward tokens in a single swap + * if not provided, defaults to 10e24 + */ + maxSwapAmount: string; + /** + * Minimum amount of reward token that must be accumulated before + * the tokens are transferred to the trade ICA + */ + minTransferAmount: string; +} +export interface MsgCreateTradeRouteProtoMsg { + typeUrl: '/stride.stakeibc.MsgCreateTradeRoute'; + value: Uint8Array; +} +/** Creates a new trade route */ +export interface MsgCreateTradeRouteSDKType { + authority: string; + host_chain_id: string; + stride_to_reward_connection_id: string; + stride_to_trade_connection_id: string; + host_to_reward_transfer_channel_id: string; + reward_to_trade_transfer_channel_id: string; + trade_to_host_transfer_channel_id: string; + reward_denom_on_host: string; + reward_denom_on_reward: string; + reward_denom_on_trade: string; + host_denom_on_trade: string; + host_denom_on_host: string; + /** @deprecated */ + pool_id: bigint; + /** @deprecated */ + max_allowed_swap_loss_rate: string; + min_swap_amount: string; + max_swap_amount: string; + min_transfer_amount: string; +} +export interface MsgCreateTradeRouteResponse {} +export interface MsgCreateTradeRouteResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgCreateTradeRouteResponse'; + value: Uint8Array; +} +export interface MsgCreateTradeRouteResponseSDKType {} +/** Deletes a trade route */ +export interface MsgDeleteTradeRoute { + /** + * authority is the address that controls the module (defaults to x/gov unless + * overwritten). + */ + authority: string; + /** The reward denom of the route in it's native form (e.g. usdc) */ + rewardDenom: string; + /** The host zone's denom in it's native form (e.g. dydx) */ + hostDenom: string; +} +export interface MsgDeleteTradeRouteProtoMsg { + typeUrl: '/stride.stakeibc.MsgDeleteTradeRoute'; + value: Uint8Array; +} +/** Deletes a trade route */ +export interface MsgDeleteTradeRouteSDKType { + authority: string; + reward_denom: string; + host_denom: string; +} +export interface MsgDeleteTradeRouteResponse {} +export interface MsgDeleteTradeRouteResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgDeleteTradeRouteResponse'; + value: Uint8Array; +} +export interface MsgDeleteTradeRouteResponseSDKType {} +/** Updates the config of a trade route */ +export interface MsgUpdateTradeRoute { + /** + * authority is the address that controls the module (defaults to x/gov unless + * overwritten). + */ + authority: string; + /** The reward denom of the route in it's native form (e.g. usdc) */ + rewardDenom: string; + /** The host zone's denom in it's native form (e.g. dydx) */ + hostDenom: string; + /** + * Deprecated, the trades are now executed off-chain via authz + * + * The osmosis pool ID + */ + /** @deprecated */ + poolId: bigint; + /** + * Deprecated, the trades are now executed off-chain via authz + * + * Threshold defining the percentage of tokens that could be lost in the trade + * This captures both the loss from slippage and from a stale price on stride + * "0.05" means the output from the trade can be no less than a 5% deviation + * from the current value + */ + /** @deprecated */ + maxAllowedSwapLossRate: string; + /** + * Deprecated, the trades are now executed off-chain via authz + * + * minimum amount of reward tokens to initate a swap + * if not provided, defaults to 0 + */ + /** @deprecated */ + minSwapAmount: string; + /** + * Deprecated, the trades are now executed off-chain via authz + * + * maximum amount of reward tokens in a single swap + * if not provided, defaults to 10e24 + */ + /** @deprecated */ + maxSwapAmount: string; + /** + * Minimum amount of reward token that must be accumulated before + * the tokens are transferred to the trade ICA + */ + minTransferAmount: string; +} +export interface MsgUpdateTradeRouteProtoMsg { + typeUrl: '/stride.stakeibc.MsgUpdateTradeRoute'; + value: Uint8Array; +} +/** Updates the config of a trade route */ +export interface MsgUpdateTradeRouteSDKType { + authority: string; + reward_denom: string; + host_denom: string; + /** @deprecated */ + pool_id: bigint; + /** @deprecated */ + max_allowed_swap_loss_rate: string; + /** @deprecated */ + min_swap_amount: string; + /** @deprecated */ + max_swap_amount: string; + min_transfer_amount: string; +} +export interface MsgUpdateTradeRouteResponse {} +export interface MsgUpdateTradeRouteResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgUpdateTradeRouteResponse'; + value: Uint8Array; +} +export interface MsgUpdateTradeRouteResponseSDKType {} +/** + * Registers or updates a community pool rebate by specifying the amount liquid + * staked + */ +export interface MsgSetCommunityPoolRebate { + /** Message signer (admin only) */ + creator: string; + /** + * Chain id of the chain whose community pool has a liquid staking rebate + * arrangement with stride + */ + chainId: string; + /** Rebate percentage represented as a decimal (e.g. 0.2 for 20%) */ + rebateRate: string; + /** Number of stTokens recieved by the community pool after liquid staking */ + liquidStakedStTokenAmount: string; +} +export interface MsgSetCommunityPoolRebateProtoMsg { + typeUrl: '/stride.stakeibc.MsgSetCommunityPoolRebate'; + value: Uint8Array; +} +/** + * Registers or updates a community pool rebate by specifying the amount liquid + * staked + */ +export interface MsgSetCommunityPoolRebateSDKType { + creator: string; + chain_id: string; + rebate_rate: string; + liquid_staked_st_token_amount: string; +} +export interface MsgSetCommunityPoolRebateResponse {} +export interface MsgSetCommunityPoolRebateResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgSetCommunityPoolRebateResponse'; + value: Uint8Array; +} +export interface MsgSetCommunityPoolRebateResponseSDKType {} +/** Grants or revokes trade permissions to a given address via authz */ +export interface MsgToggleTradeController { + /** Message signer (admin only) */ + creator: string; + /** Chain ID of the trade account */ + chainId: string; + /** Permission change (either grant or revoke) */ + permissionChange: AuthzPermissionChange; + /** Address of trade operator */ + address: string; + /** Option to grant/revoke the legacy osmosis swap message */ + legacy: boolean; +} +export interface MsgToggleTradeControllerProtoMsg { + typeUrl: '/stride.stakeibc.MsgToggleTradeController'; + value: Uint8Array; +} +/** Grants or revokes trade permissions to a given address via authz */ +export interface MsgToggleTradeControllerSDKType { + creator: string; + chain_id: string; + permission_change: AuthzPermissionChange; + address: string; + legacy: boolean; +} +export interface MsgToggleTradeControllerResponse {} +export interface MsgToggleTradeControllerResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgToggleTradeControllerResponse'; + value: Uint8Array; +} +export interface MsgToggleTradeControllerResponseSDKType {} +/** Updates host zone params */ +export interface MsgUpdateHostZoneParams { + /** + * authority is the address that controls the module (defaults to x/gov unless + * overwritten). + */ + authority: string; + /** Chain ID of the host zone */ + chainId: string; + /** Max messages that can be sent in a single ICA message */ + maxMessagesPerIcaTx: bigint; +} +export interface MsgUpdateHostZoneParamsProtoMsg { + typeUrl: '/stride.stakeibc.MsgUpdateHostZoneParams'; + value: Uint8Array; +} +/** Updates host zone params */ +export interface MsgUpdateHostZoneParamsSDKType { + authority: string; + chain_id: string; + max_messages_per_ica_tx: bigint; +} +export interface MsgUpdateHostZoneParamsResponse {} +export interface MsgUpdateHostZoneParamsResponseProtoMsg { + typeUrl: '/stride.stakeibc.MsgUpdateHostZoneParamsResponse'; + value: Uint8Array; +} +export interface MsgUpdateHostZoneParamsResponseSDKType {} +function createBaseMsgUpdateInnerRedemptionRateBounds(): MsgUpdateInnerRedemptionRateBounds { + return { + creator: '', + chainId: '', + minInnerRedemptionRate: '', + maxInnerRedemptionRate: '', + }; +} +export const MsgUpdateInnerRedemptionRateBounds = { + typeUrl: '/stride.stakeibc.MsgUpdateInnerRedemptionRateBounds', + encode( + message: MsgUpdateInnerRedemptionRateBounds, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.minInnerRedemptionRate !== '') { + writer + .uint32(26) + .string( + Decimal.fromUserInput(message.minInnerRedemptionRate, 18).atomics, + ); + } + if (message.maxInnerRedemptionRate !== '') { + writer + .uint32(34) + .string( + Decimal.fromUserInput(message.maxInnerRedemptionRate, 18).atomics, + ); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateInnerRedemptionRateBounds { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateInnerRedemptionRateBounds(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.minInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 4: + message.maxInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateInnerRedemptionRateBounds { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + minInnerRedemptionRate: isSet(object.minInnerRedemptionRate) + ? String(object.minInnerRedemptionRate) + : '', + maxInnerRedemptionRate: isSet(object.maxInnerRedemptionRate) + ? String(object.maxInnerRedemptionRate) + : '', + }; + }, + toJSON( + message: MsgUpdateInnerRedemptionRateBounds, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.minInnerRedemptionRate !== undefined && + (obj.minInnerRedemptionRate = message.minInnerRedemptionRate); + message.maxInnerRedemptionRate !== undefined && + (obj.maxInnerRedemptionRate = message.maxInnerRedemptionRate); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateInnerRedemptionRateBounds { + const message = createBaseMsgUpdateInnerRedemptionRateBounds(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + message.minInnerRedemptionRate = object.minInnerRedemptionRate ?? ''; + message.maxInnerRedemptionRate = object.maxInnerRedemptionRate ?? ''; + return message; + }, + fromProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsProtoMsg, + ): MsgUpdateInnerRedemptionRateBounds { + return MsgUpdateInnerRedemptionRateBounds.decode(message.value); + }, + toProto(message: MsgUpdateInnerRedemptionRateBounds): Uint8Array { + return MsgUpdateInnerRedemptionRateBounds.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateInnerRedemptionRateBounds, + ): MsgUpdateInnerRedemptionRateBoundsProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgUpdateInnerRedemptionRateBounds', + value: MsgUpdateInnerRedemptionRateBounds.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateInnerRedemptionRateBoundsResponse(): MsgUpdateInnerRedemptionRateBoundsResponse { + return {}; +} +export const MsgUpdateInnerRedemptionRateBoundsResponse = { + typeUrl: '/stride.stakeibc.MsgUpdateInnerRedemptionRateBoundsResponse', + encode( + _: MsgUpdateInnerRedemptionRateBoundsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateInnerRedemptionRateBoundsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateInnerRedemptionRateBoundsResponse { + return {}; + }, + toJSON( + _: MsgUpdateInnerRedemptionRateBoundsResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + const message = createBaseMsgUpdateInnerRedemptionRateBoundsResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + return MsgUpdateInnerRedemptionRateBoundsResponse.decode(message.value); + }, + toProto(message: MsgUpdateInnerRedemptionRateBoundsResponse): Uint8Array { + return MsgUpdateInnerRedemptionRateBoundsResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsResponse, + ): MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgUpdateInnerRedemptionRateBoundsResponse', + value: + MsgUpdateInnerRedemptionRateBoundsResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgLiquidStake(): MsgLiquidStake { + return { + creator: '', + amount: '', + hostDenom: '', + }; +} +export const MsgLiquidStake = { + typeUrl: '/stride.stakeibc.MsgLiquidStake', + encode( + message: MsgLiquidStake, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + if (message.hostDenom !== '') { + writer.uint32(26).string(message.hostDenom); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgLiquidStake { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLiquidStake(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.amount = reader.string(); + break; + case 3: + message.hostDenom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLiquidStake { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + hostDenom: isSet(object.hostDenom) ? String(object.hostDenom) : '', + }; + }, + toJSON(message: MsgLiquidStake): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.amount !== undefined && (obj.amount = message.amount); + message.hostDenom !== undefined && (obj.hostDenom = message.hostDenom); + return obj; + }, + fromPartial(object: Partial): MsgLiquidStake { + const message = createBaseMsgLiquidStake(); + message.creator = object.creator ?? ''; + message.amount = object.amount ?? ''; + message.hostDenom = object.hostDenom ?? ''; + return message; + }, + fromProtoMsg(message: MsgLiquidStakeProtoMsg): MsgLiquidStake { + return MsgLiquidStake.decode(message.value); + }, + toProto(message: MsgLiquidStake): Uint8Array { + return MsgLiquidStake.encode(message).finish(); + }, + toProtoMsg(message: MsgLiquidStake): MsgLiquidStakeProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgLiquidStake', + value: MsgLiquidStake.encode(message).finish(), + }; + }, +}; +function createBaseMsgLiquidStakeResponse(): MsgLiquidStakeResponse { + return { + stToken: Coin.fromPartial({}), + }; +} +export const MsgLiquidStakeResponse = { + typeUrl: '/stride.stakeibc.MsgLiquidStakeResponse', + encode( + message: MsgLiquidStakeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.stToken !== undefined) { + Coin.encode(message.stToken, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgLiquidStakeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLiquidStakeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.stToken = Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLiquidStakeResponse { + return { + stToken: isSet(object.stToken) + ? Coin.fromJSON(object.stToken) + : undefined, + }; + }, + toJSON(message: MsgLiquidStakeResponse): JsonSafe { + const obj: any = {}; + message.stToken !== undefined && + (obj.stToken = message.stToken + ? Coin.toJSON(message.stToken) + : undefined); + return obj; + }, + fromPartial(object: Partial): MsgLiquidStakeResponse { + const message = createBaseMsgLiquidStakeResponse(); + message.stToken = + object.stToken !== undefined && object.stToken !== null + ? Coin.fromPartial(object.stToken) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgLiquidStakeResponseProtoMsg, + ): MsgLiquidStakeResponse { + return MsgLiquidStakeResponse.decode(message.value); + }, + toProto(message: MsgLiquidStakeResponse): Uint8Array { + return MsgLiquidStakeResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgLiquidStakeResponse): MsgLiquidStakeResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgLiquidStakeResponse', + value: MsgLiquidStakeResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgLSMLiquidStake(): MsgLSMLiquidStake { + return { + creator: '', + amount: '', + lsmTokenIbcDenom: '', + }; +} +export const MsgLSMLiquidStake = { + typeUrl: '/stride.stakeibc.MsgLSMLiquidStake', + encode( + message: MsgLSMLiquidStake, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + if (message.lsmTokenIbcDenom !== '') { + writer.uint32(26).string(message.lsmTokenIbcDenom); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgLSMLiquidStake { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLSMLiquidStake(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.amount = reader.string(); + break; + case 3: + message.lsmTokenIbcDenom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLSMLiquidStake { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + lsmTokenIbcDenom: isSet(object.lsmTokenIbcDenom) + ? String(object.lsmTokenIbcDenom) + : '', + }; + }, + toJSON(message: MsgLSMLiquidStake): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.amount !== undefined && (obj.amount = message.amount); + message.lsmTokenIbcDenom !== undefined && + (obj.lsmTokenIbcDenom = message.lsmTokenIbcDenom); + return obj; + }, + fromPartial(object: Partial): MsgLSMLiquidStake { + const message = createBaseMsgLSMLiquidStake(); + message.creator = object.creator ?? ''; + message.amount = object.amount ?? ''; + message.lsmTokenIbcDenom = object.lsmTokenIbcDenom ?? ''; + return message; + }, + fromProtoMsg(message: MsgLSMLiquidStakeProtoMsg): MsgLSMLiquidStake { + return MsgLSMLiquidStake.decode(message.value); + }, + toProto(message: MsgLSMLiquidStake): Uint8Array { + return MsgLSMLiquidStake.encode(message).finish(); + }, + toProtoMsg(message: MsgLSMLiquidStake): MsgLSMLiquidStakeProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgLSMLiquidStake', + value: MsgLSMLiquidStake.encode(message).finish(), + }; + }, +}; +function createBaseMsgLSMLiquidStakeResponse(): MsgLSMLiquidStakeResponse { + return { + transactionComplete: false, + }; +} +export const MsgLSMLiquidStakeResponse = { + typeUrl: '/stride.stakeibc.MsgLSMLiquidStakeResponse', + encode( + message: MsgLSMLiquidStakeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.transactionComplete === true) { + writer.uint32(8).bool(message.transactionComplete); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgLSMLiquidStakeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLSMLiquidStakeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.transactionComplete = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLSMLiquidStakeResponse { + return { + transactionComplete: isSet(object.transactionComplete) + ? Boolean(object.transactionComplete) + : false, + }; + }, + toJSON( + message: MsgLSMLiquidStakeResponse, + ): JsonSafe { + const obj: any = {}; + message.transactionComplete !== undefined && + (obj.transactionComplete = message.transactionComplete); + return obj; + }, + fromPartial( + object: Partial, + ): MsgLSMLiquidStakeResponse { + const message = createBaseMsgLSMLiquidStakeResponse(); + message.transactionComplete = object.transactionComplete ?? false; + return message; + }, + fromProtoMsg( + message: MsgLSMLiquidStakeResponseProtoMsg, + ): MsgLSMLiquidStakeResponse { + return MsgLSMLiquidStakeResponse.decode(message.value); + }, + toProto(message: MsgLSMLiquidStakeResponse): Uint8Array { + return MsgLSMLiquidStakeResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgLSMLiquidStakeResponse, + ): MsgLSMLiquidStakeResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgLSMLiquidStakeResponse', + value: MsgLSMLiquidStakeResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgClearBalance(): MsgClearBalance { + return { + creator: '', + chainId: '', + amount: '', + channel: '', + }; +} +export const MsgClearBalance = { + typeUrl: '/stride.stakeibc.MsgClearBalance', + encode( + message: MsgClearBalance, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.amount !== '') { + writer.uint32(26).string(message.amount); + } + if (message.channel !== '') { + writer.uint32(34).string(message.channel); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgClearBalance { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgClearBalance(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.amount = reader.string(); + break; + case 4: + message.channel = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgClearBalance { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + channel: isSet(object.channel) ? String(object.channel) : '', + }; + }, + toJSON(message: MsgClearBalance): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.amount !== undefined && (obj.amount = message.amount); + message.channel !== undefined && (obj.channel = message.channel); + return obj; + }, + fromPartial(object: Partial): MsgClearBalance { + const message = createBaseMsgClearBalance(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + message.amount = object.amount ?? ''; + message.channel = object.channel ?? ''; + return message; + }, + fromProtoMsg(message: MsgClearBalanceProtoMsg): MsgClearBalance { + return MsgClearBalance.decode(message.value); + }, + toProto(message: MsgClearBalance): Uint8Array { + return MsgClearBalance.encode(message).finish(); + }, + toProtoMsg(message: MsgClearBalance): MsgClearBalanceProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgClearBalance', + value: MsgClearBalance.encode(message).finish(), + }; + }, +}; +function createBaseMsgClearBalanceResponse(): MsgClearBalanceResponse { + return {}; +} +export const MsgClearBalanceResponse = { + typeUrl: '/stride.stakeibc.MsgClearBalanceResponse', + encode( + _: MsgClearBalanceResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgClearBalanceResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgClearBalanceResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgClearBalanceResponse { + return {}; + }, + toJSON(_: MsgClearBalanceResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): MsgClearBalanceResponse { + const message = createBaseMsgClearBalanceResponse(); + return message; + }, + fromProtoMsg( + message: MsgClearBalanceResponseProtoMsg, + ): MsgClearBalanceResponse { + return MsgClearBalanceResponse.decode(message.value); + }, + toProto(message: MsgClearBalanceResponse): Uint8Array { + return MsgClearBalanceResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgClearBalanceResponse, + ): MsgClearBalanceResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgClearBalanceResponse', + value: MsgClearBalanceResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRedeemStake(): MsgRedeemStake { + return { + creator: '', + amount: '', + hostZone: '', + receiver: '', + }; +} +export const MsgRedeemStake = { + typeUrl: '/stride.stakeibc.MsgRedeemStake', + encode( + message: MsgRedeemStake, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.amount !== '') { + writer.uint32(18).string(message.amount); + } + if (message.hostZone !== '') { + writer.uint32(26).string(message.hostZone); + } + if (message.receiver !== '') { + writer.uint32(34).string(message.receiver); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgRedeemStake { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRedeemStake(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.amount = reader.string(); + break; + case 3: + message.hostZone = reader.string(); + break; + case 4: + message.receiver = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRedeemStake { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + amount: isSet(object.amount) ? String(object.amount) : '', + hostZone: isSet(object.hostZone) ? String(object.hostZone) : '', + receiver: isSet(object.receiver) ? String(object.receiver) : '', + }; + }, + toJSON(message: MsgRedeemStake): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.amount !== undefined && (obj.amount = message.amount); + message.hostZone !== undefined && (obj.hostZone = message.hostZone); + message.receiver !== undefined && (obj.receiver = message.receiver); + return obj; + }, + fromPartial(object: Partial): MsgRedeemStake { + const message = createBaseMsgRedeemStake(); + message.creator = object.creator ?? ''; + message.amount = object.amount ?? ''; + message.hostZone = object.hostZone ?? ''; + message.receiver = object.receiver ?? ''; + return message; + }, + fromProtoMsg(message: MsgRedeemStakeProtoMsg): MsgRedeemStake { + return MsgRedeemStake.decode(message.value); + }, + toProto(message: MsgRedeemStake): Uint8Array { + return MsgRedeemStake.encode(message).finish(); + }, + toProtoMsg(message: MsgRedeemStake): MsgRedeemStakeProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgRedeemStake', + value: MsgRedeemStake.encode(message).finish(), + }; + }, +}; +function createBaseMsgRedeemStakeResponse(): MsgRedeemStakeResponse { + return {}; +} +export const MsgRedeemStakeResponse = { + typeUrl: '/stride.stakeibc.MsgRedeemStakeResponse', + encode( + _: MsgRedeemStakeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRedeemStakeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRedeemStakeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgRedeemStakeResponse { + return {}; + }, + toJSON(_: MsgRedeemStakeResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): MsgRedeemStakeResponse { + const message = createBaseMsgRedeemStakeResponse(); + return message; + }, + fromProtoMsg( + message: MsgRedeemStakeResponseProtoMsg, + ): MsgRedeemStakeResponse { + return MsgRedeemStakeResponse.decode(message.value); + }, + toProto(message: MsgRedeemStakeResponse): Uint8Array { + return MsgRedeemStakeResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgRedeemStakeResponse): MsgRedeemStakeResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgRedeemStakeResponse', + value: MsgRedeemStakeResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRegisterHostZone(): MsgRegisterHostZone { + return { + connectionId: '', + bech32prefix: '', + hostDenom: '', + ibcDenom: '', + creator: '', + transferChannelId: '', + unbondingPeriod: BigInt(0), + minRedemptionRate: '', + maxRedemptionRate: '', + lsmLiquidStakeEnabled: false, + communityPoolTreasuryAddress: '', + maxMessagesPerIcaTx: BigInt(0), + }; +} +export const MsgRegisterHostZone = { + typeUrl: '/stride.stakeibc.MsgRegisterHostZone', + encode( + message: MsgRegisterHostZone, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.connectionId !== '') { + writer.uint32(18).string(message.connectionId); + } + if (message.bech32prefix !== '') { + writer.uint32(98).string(message.bech32prefix); + } + if (message.hostDenom !== '') { + writer.uint32(34).string(message.hostDenom); + } + if (message.ibcDenom !== '') { + writer.uint32(42).string(message.ibcDenom); + } + if (message.creator !== '') { + writer.uint32(50).string(message.creator); + } + if (message.transferChannelId !== '') { + writer.uint32(82).string(message.transferChannelId); + } + if (message.unbondingPeriod !== BigInt(0)) { + writer.uint32(88).uint64(message.unbondingPeriod); + } + if (message.minRedemptionRate !== '') { + writer + .uint32(106) + .string(Decimal.fromUserInput(message.minRedemptionRate, 18).atomics); + } + if (message.maxRedemptionRate !== '') { + writer + .uint32(114) + .string(Decimal.fromUserInput(message.maxRedemptionRate, 18).atomics); + } + if (message.lsmLiquidStakeEnabled === true) { + writer.uint32(120).bool(message.lsmLiquidStakeEnabled); + } + if (message.communityPoolTreasuryAddress !== '') { + writer.uint32(130).string(message.communityPoolTreasuryAddress); + } + if (message.maxMessagesPerIcaTx !== BigInt(0)) { + writer.uint32(136).uint64(message.maxMessagesPerIcaTx); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRegisterHostZone { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterHostZone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 2: + message.connectionId = reader.string(); + break; + case 12: + message.bech32prefix = reader.string(); + break; + case 4: + message.hostDenom = reader.string(); + break; + case 5: + message.ibcDenom = reader.string(); + break; + case 6: + message.creator = reader.string(); + break; + case 10: + message.transferChannelId = reader.string(); + break; + case 11: + message.unbondingPeriod = reader.uint64(); + break; + case 13: + message.minRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 14: + message.maxRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 15: + message.lsmLiquidStakeEnabled = reader.bool(); + break; + case 16: + message.communityPoolTreasuryAddress = reader.string(); + break; + case 17: + message.maxMessagesPerIcaTx = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRegisterHostZone { + return { + connectionId: isSet(object.connectionId) + ? String(object.connectionId) + : '', + bech32prefix: isSet(object.bech32prefix) + ? String(object.bech32prefix) + : '', + hostDenom: isSet(object.hostDenom) ? String(object.hostDenom) : '', + ibcDenom: isSet(object.ibcDenom) ? String(object.ibcDenom) : '', + creator: isSet(object.creator) ? String(object.creator) : '', + transferChannelId: isSet(object.transferChannelId) + ? String(object.transferChannelId) + : '', + unbondingPeriod: isSet(object.unbondingPeriod) + ? BigInt(object.unbondingPeriod.toString()) + : BigInt(0), + minRedemptionRate: isSet(object.minRedemptionRate) + ? String(object.minRedemptionRate) + : '', + maxRedemptionRate: isSet(object.maxRedemptionRate) + ? String(object.maxRedemptionRate) + : '', + lsmLiquidStakeEnabled: isSet(object.lsmLiquidStakeEnabled) + ? Boolean(object.lsmLiquidStakeEnabled) + : false, + communityPoolTreasuryAddress: isSet(object.communityPoolTreasuryAddress) + ? String(object.communityPoolTreasuryAddress) + : '', + maxMessagesPerIcaTx: isSet(object.maxMessagesPerIcaTx) + ? BigInt(object.maxMessagesPerIcaTx.toString()) + : BigInt(0), + }; + }, + toJSON(message: MsgRegisterHostZone): JsonSafe { + const obj: any = {}; + message.connectionId !== undefined && + (obj.connectionId = message.connectionId); + message.bech32prefix !== undefined && + (obj.bech32prefix = message.bech32prefix); + message.hostDenom !== undefined && (obj.hostDenom = message.hostDenom); + message.ibcDenom !== undefined && (obj.ibcDenom = message.ibcDenom); + message.creator !== undefined && (obj.creator = message.creator); + message.transferChannelId !== undefined && + (obj.transferChannelId = message.transferChannelId); + message.unbondingPeriod !== undefined && + (obj.unbondingPeriod = (message.unbondingPeriod || BigInt(0)).toString()); + message.minRedemptionRate !== undefined && + (obj.minRedemptionRate = message.minRedemptionRate); + message.maxRedemptionRate !== undefined && + (obj.maxRedemptionRate = message.maxRedemptionRate); + message.lsmLiquidStakeEnabled !== undefined && + (obj.lsmLiquidStakeEnabled = message.lsmLiquidStakeEnabled); + message.communityPoolTreasuryAddress !== undefined && + (obj.communityPoolTreasuryAddress = message.communityPoolTreasuryAddress); + message.maxMessagesPerIcaTx !== undefined && + (obj.maxMessagesPerIcaTx = ( + message.maxMessagesPerIcaTx || BigInt(0) + ).toString()); + return obj; + }, + fromPartial(object: Partial): MsgRegisterHostZone { + const message = createBaseMsgRegisterHostZone(); + message.connectionId = object.connectionId ?? ''; + message.bech32prefix = object.bech32prefix ?? ''; + message.hostDenom = object.hostDenom ?? ''; + message.ibcDenom = object.ibcDenom ?? ''; + message.creator = object.creator ?? ''; + message.transferChannelId = object.transferChannelId ?? ''; + message.unbondingPeriod = + object.unbondingPeriod !== undefined && object.unbondingPeriod !== null + ? BigInt(object.unbondingPeriod.toString()) + : BigInt(0); + message.minRedemptionRate = object.minRedemptionRate ?? ''; + message.maxRedemptionRate = object.maxRedemptionRate ?? ''; + message.lsmLiquidStakeEnabled = object.lsmLiquidStakeEnabled ?? false; + message.communityPoolTreasuryAddress = + object.communityPoolTreasuryAddress ?? ''; + message.maxMessagesPerIcaTx = + object.maxMessagesPerIcaTx !== undefined && + object.maxMessagesPerIcaTx !== null + ? BigInt(object.maxMessagesPerIcaTx.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: MsgRegisterHostZoneProtoMsg): MsgRegisterHostZone { + return MsgRegisterHostZone.decode(message.value); + }, + toProto(message: MsgRegisterHostZone): Uint8Array { + return MsgRegisterHostZone.encode(message).finish(); + }, + toProtoMsg(message: MsgRegisterHostZone): MsgRegisterHostZoneProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgRegisterHostZone', + value: MsgRegisterHostZone.encode(message).finish(), + }; + }, +}; +function createBaseMsgRegisterHostZoneResponse(): MsgRegisterHostZoneResponse { + return {}; +} +export const MsgRegisterHostZoneResponse = { + typeUrl: '/stride.stakeibc.MsgRegisterHostZoneResponse', + encode( + _: MsgRegisterHostZoneResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRegisterHostZoneResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRegisterHostZoneResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgRegisterHostZoneResponse { + return {}; + }, + toJSON( + _: MsgRegisterHostZoneResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgRegisterHostZoneResponse { + const message = createBaseMsgRegisterHostZoneResponse(); + return message; + }, + fromProtoMsg( + message: MsgRegisterHostZoneResponseProtoMsg, + ): MsgRegisterHostZoneResponse { + return MsgRegisterHostZoneResponse.decode(message.value); + }, + toProto(message: MsgRegisterHostZoneResponse): Uint8Array { + return MsgRegisterHostZoneResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgRegisterHostZoneResponse, + ): MsgRegisterHostZoneResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgRegisterHostZoneResponse', + value: MsgRegisterHostZoneResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgClaimUndelegatedTokens(): MsgClaimUndelegatedTokens { + return { + creator: '', + hostZoneId: '', + epoch: BigInt(0), + receiver: '', + }; +} +export const MsgClaimUndelegatedTokens = { + typeUrl: '/stride.stakeibc.MsgClaimUndelegatedTokens', + encode( + message: MsgClaimUndelegatedTokens, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.hostZoneId !== '') { + writer.uint32(18).string(message.hostZoneId); + } + if (message.epoch !== BigInt(0)) { + writer.uint32(24).uint64(message.epoch); + } + if (message.receiver !== '') { + writer.uint32(42).string(message.receiver); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgClaimUndelegatedTokens { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgClaimUndelegatedTokens(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.hostZoneId = reader.string(); + break; + case 3: + message.epoch = reader.uint64(); + break; + case 5: + message.receiver = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgClaimUndelegatedTokens { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + hostZoneId: isSet(object.hostZoneId) ? String(object.hostZoneId) : '', + epoch: isSet(object.epoch) ? BigInt(object.epoch.toString()) : BigInt(0), + receiver: isSet(object.receiver) ? String(object.receiver) : '', + }; + }, + toJSON( + message: MsgClaimUndelegatedTokens, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.hostZoneId !== undefined && (obj.hostZoneId = message.hostZoneId); + message.epoch !== undefined && + (obj.epoch = (message.epoch || BigInt(0)).toString()); + message.receiver !== undefined && (obj.receiver = message.receiver); + return obj; + }, + fromPartial( + object: Partial, + ): MsgClaimUndelegatedTokens { + const message = createBaseMsgClaimUndelegatedTokens(); + message.creator = object.creator ?? ''; + message.hostZoneId = object.hostZoneId ?? ''; + message.epoch = + object.epoch !== undefined && object.epoch !== null + ? BigInt(object.epoch.toString()) + : BigInt(0); + message.receiver = object.receiver ?? ''; + return message; + }, + fromProtoMsg( + message: MsgClaimUndelegatedTokensProtoMsg, + ): MsgClaimUndelegatedTokens { + return MsgClaimUndelegatedTokens.decode(message.value); + }, + toProto(message: MsgClaimUndelegatedTokens): Uint8Array { + return MsgClaimUndelegatedTokens.encode(message).finish(); + }, + toProtoMsg( + message: MsgClaimUndelegatedTokens, + ): MsgClaimUndelegatedTokensProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgClaimUndelegatedTokens', + value: MsgClaimUndelegatedTokens.encode(message).finish(), + }; + }, +}; +function createBaseMsgClaimUndelegatedTokensResponse(): MsgClaimUndelegatedTokensResponse { + return {}; +} +export const MsgClaimUndelegatedTokensResponse = { + typeUrl: '/stride.stakeibc.MsgClaimUndelegatedTokensResponse', + encode( + _: MsgClaimUndelegatedTokensResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgClaimUndelegatedTokensResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgClaimUndelegatedTokensResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgClaimUndelegatedTokensResponse { + return {}; + }, + toJSON( + _: MsgClaimUndelegatedTokensResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgClaimUndelegatedTokensResponse { + const message = createBaseMsgClaimUndelegatedTokensResponse(); + return message; + }, + fromProtoMsg( + message: MsgClaimUndelegatedTokensResponseProtoMsg, + ): MsgClaimUndelegatedTokensResponse { + return MsgClaimUndelegatedTokensResponse.decode(message.value); + }, + toProto(message: MsgClaimUndelegatedTokensResponse): Uint8Array { + return MsgClaimUndelegatedTokensResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgClaimUndelegatedTokensResponse, + ): MsgClaimUndelegatedTokensResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgClaimUndelegatedTokensResponse', + value: MsgClaimUndelegatedTokensResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRebalanceValidators(): MsgRebalanceValidators { + return { + creator: '', + hostZone: '', + numRebalance: BigInt(0), + }; +} +export const MsgRebalanceValidators = { + typeUrl: '/stride.stakeibc.MsgRebalanceValidators', + encode( + message: MsgRebalanceValidators, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.hostZone !== '') { + writer.uint32(18).string(message.hostZone); + } + if (message.numRebalance !== BigInt(0)) { + writer.uint32(24).uint64(message.numRebalance); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRebalanceValidators { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRebalanceValidators(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.hostZone = reader.string(); + break; + case 3: + message.numRebalance = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRebalanceValidators { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + hostZone: isSet(object.hostZone) ? String(object.hostZone) : '', + numRebalance: isSet(object.numRebalance) + ? BigInt(object.numRebalance.toString()) + : BigInt(0), + }; + }, + toJSON(message: MsgRebalanceValidators): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.hostZone !== undefined && (obj.hostZone = message.hostZone); + message.numRebalance !== undefined && + (obj.numRebalance = (message.numRebalance || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): MsgRebalanceValidators { + const message = createBaseMsgRebalanceValidators(); + message.creator = object.creator ?? ''; + message.hostZone = object.hostZone ?? ''; + message.numRebalance = + object.numRebalance !== undefined && object.numRebalance !== null + ? BigInt(object.numRebalance.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: MsgRebalanceValidatorsProtoMsg, + ): MsgRebalanceValidators { + return MsgRebalanceValidators.decode(message.value); + }, + toProto(message: MsgRebalanceValidators): Uint8Array { + return MsgRebalanceValidators.encode(message).finish(); + }, + toProtoMsg(message: MsgRebalanceValidators): MsgRebalanceValidatorsProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgRebalanceValidators', + value: MsgRebalanceValidators.encode(message).finish(), + }; + }, +}; +function createBaseMsgRebalanceValidatorsResponse(): MsgRebalanceValidatorsResponse { + return {}; +} +export const MsgRebalanceValidatorsResponse = { + typeUrl: '/stride.stakeibc.MsgRebalanceValidatorsResponse', + encode( + _: MsgRebalanceValidatorsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRebalanceValidatorsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRebalanceValidatorsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgRebalanceValidatorsResponse { + return {}; + }, + toJSON( + _: MsgRebalanceValidatorsResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgRebalanceValidatorsResponse { + const message = createBaseMsgRebalanceValidatorsResponse(); + return message; + }, + fromProtoMsg( + message: MsgRebalanceValidatorsResponseProtoMsg, + ): MsgRebalanceValidatorsResponse { + return MsgRebalanceValidatorsResponse.decode(message.value); + }, + toProto(message: MsgRebalanceValidatorsResponse): Uint8Array { + return MsgRebalanceValidatorsResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgRebalanceValidatorsResponse, + ): MsgRebalanceValidatorsResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgRebalanceValidatorsResponse', + value: MsgRebalanceValidatorsResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgAddValidators(): MsgAddValidators { + return { + creator: '', + hostZone: '', + validators: [], + }; +} +export const MsgAddValidators = { + typeUrl: '/stride.stakeibc.MsgAddValidators', + encode( + message: MsgAddValidators, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.hostZone !== '') { + writer.uint32(18).string(message.hostZone); + } + for (const v of message.validators) { + Validator.encode(v!, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgAddValidators { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAddValidators(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.hostZone = reader.string(); + break; + case 3: + message.validators.push(Validator.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgAddValidators { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + hostZone: isSet(object.hostZone) ? String(object.hostZone) : '', + validators: Array.isArray(object?.validators) + ? object.validators.map((e: any) => Validator.fromJSON(e)) + : [], + }; + }, + toJSON(message: MsgAddValidators): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.hostZone !== undefined && (obj.hostZone = message.hostZone); + if (message.validators) { + obj.validators = message.validators.map(e => + e ? Validator.toJSON(e) : undefined, + ); + } else { + obj.validators = []; + } + return obj; + }, + fromPartial(object: Partial): MsgAddValidators { + const message = createBaseMsgAddValidators(); + message.creator = object.creator ?? ''; + message.hostZone = object.hostZone ?? ''; + message.validators = + object.validators?.map(e => Validator.fromPartial(e)) || []; + return message; + }, + fromProtoMsg(message: MsgAddValidatorsProtoMsg): MsgAddValidators { + return MsgAddValidators.decode(message.value); + }, + toProto(message: MsgAddValidators): Uint8Array { + return MsgAddValidators.encode(message).finish(); + }, + toProtoMsg(message: MsgAddValidators): MsgAddValidatorsProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgAddValidators', + value: MsgAddValidators.encode(message).finish(), + }; + }, +}; +function createBaseMsgAddValidatorsResponse(): MsgAddValidatorsResponse { + return {}; +} +export const MsgAddValidatorsResponse = { + typeUrl: '/stride.stakeibc.MsgAddValidatorsResponse', + encode( + _: MsgAddValidatorsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgAddValidatorsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAddValidatorsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgAddValidatorsResponse { + return {}; + }, + toJSON(_: MsgAddValidatorsResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): MsgAddValidatorsResponse { + const message = createBaseMsgAddValidatorsResponse(); + return message; + }, + fromProtoMsg( + message: MsgAddValidatorsResponseProtoMsg, + ): MsgAddValidatorsResponse { + return MsgAddValidatorsResponse.decode(message.value); + }, + toProto(message: MsgAddValidatorsResponse): Uint8Array { + return MsgAddValidatorsResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgAddValidatorsResponse, + ): MsgAddValidatorsResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgAddValidatorsResponse', + value: MsgAddValidatorsResponse.encode(message).finish(), + }; + }, +}; +function createBaseValidatorWeight(): ValidatorWeight { + return { + address: '', + weight: BigInt(0), + }; +} +export const ValidatorWeight = { + typeUrl: '/stride.stakeibc.ValidatorWeight', + encode( + message: ValidatorWeight, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.address !== '') { + writer.uint32(10).string(message.address); + } + if (message.weight !== BigInt(0)) { + writer.uint32(16).uint64(message.weight); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): ValidatorWeight { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseValidatorWeight(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.weight = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): ValidatorWeight { + return { + address: isSet(object.address) ? String(object.address) : '', + weight: isSet(object.weight) + ? BigInt(object.weight.toString()) + : BigInt(0), + }; + }, + toJSON(message: ValidatorWeight): JsonSafe { + const obj: any = {}; + message.address !== undefined && (obj.address = message.address); + message.weight !== undefined && + (obj.weight = (message.weight || BigInt(0)).toString()); + return obj; + }, + fromPartial(object: Partial): ValidatorWeight { + const message = createBaseValidatorWeight(); + message.address = object.address ?? ''; + message.weight = + object.weight !== undefined && object.weight !== null + ? BigInt(object.weight.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg(message: ValidatorWeightProtoMsg): ValidatorWeight { + return ValidatorWeight.decode(message.value); + }, + toProto(message: ValidatorWeight): Uint8Array { + return ValidatorWeight.encode(message).finish(); + }, + toProtoMsg(message: ValidatorWeight): ValidatorWeightProtoMsg { + return { + typeUrl: '/stride.stakeibc.ValidatorWeight', + value: ValidatorWeight.encode(message).finish(), + }; + }, +}; +function createBaseMsgChangeValidatorWeights(): MsgChangeValidatorWeights { + return { + creator: '', + hostZone: '', + validatorWeights: [], + }; +} +export const MsgChangeValidatorWeights = { + typeUrl: '/stride.stakeibc.MsgChangeValidatorWeights', + encode( + message: MsgChangeValidatorWeights, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.hostZone !== '') { + writer.uint32(18).string(message.hostZone); + } + for (const v of message.validatorWeights) { + ValidatorWeight.encode(v!, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgChangeValidatorWeights { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgChangeValidatorWeights(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.hostZone = reader.string(); + break; + case 3: + message.validatorWeights.push( + ValidatorWeight.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgChangeValidatorWeights { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + hostZone: isSet(object.hostZone) ? String(object.hostZone) : '', + validatorWeights: Array.isArray(object?.validatorWeights) + ? object.validatorWeights.map((e: any) => ValidatorWeight.fromJSON(e)) + : [], + }; + }, + toJSON( + message: MsgChangeValidatorWeights, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.hostZone !== undefined && (obj.hostZone = message.hostZone); + if (message.validatorWeights) { + obj.validatorWeights = message.validatorWeights.map(e => + e ? ValidatorWeight.toJSON(e) : undefined, + ); + } else { + obj.validatorWeights = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): MsgChangeValidatorWeights { + const message = createBaseMsgChangeValidatorWeights(); + message.creator = object.creator ?? ''; + message.hostZone = object.hostZone ?? ''; + message.validatorWeights = + object.validatorWeights?.map(e => ValidatorWeight.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: MsgChangeValidatorWeightsProtoMsg, + ): MsgChangeValidatorWeights { + return MsgChangeValidatorWeights.decode(message.value); + }, + toProto(message: MsgChangeValidatorWeights): Uint8Array { + return MsgChangeValidatorWeights.encode(message).finish(); + }, + toProtoMsg( + message: MsgChangeValidatorWeights, + ): MsgChangeValidatorWeightsProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgChangeValidatorWeights', + value: MsgChangeValidatorWeights.encode(message).finish(), + }; + }, +}; +function createBaseMsgChangeValidatorWeightsResponse(): MsgChangeValidatorWeightsResponse { + return {}; +} +export const MsgChangeValidatorWeightsResponse = { + typeUrl: '/stride.stakeibc.MsgChangeValidatorWeightsResponse', + encode( + _: MsgChangeValidatorWeightsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgChangeValidatorWeightsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgChangeValidatorWeightsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgChangeValidatorWeightsResponse { + return {}; + }, + toJSON( + _: MsgChangeValidatorWeightsResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgChangeValidatorWeightsResponse { + const message = createBaseMsgChangeValidatorWeightsResponse(); + return message; + }, + fromProtoMsg( + message: MsgChangeValidatorWeightsResponseProtoMsg, + ): MsgChangeValidatorWeightsResponse { + return MsgChangeValidatorWeightsResponse.decode(message.value); + }, + toProto(message: MsgChangeValidatorWeightsResponse): Uint8Array { + return MsgChangeValidatorWeightsResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgChangeValidatorWeightsResponse, + ): MsgChangeValidatorWeightsResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgChangeValidatorWeightsResponse', + value: MsgChangeValidatorWeightsResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgDeleteValidator(): MsgDeleteValidator { + return { + creator: '', + hostZone: '', + valAddr: '', + }; +} +export const MsgDeleteValidator = { + typeUrl: '/stride.stakeibc.MsgDeleteValidator', + encode( + message: MsgDeleteValidator, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.hostZone !== '') { + writer.uint32(18).string(message.hostZone); + } + if (message.valAddr !== '') { + writer.uint32(26).string(message.valAddr); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDeleteValidator { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteValidator(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.hostZone = reader.string(); + break; + case 3: + message.valAddr = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgDeleteValidator { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + hostZone: isSet(object.hostZone) ? String(object.hostZone) : '', + valAddr: isSet(object.valAddr) ? String(object.valAddr) : '', + }; + }, + toJSON(message: MsgDeleteValidator): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.hostZone !== undefined && (obj.hostZone = message.hostZone); + message.valAddr !== undefined && (obj.valAddr = message.valAddr); + return obj; + }, + fromPartial(object: Partial): MsgDeleteValidator { + const message = createBaseMsgDeleteValidator(); + message.creator = object.creator ?? ''; + message.hostZone = object.hostZone ?? ''; + message.valAddr = object.valAddr ?? ''; + return message; + }, + fromProtoMsg(message: MsgDeleteValidatorProtoMsg): MsgDeleteValidator { + return MsgDeleteValidator.decode(message.value); + }, + toProto(message: MsgDeleteValidator): Uint8Array { + return MsgDeleteValidator.encode(message).finish(); + }, + toProtoMsg(message: MsgDeleteValidator): MsgDeleteValidatorProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgDeleteValidator', + value: MsgDeleteValidator.encode(message).finish(), + }; + }, +}; +function createBaseMsgDeleteValidatorResponse(): MsgDeleteValidatorResponse { + return {}; +} +export const MsgDeleteValidatorResponse = { + typeUrl: '/stride.stakeibc.MsgDeleteValidatorResponse', + encode( + _: MsgDeleteValidatorResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDeleteValidatorResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteValidatorResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgDeleteValidatorResponse { + return {}; + }, + toJSON(_: MsgDeleteValidatorResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgDeleteValidatorResponse { + const message = createBaseMsgDeleteValidatorResponse(); + return message; + }, + fromProtoMsg( + message: MsgDeleteValidatorResponseProtoMsg, + ): MsgDeleteValidatorResponse { + return MsgDeleteValidatorResponse.decode(message.value); + }, + toProto(message: MsgDeleteValidatorResponse): Uint8Array { + return MsgDeleteValidatorResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgDeleteValidatorResponse, + ): MsgDeleteValidatorResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgDeleteValidatorResponse', + value: MsgDeleteValidatorResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRestoreInterchainAccount(): MsgRestoreInterchainAccount { + return { + creator: '', + chainId: '', + connectionId: '', + accountOwner: '', + }; +} +export const MsgRestoreInterchainAccount = { + typeUrl: '/stride.stakeibc.MsgRestoreInterchainAccount', + encode( + message: MsgRestoreInterchainAccount, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.connectionId !== '') { + writer.uint32(26).string(message.connectionId); + } + if (message.accountOwner !== '') { + writer.uint32(34).string(message.accountOwner); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRestoreInterchainAccount { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRestoreInterchainAccount(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.connectionId = reader.string(); + break; + case 4: + message.accountOwner = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRestoreInterchainAccount { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + connectionId: isSet(object.connectionId) + ? String(object.connectionId) + : '', + accountOwner: isSet(object.accountOwner) + ? String(object.accountOwner) + : '', + }; + }, + toJSON( + message: MsgRestoreInterchainAccount, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.connectionId !== undefined && + (obj.connectionId = message.connectionId); + message.accountOwner !== undefined && + (obj.accountOwner = message.accountOwner); + return obj; + }, + fromPartial( + object: Partial, + ): MsgRestoreInterchainAccount { + const message = createBaseMsgRestoreInterchainAccount(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + message.connectionId = object.connectionId ?? ''; + message.accountOwner = object.accountOwner ?? ''; + return message; + }, + fromProtoMsg( + message: MsgRestoreInterchainAccountProtoMsg, + ): MsgRestoreInterchainAccount { + return MsgRestoreInterchainAccount.decode(message.value); + }, + toProto(message: MsgRestoreInterchainAccount): Uint8Array { + return MsgRestoreInterchainAccount.encode(message).finish(); + }, + toProtoMsg( + message: MsgRestoreInterchainAccount, + ): MsgRestoreInterchainAccountProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgRestoreInterchainAccount', + value: MsgRestoreInterchainAccount.encode(message).finish(), + }; + }, +}; +function createBaseMsgRestoreInterchainAccountResponse(): MsgRestoreInterchainAccountResponse { + return {}; +} +export const MsgRestoreInterchainAccountResponse = { + typeUrl: '/stride.stakeibc.MsgRestoreInterchainAccountResponse', + encode( + _: MsgRestoreInterchainAccountResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRestoreInterchainAccountResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRestoreInterchainAccountResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgRestoreInterchainAccountResponse { + return {}; + }, + toJSON( + _: MsgRestoreInterchainAccountResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgRestoreInterchainAccountResponse { + const message = createBaseMsgRestoreInterchainAccountResponse(); + return message; + }, + fromProtoMsg( + message: MsgRestoreInterchainAccountResponseProtoMsg, + ): MsgRestoreInterchainAccountResponse { + return MsgRestoreInterchainAccountResponse.decode(message.value); + }, + toProto(message: MsgRestoreInterchainAccountResponse): Uint8Array { + return MsgRestoreInterchainAccountResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgRestoreInterchainAccountResponse, + ): MsgRestoreInterchainAccountResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgRestoreInterchainAccountResponse', + value: MsgRestoreInterchainAccountResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgCloseDelegationChannel(): MsgCloseDelegationChannel { + return { + creator: '', + chainId: '', + }; +} +export const MsgCloseDelegationChannel = { + typeUrl: '/stride.stakeibc.MsgCloseDelegationChannel', + encode( + message: MsgCloseDelegationChannel, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgCloseDelegationChannel { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgCloseDelegationChannel(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgCloseDelegationChannel { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + }; + }, + toJSON( + message: MsgCloseDelegationChannel, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + return obj; + }, + fromPartial( + object: Partial, + ): MsgCloseDelegationChannel { + const message = createBaseMsgCloseDelegationChannel(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + return message; + }, + fromProtoMsg( + message: MsgCloseDelegationChannelProtoMsg, + ): MsgCloseDelegationChannel { + return MsgCloseDelegationChannel.decode(message.value); + }, + toProto(message: MsgCloseDelegationChannel): Uint8Array { + return MsgCloseDelegationChannel.encode(message).finish(); + }, + toProtoMsg( + message: MsgCloseDelegationChannel, + ): MsgCloseDelegationChannelProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgCloseDelegationChannel', + value: MsgCloseDelegationChannel.encode(message).finish(), + }; + }, +}; +function createBaseMsgCloseDelegationChannelResponse(): MsgCloseDelegationChannelResponse { + return {}; +} +export const MsgCloseDelegationChannelResponse = { + typeUrl: '/stride.stakeibc.MsgCloseDelegationChannelResponse', + encode( + _: MsgCloseDelegationChannelResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgCloseDelegationChannelResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgCloseDelegationChannelResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgCloseDelegationChannelResponse { + return {}; + }, + toJSON( + _: MsgCloseDelegationChannelResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgCloseDelegationChannelResponse { + const message = createBaseMsgCloseDelegationChannelResponse(); + return message; + }, + fromProtoMsg( + message: MsgCloseDelegationChannelResponseProtoMsg, + ): MsgCloseDelegationChannelResponse { + return MsgCloseDelegationChannelResponse.decode(message.value); + }, + toProto(message: MsgCloseDelegationChannelResponse): Uint8Array { + return MsgCloseDelegationChannelResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgCloseDelegationChannelResponse, + ): MsgCloseDelegationChannelResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgCloseDelegationChannelResponse', + value: MsgCloseDelegationChannelResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateValidatorSharesExchRate(): MsgUpdateValidatorSharesExchRate { + return { + creator: '', + chainId: '', + valoper: '', + }; +} +export const MsgUpdateValidatorSharesExchRate = { + typeUrl: '/stride.stakeibc.MsgUpdateValidatorSharesExchRate', + encode( + message: MsgUpdateValidatorSharesExchRate, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.valoper !== '') { + writer.uint32(26).string(message.valoper); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateValidatorSharesExchRate { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateValidatorSharesExchRate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.valoper = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateValidatorSharesExchRate { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + valoper: isSet(object.valoper) ? String(object.valoper) : '', + }; + }, + toJSON( + message: MsgUpdateValidatorSharesExchRate, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.valoper !== undefined && (obj.valoper = message.valoper); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateValidatorSharesExchRate { + const message = createBaseMsgUpdateValidatorSharesExchRate(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + message.valoper = object.valoper ?? ''; + return message; + }, + fromProtoMsg( + message: MsgUpdateValidatorSharesExchRateProtoMsg, + ): MsgUpdateValidatorSharesExchRate { + return MsgUpdateValidatorSharesExchRate.decode(message.value); + }, + toProto(message: MsgUpdateValidatorSharesExchRate): Uint8Array { + return MsgUpdateValidatorSharesExchRate.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateValidatorSharesExchRate, + ): MsgUpdateValidatorSharesExchRateProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgUpdateValidatorSharesExchRate', + value: MsgUpdateValidatorSharesExchRate.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateValidatorSharesExchRateResponse(): MsgUpdateValidatorSharesExchRateResponse { + return {}; +} +export const MsgUpdateValidatorSharesExchRateResponse = { + typeUrl: '/stride.stakeibc.MsgUpdateValidatorSharesExchRateResponse', + encode( + _: MsgUpdateValidatorSharesExchRateResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateValidatorSharesExchRateResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateValidatorSharesExchRateResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateValidatorSharesExchRateResponse { + return {}; + }, + toJSON( + _: MsgUpdateValidatorSharesExchRateResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateValidatorSharesExchRateResponse { + const message = createBaseMsgUpdateValidatorSharesExchRateResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateValidatorSharesExchRateResponseProtoMsg, + ): MsgUpdateValidatorSharesExchRateResponse { + return MsgUpdateValidatorSharesExchRateResponse.decode(message.value); + }, + toProto(message: MsgUpdateValidatorSharesExchRateResponse): Uint8Array { + return MsgUpdateValidatorSharesExchRateResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateValidatorSharesExchRateResponse, + ): MsgUpdateValidatorSharesExchRateResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgUpdateValidatorSharesExchRateResponse', + value: MsgUpdateValidatorSharesExchRateResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgCalibrateDelegation(): MsgCalibrateDelegation { + return { + creator: '', + chainId: '', + valoper: '', + }; +} +export const MsgCalibrateDelegation = { + typeUrl: '/stride.stakeibc.MsgCalibrateDelegation', + encode( + message: MsgCalibrateDelegation, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.valoper !== '') { + writer.uint32(26).string(message.valoper); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgCalibrateDelegation { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgCalibrateDelegation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.valoper = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgCalibrateDelegation { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + valoper: isSet(object.valoper) ? String(object.valoper) : '', + }; + }, + toJSON(message: MsgCalibrateDelegation): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.valoper !== undefined && (obj.valoper = message.valoper); + return obj; + }, + fromPartial(object: Partial): MsgCalibrateDelegation { + const message = createBaseMsgCalibrateDelegation(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + message.valoper = object.valoper ?? ''; + return message; + }, + fromProtoMsg( + message: MsgCalibrateDelegationProtoMsg, + ): MsgCalibrateDelegation { + return MsgCalibrateDelegation.decode(message.value); + }, + toProto(message: MsgCalibrateDelegation): Uint8Array { + return MsgCalibrateDelegation.encode(message).finish(); + }, + toProtoMsg(message: MsgCalibrateDelegation): MsgCalibrateDelegationProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgCalibrateDelegation', + value: MsgCalibrateDelegation.encode(message).finish(), + }; + }, +}; +function createBaseMsgCalibrateDelegationResponse(): MsgCalibrateDelegationResponse { + return {}; +} +export const MsgCalibrateDelegationResponse = { + typeUrl: '/stride.stakeibc.MsgCalibrateDelegationResponse', + encode( + _: MsgCalibrateDelegationResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgCalibrateDelegationResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgCalibrateDelegationResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgCalibrateDelegationResponse { + return {}; + }, + toJSON( + _: MsgCalibrateDelegationResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgCalibrateDelegationResponse { + const message = createBaseMsgCalibrateDelegationResponse(); + return message; + }, + fromProtoMsg( + message: MsgCalibrateDelegationResponseProtoMsg, + ): MsgCalibrateDelegationResponse { + return MsgCalibrateDelegationResponse.decode(message.value); + }, + toProto(message: MsgCalibrateDelegationResponse): Uint8Array { + return MsgCalibrateDelegationResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgCalibrateDelegationResponse, + ): MsgCalibrateDelegationResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgCalibrateDelegationResponse', + value: MsgCalibrateDelegationResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgResumeHostZone(): MsgResumeHostZone { + return { + creator: '', + chainId: '', + }; +} +export const MsgResumeHostZone = { + typeUrl: '/stride.stakeibc.MsgResumeHostZone', + encode( + message: MsgResumeHostZone, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgResumeHostZone { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgResumeHostZone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgResumeHostZone { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + }; + }, + toJSON(message: MsgResumeHostZone): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + return obj; + }, + fromPartial(object: Partial): MsgResumeHostZone { + const message = createBaseMsgResumeHostZone(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + return message; + }, + fromProtoMsg(message: MsgResumeHostZoneProtoMsg): MsgResumeHostZone { + return MsgResumeHostZone.decode(message.value); + }, + toProto(message: MsgResumeHostZone): Uint8Array { + return MsgResumeHostZone.encode(message).finish(); + }, + toProtoMsg(message: MsgResumeHostZone): MsgResumeHostZoneProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgResumeHostZone', + value: MsgResumeHostZone.encode(message).finish(), + }; + }, +}; +function createBaseMsgResumeHostZoneResponse(): MsgResumeHostZoneResponse { + return {}; +} +export const MsgResumeHostZoneResponse = { + typeUrl: '/stride.stakeibc.MsgResumeHostZoneResponse', + encode( + _: MsgResumeHostZoneResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgResumeHostZoneResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgResumeHostZoneResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgResumeHostZoneResponse { + return {}; + }, + toJSON(_: MsgResumeHostZoneResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgResumeHostZoneResponse { + const message = createBaseMsgResumeHostZoneResponse(); + return message; + }, + fromProtoMsg( + message: MsgResumeHostZoneResponseProtoMsg, + ): MsgResumeHostZoneResponse { + return MsgResumeHostZoneResponse.decode(message.value); + }, + toProto(message: MsgResumeHostZoneResponse): Uint8Array { + return MsgResumeHostZoneResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgResumeHostZoneResponse, + ): MsgResumeHostZoneResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgResumeHostZoneResponse', + value: MsgResumeHostZoneResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgCreateTradeRoute(): MsgCreateTradeRoute { + return { + authority: '', + hostChainId: '', + strideToRewardConnectionId: '', + strideToTradeConnectionId: '', + hostToRewardTransferChannelId: '', + rewardToTradeTransferChannelId: '', + tradeToHostTransferChannelId: '', + rewardDenomOnHost: '', + rewardDenomOnReward: '', + rewardDenomOnTrade: '', + hostDenomOnTrade: '', + hostDenomOnHost: '', + poolId: BigInt(0), + maxAllowedSwapLossRate: '', + minSwapAmount: '', + maxSwapAmount: '', + minTransferAmount: '', + }; +} +export const MsgCreateTradeRoute = { + typeUrl: '/stride.stakeibc.MsgCreateTradeRoute', + encode( + message: MsgCreateTradeRoute, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.authority !== '') { + writer.uint32(10).string(message.authority); + } + if (message.hostChainId !== '') { + writer.uint32(18).string(message.hostChainId); + } + if (message.strideToRewardConnectionId !== '') { + writer.uint32(26).string(message.strideToRewardConnectionId); + } + if (message.strideToTradeConnectionId !== '') { + writer.uint32(34).string(message.strideToTradeConnectionId); + } + if (message.hostToRewardTransferChannelId !== '') { + writer.uint32(42).string(message.hostToRewardTransferChannelId); + } + if (message.rewardToTradeTransferChannelId !== '') { + writer.uint32(50).string(message.rewardToTradeTransferChannelId); + } + if (message.tradeToHostTransferChannelId !== '') { + writer.uint32(58).string(message.tradeToHostTransferChannelId); + } + if (message.rewardDenomOnHost !== '') { + writer.uint32(66).string(message.rewardDenomOnHost); + } + if (message.rewardDenomOnReward !== '') { + writer.uint32(74).string(message.rewardDenomOnReward); + } + if (message.rewardDenomOnTrade !== '') { + writer.uint32(82).string(message.rewardDenomOnTrade); + } + if (message.hostDenomOnTrade !== '') { + writer.uint32(90).string(message.hostDenomOnTrade); + } + if (message.hostDenomOnHost !== '') { + writer.uint32(98).string(message.hostDenomOnHost); + } + if (message.poolId !== BigInt(0)) { + writer.uint32(104).uint64(message.poolId); + } + if (message.maxAllowedSwapLossRate !== '') { + writer.uint32(114).string(message.maxAllowedSwapLossRate); + } + if (message.minSwapAmount !== '') { + writer.uint32(122).string(message.minSwapAmount); + } + if (message.maxSwapAmount !== '') { + writer.uint32(130).string(message.maxSwapAmount); + } + if (message.minTransferAmount !== '') { + writer.uint32(138).string(message.minTransferAmount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgCreateTradeRoute { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgCreateTradeRoute(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.authority = reader.string(); + break; + case 2: + message.hostChainId = reader.string(); + break; + case 3: + message.strideToRewardConnectionId = reader.string(); + break; + case 4: + message.strideToTradeConnectionId = reader.string(); + break; + case 5: + message.hostToRewardTransferChannelId = reader.string(); + break; + case 6: + message.rewardToTradeTransferChannelId = reader.string(); + break; + case 7: + message.tradeToHostTransferChannelId = reader.string(); + break; + case 8: + message.rewardDenomOnHost = reader.string(); + break; + case 9: + message.rewardDenomOnReward = reader.string(); + break; + case 10: + message.rewardDenomOnTrade = reader.string(); + break; + case 11: + message.hostDenomOnTrade = reader.string(); + break; + case 12: + message.hostDenomOnHost = reader.string(); + break; + case 13: + message.poolId = reader.uint64(); + break; + case 14: + message.maxAllowedSwapLossRate = reader.string(); + break; + case 15: + message.minSwapAmount = reader.string(); + break; + case 16: + message.maxSwapAmount = reader.string(); + break; + case 17: + message.minTransferAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgCreateTradeRoute { + return { + authority: isSet(object.authority) ? String(object.authority) : '', + hostChainId: isSet(object.hostChainId) ? String(object.hostChainId) : '', + strideToRewardConnectionId: isSet(object.strideToRewardConnectionId) + ? String(object.strideToRewardConnectionId) + : '', + strideToTradeConnectionId: isSet(object.strideToTradeConnectionId) + ? String(object.strideToTradeConnectionId) + : '', + hostToRewardTransferChannelId: isSet(object.hostToRewardTransferChannelId) + ? String(object.hostToRewardTransferChannelId) + : '', + rewardToTradeTransferChannelId: isSet( + object.rewardToTradeTransferChannelId, + ) + ? String(object.rewardToTradeTransferChannelId) + : '', + tradeToHostTransferChannelId: isSet(object.tradeToHostTransferChannelId) + ? String(object.tradeToHostTransferChannelId) + : '', + rewardDenomOnHost: isSet(object.rewardDenomOnHost) + ? String(object.rewardDenomOnHost) + : '', + rewardDenomOnReward: isSet(object.rewardDenomOnReward) + ? String(object.rewardDenomOnReward) + : '', + rewardDenomOnTrade: isSet(object.rewardDenomOnTrade) + ? String(object.rewardDenomOnTrade) + : '', + hostDenomOnTrade: isSet(object.hostDenomOnTrade) + ? String(object.hostDenomOnTrade) + : '', + hostDenomOnHost: isSet(object.hostDenomOnHost) + ? String(object.hostDenomOnHost) + : '', + poolId: isSet(object.poolId) + ? BigInt(object.poolId.toString()) + : BigInt(0), + maxAllowedSwapLossRate: isSet(object.maxAllowedSwapLossRate) + ? String(object.maxAllowedSwapLossRate) + : '', + minSwapAmount: isSet(object.minSwapAmount) + ? String(object.minSwapAmount) + : '', + maxSwapAmount: isSet(object.maxSwapAmount) + ? String(object.maxSwapAmount) + : '', + minTransferAmount: isSet(object.minTransferAmount) + ? String(object.minTransferAmount) + : '', + }; + }, + toJSON(message: MsgCreateTradeRoute): JsonSafe { + const obj: any = {}; + message.authority !== undefined && (obj.authority = message.authority); + message.hostChainId !== undefined && + (obj.hostChainId = message.hostChainId); + message.strideToRewardConnectionId !== undefined && + (obj.strideToRewardConnectionId = message.strideToRewardConnectionId); + message.strideToTradeConnectionId !== undefined && + (obj.strideToTradeConnectionId = message.strideToTradeConnectionId); + message.hostToRewardTransferChannelId !== undefined && + (obj.hostToRewardTransferChannelId = + message.hostToRewardTransferChannelId); + message.rewardToTradeTransferChannelId !== undefined && + (obj.rewardToTradeTransferChannelId = + message.rewardToTradeTransferChannelId); + message.tradeToHostTransferChannelId !== undefined && + (obj.tradeToHostTransferChannelId = message.tradeToHostTransferChannelId); + message.rewardDenomOnHost !== undefined && + (obj.rewardDenomOnHost = message.rewardDenomOnHost); + message.rewardDenomOnReward !== undefined && + (obj.rewardDenomOnReward = message.rewardDenomOnReward); + message.rewardDenomOnTrade !== undefined && + (obj.rewardDenomOnTrade = message.rewardDenomOnTrade); + message.hostDenomOnTrade !== undefined && + (obj.hostDenomOnTrade = message.hostDenomOnTrade); + message.hostDenomOnHost !== undefined && + (obj.hostDenomOnHost = message.hostDenomOnHost); + message.poolId !== undefined && + (obj.poolId = (message.poolId || BigInt(0)).toString()); + message.maxAllowedSwapLossRate !== undefined && + (obj.maxAllowedSwapLossRate = message.maxAllowedSwapLossRate); + message.minSwapAmount !== undefined && + (obj.minSwapAmount = message.minSwapAmount); + message.maxSwapAmount !== undefined && + (obj.maxSwapAmount = message.maxSwapAmount); + message.minTransferAmount !== undefined && + (obj.minTransferAmount = message.minTransferAmount); + return obj; + }, + fromPartial(object: Partial): MsgCreateTradeRoute { + const message = createBaseMsgCreateTradeRoute(); + message.authority = object.authority ?? ''; + message.hostChainId = object.hostChainId ?? ''; + message.strideToRewardConnectionId = + object.strideToRewardConnectionId ?? ''; + message.strideToTradeConnectionId = object.strideToTradeConnectionId ?? ''; + message.hostToRewardTransferChannelId = + object.hostToRewardTransferChannelId ?? ''; + message.rewardToTradeTransferChannelId = + object.rewardToTradeTransferChannelId ?? ''; + message.tradeToHostTransferChannelId = + object.tradeToHostTransferChannelId ?? ''; + message.rewardDenomOnHost = object.rewardDenomOnHost ?? ''; + message.rewardDenomOnReward = object.rewardDenomOnReward ?? ''; + message.rewardDenomOnTrade = object.rewardDenomOnTrade ?? ''; + message.hostDenomOnTrade = object.hostDenomOnTrade ?? ''; + message.hostDenomOnHost = object.hostDenomOnHost ?? ''; + message.poolId = + object.poolId !== undefined && object.poolId !== null + ? BigInt(object.poolId.toString()) + : BigInt(0); + message.maxAllowedSwapLossRate = object.maxAllowedSwapLossRate ?? ''; + message.minSwapAmount = object.minSwapAmount ?? ''; + message.maxSwapAmount = object.maxSwapAmount ?? ''; + message.minTransferAmount = object.minTransferAmount ?? ''; + return message; + }, + fromProtoMsg(message: MsgCreateTradeRouteProtoMsg): MsgCreateTradeRoute { + return MsgCreateTradeRoute.decode(message.value); + }, + toProto(message: MsgCreateTradeRoute): Uint8Array { + return MsgCreateTradeRoute.encode(message).finish(); + }, + toProtoMsg(message: MsgCreateTradeRoute): MsgCreateTradeRouteProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgCreateTradeRoute', + value: MsgCreateTradeRoute.encode(message).finish(), + }; + }, +}; +function createBaseMsgCreateTradeRouteResponse(): MsgCreateTradeRouteResponse { + return {}; +} +export const MsgCreateTradeRouteResponse = { + typeUrl: '/stride.stakeibc.MsgCreateTradeRouteResponse', + encode( + _: MsgCreateTradeRouteResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgCreateTradeRouteResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgCreateTradeRouteResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgCreateTradeRouteResponse { + return {}; + }, + toJSON( + _: MsgCreateTradeRouteResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgCreateTradeRouteResponse { + const message = createBaseMsgCreateTradeRouteResponse(); + return message; + }, + fromProtoMsg( + message: MsgCreateTradeRouteResponseProtoMsg, + ): MsgCreateTradeRouteResponse { + return MsgCreateTradeRouteResponse.decode(message.value); + }, + toProto(message: MsgCreateTradeRouteResponse): Uint8Array { + return MsgCreateTradeRouteResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgCreateTradeRouteResponse, + ): MsgCreateTradeRouteResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgCreateTradeRouteResponse', + value: MsgCreateTradeRouteResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgDeleteTradeRoute(): MsgDeleteTradeRoute { + return { + authority: '', + rewardDenom: '', + hostDenom: '', + }; +} +export const MsgDeleteTradeRoute = { + typeUrl: '/stride.stakeibc.MsgDeleteTradeRoute', + encode( + message: MsgDeleteTradeRoute, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.authority !== '') { + writer.uint32(10).string(message.authority); + } + if (message.rewardDenom !== '') { + writer.uint32(18).string(message.rewardDenom); + } + if (message.hostDenom !== '') { + writer.uint32(26).string(message.hostDenom); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDeleteTradeRoute { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteTradeRoute(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.authority = reader.string(); + break; + case 2: + message.rewardDenom = reader.string(); + break; + case 3: + message.hostDenom = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgDeleteTradeRoute { + return { + authority: isSet(object.authority) ? String(object.authority) : '', + rewardDenom: isSet(object.rewardDenom) ? String(object.rewardDenom) : '', + hostDenom: isSet(object.hostDenom) ? String(object.hostDenom) : '', + }; + }, + toJSON(message: MsgDeleteTradeRoute): JsonSafe { + const obj: any = {}; + message.authority !== undefined && (obj.authority = message.authority); + message.rewardDenom !== undefined && + (obj.rewardDenom = message.rewardDenom); + message.hostDenom !== undefined && (obj.hostDenom = message.hostDenom); + return obj; + }, + fromPartial(object: Partial): MsgDeleteTradeRoute { + const message = createBaseMsgDeleteTradeRoute(); + message.authority = object.authority ?? ''; + message.rewardDenom = object.rewardDenom ?? ''; + message.hostDenom = object.hostDenom ?? ''; + return message; + }, + fromProtoMsg(message: MsgDeleteTradeRouteProtoMsg): MsgDeleteTradeRoute { + return MsgDeleteTradeRoute.decode(message.value); + }, + toProto(message: MsgDeleteTradeRoute): Uint8Array { + return MsgDeleteTradeRoute.encode(message).finish(); + }, + toProtoMsg(message: MsgDeleteTradeRoute): MsgDeleteTradeRouteProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgDeleteTradeRoute', + value: MsgDeleteTradeRoute.encode(message).finish(), + }; + }, +}; +function createBaseMsgDeleteTradeRouteResponse(): MsgDeleteTradeRouteResponse { + return {}; +} +export const MsgDeleteTradeRouteResponse = { + typeUrl: '/stride.stakeibc.MsgDeleteTradeRouteResponse', + encode( + _: MsgDeleteTradeRouteResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgDeleteTradeRouteResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgDeleteTradeRouteResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgDeleteTradeRouteResponse { + return {}; + }, + toJSON( + _: MsgDeleteTradeRouteResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgDeleteTradeRouteResponse { + const message = createBaseMsgDeleteTradeRouteResponse(); + return message; + }, + fromProtoMsg( + message: MsgDeleteTradeRouteResponseProtoMsg, + ): MsgDeleteTradeRouteResponse { + return MsgDeleteTradeRouteResponse.decode(message.value); + }, + toProto(message: MsgDeleteTradeRouteResponse): Uint8Array { + return MsgDeleteTradeRouteResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgDeleteTradeRouteResponse, + ): MsgDeleteTradeRouteResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgDeleteTradeRouteResponse', + value: MsgDeleteTradeRouteResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateTradeRoute(): MsgUpdateTradeRoute { + return { + authority: '', + rewardDenom: '', + hostDenom: '', + poolId: BigInt(0), + maxAllowedSwapLossRate: '', + minSwapAmount: '', + maxSwapAmount: '', + minTransferAmount: '', + }; +} +export const MsgUpdateTradeRoute = { + typeUrl: '/stride.stakeibc.MsgUpdateTradeRoute', + encode( + message: MsgUpdateTradeRoute, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.authority !== '') { + writer.uint32(10).string(message.authority); + } + if (message.rewardDenom !== '') { + writer.uint32(18).string(message.rewardDenom); + } + if (message.hostDenom !== '') { + writer.uint32(26).string(message.hostDenom); + } + if (message.poolId !== BigInt(0)) { + writer.uint32(32).uint64(message.poolId); + } + if (message.maxAllowedSwapLossRate !== '') { + writer.uint32(42).string(message.maxAllowedSwapLossRate); + } + if (message.minSwapAmount !== '') { + writer.uint32(50).string(message.minSwapAmount); + } + if (message.maxSwapAmount !== '') { + writer.uint32(58).string(message.maxSwapAmount); + } + if (message.minTransferAmount !== '') { + writer.uint32(138).string(message.minTransferAmount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateTradeRoute { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateTradeRoute(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.authority = reader.string(); + break; + case 2: + message.rewardDenom = reader.string(); + break; + case 3: + message.hostDenom = reader.string(); + break; + case 4: + message.poolId = reader.uint64(); + break; + case 5: + message.maxAllowedSwapLossRate = reader.string(); + break; + case 6: + message.minSwapAmount = reader.string(); + break; + case 7: + message.maxSwapAmount = reader.string(); + break; + case 17: + message.minTransferAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateTradeRoute { + return { + authority: isSet(object.authority) ? String(object.authority) : '', + rewardDenom: isSet(object.rewardDenom) ? String(object.rewardDenom) : '', + hostDenom: isSet(object.hostDenom) ? String(object.hostDenom) : '', + poolId: isSet(object.poolId) + ? BigInt(object.poolId.toString()) + : BigInt(0), + maxAllowedSwapLossRate: isSet(object.maxAllowedSwapLossRate) + ? String(object.maxAllowedSwapLossRate) + : '', + minSwapAmount: isSet(object.minSwapAmount) + ? String(object.minSwapAmount) + : '', + maxSwapAmount: isSet(object.maxSwapAmount) + ? String(object.maxSwapAmount) + : '', + minTransferAmount: isSet(object.minTransferAmount) + ? String(object.minTransferAmount) + : '', + }; + }, + toJSON(message: MsgUpdateTradeRoute): JsonSafe { + const obj: any = {}; + message.authority !== undefined && (obj.authority = message.authority); + message.rewardDenom !== undefined && + (obj.rewardDenom = message.rewardDenom); + message.hostDenom !== undefined && (obj.hostDenom = message.hostDenom); + message.poolId !== undefined && + (obj.poolId = (message.poolId || BigInt(0)).toString()); + message.maxAllowedSwapLossRate !== undefined && + (obj.maxAllowedSwapLossRate = message.maxAllowedSwapLossRate); + message.minSwapAmount !== undefined && + (obj.minSwapAmount = message.minSwapAmount); + message.maxSwapAmount !== undefined && + (obj.maxSwapAmount = message.maxSwapAmount); + message.minTransferAmount !== undefined && + (obj.minTransferAmount = message.minTransferAmount); + return obj; + }, + fromPartial(object: Partial): MsgUpdateTradeRoute { + const message = createBaseMsgUpdateTradeRoute(); + message.authority = object.authority ?? ''; + message.rewardDenom = object.rewardDenom ?? ''; + message.hostDenom = object.hostDenom ?? ''; + message.poolId = + object.poolId !== undefined && object.poolId !== null + ? BigInt(object.poolId.toString()) + : BigInt(0); + message.maxAllowedSwapLossRate = object.maxAllowedSwapLossRate ?? ''; + message.minSwapAmount = object.minSwapAmount ?? ''; + message.maxSwapAmount = object.maxSwapAmount ?? ''; + message.minTransferAmount = object.minTransferAmount ?? ''; + return message; + }, + fromProtoMsg(message: MsgUpdateTradeRouteProtoMsg): MsgUpdateTradeRoute { + return MsgUpdateTradeRoute.decode(message.value); + }, + toProto(message: MsgUpdateTradeRoute): Uint8Array { + return MsgUpdateTradeRoute.encode(message).finish(); + }, + toProtoMsg(message: MsgUpdateTradeRoute): MsgUpdateTradeRouteProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgUpdateTradeRoute', + value: MsgUpdateTradeRoute.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateTradeRouteResponse(): MsgUpdateTradeRouteResponse { + return {}; +} +export const MsgUpdateTradeRouteResponse = { + typeUrl: '/stride.stakeibc.MsgUpdateTradeRouteResponse', + encode( + _: MsgUpdateTradeRouteResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateTradeRouteResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateTradeRouteResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateTradeRouteResponse { + return {}; + }, + toJSON( + _: MsgUpdateTradeRouteResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateTradeRouteResponse { + const message = createBaseMsgUpdateTradeRouteResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateTradeRouteResponseProtoMsg, + ): MsgUpdateTradeRouteResponse { + return MsgUpdateTradeRouteResponse.decode(message.value); + }, + toProto(message: MsgUpdateTradeRouteResponse): Uint8Array { + return MsgUpdateTradeRouteResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateTradeRouteResponse, + ): MsgUpdateTradeRouteResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgUpdateTradeRouteResponse', + value: MsgUpdateTradeRouteResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgSetCommunityPoolRebate(): MsgSetCommunityPoolRebate { + return { + creator: '', + chainId: '', + rebateRate: '', + liquidStakedStTokenAmount: '', + }; +} +export const MsgSetCommunityPoolRebate = { + typeUrl: '/stride.stakeibc.MsgSetCommunityPoolRebate', + encode( + message: MsgSetCommunityPoolRebate, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.rebateRate !== '') { + writer + .uint32(26) + .string(Decimal.fromUserInput(message.rebateRate, 18).atomics); + } + if (message.liquidStakedStTokenAmount !== '') { + writer.uint32(34).string(message.liquidStakedStTokenAmount); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSetCommunityPoolRebate { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSetCommunityPoolRebate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.rebateRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 4: + message.liquidStakedStTokenAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgSetCommunityPoolRebate { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + rebateRate: isSet(object.rebateRate) ? String(object.rebateRate) : '', + liquidStakedStTokenAmount: isSet(object.liquidStakedStTokenAmount) + ? String(object.liquidStakedStTokenAmount) + : '', + }; + }, + toJSON( + message: MsgSetCommunityPoolRebate, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.rebateRate !== undefined && (obj.rebateRate = message.rebateRate); + message.liquidStakedStTokenAmount !== undefined && + (obj.liquidStakedStTokenAmount = message.liquidStakedStTokenAmount); + return obj; + }, + fromPartial( + object: Partial, + ): MsgSetCommunityPoolRebate { + const message = createBaseMsgSetCommunityPoolRebate(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + message.rebateRate = object.rebateRate ?? ''; + message.liquidStakedStTokenAmount = object.liquidStakedStTokenAmount ?? ''; + return message; + }, + fromProtoMsg( + message: MsgSetCommunityPoolRebateProtoMsg, + ): MsgSetCommunityPoolRebate { + return MsgSetCommunityPoolRebate.decode(message.value); + }, + toProto(message: MsgSetCommunityPoolRebate): Uint8Array { + return MsgSetCommunityPoolRebate.encode(message).finish(); + }, + toProtoMsg( + message: MsgSetCommunityPoolRebate, + ): MsgSetCommunityPoolRebateProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgSetCommunityPoolRebate', + value: MsgSetCommunityPoolRebate.encode(message).finish(), + }; + }, +}; +function createBaseMsgSetCommunityPoolRebateResponse(): MsgSetCommunityPoolRebateResponse { + return {}; +} +export const MsgSetCommunityPoolRebateResponse = { + typeUrl: '/stride.stakeibc.MsgSetCommunityPoolRebateResponse', + encode( + _: MsgSetCommunityPoolRebateResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSetCommunityPoolRebateResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSetCommunityPoolRebateResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgSetCommunityPoolRebateResponse { + return {}; + }, + toJSON( + _: MsgSetCommunityPoolRebateResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgSetCommunityPoolRebateResponse { + const message = createBaseMsgSetCommunityPoolRebateResponse(); + return message; + }, + fromProtoMsg( + message: MsgSetCommunityPoolRebateResponseProtoMsg, + ): MsgSetCommunityPoolRebateResponse { + return MsgSetCommunityPoolRebateResponse.decode(message.value); + }, + toProto(message: MsgSetCommunityPoolRebateResponse): Uint8Array { + return MsgSetCommunityPoolRebateResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgSetCommunityPoolRebateResponse, + ): MsgSetCommunityPoolRebateResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgSetCommunityPoolRebateResponse', + value: MsgSetCommunityPoolRebateResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgToggleTradeController(): MsgToggleTradeController { + return { + creator: '', + chainId: '', + permissionChange: 0, + address: '', + legacy: false, + }; +} +export const MsgToggleTradeController = { + typeUrl: '/stride.stakeibc.MsgToggleTradeController', + encode( + message: MsgToggleTradeController, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.permissionChange !== 0) { + writer.uint32(24).int32(message.permissionChange); + } + if (message.address !== '') { + writer.uint32(34).string(message.address); + } + if (message.legacy === true) { + writer.uint32(40).bool(message.legacy); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgToggleTradeController { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgToggleTradeController(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.permissionChange = reader.int32() as any; + break; + case 4: + message.address = reader.string(); + break; + case 5: + message.legacy = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgToggleTradeController { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + permissionChange: isSet(object.permissionChange) + ? authzPermissionChangeFromJSON(object.permissionChange) + : -1, + address: isSet(object.address) ? String(object.address) : '', + legacy: isSet(object.legacy) ? Boolean(object.legacy) : false, + }; + }, + toJSON( + message: MsgToggleTradeController, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.permissionChange !== undefined && + (obj.permissionChange = authzPermissionChangeToJSON( + message.permissionChange, + )); + message.address !== undefined && (obj.address = message.address); + message.legacy !== undefined && (obj.legacy = message.legacy); + return obj; + }, + fromPartial( + object: Partial, + ): MsgToggleTradeController { + const message = createBaseMsgToggleTradeController(); + message.creator = object.creator ?? ''; + message.chainId = object.chainId ?? ''; + message.permissionChange = object.permissionChange ?? 0; + message.address = object.address ?? ''; + message.legacy = object.legacy ?? false; + return message; + }, + fromProtoMsg( + message: MsgToggleTradeControllerProtoMsg, + ): MsgToggleTradeController { + return MsgToggleTradeController.decode(message.value); + }, + toProto(message: MsgToggleTradeController): Uint8Array { + return MsgToggleTradeController.encode(message).finish(); + }, + toProtoMsg( + message: MsgToggleTradeController, + ): MsgToggleTradeControllerProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgToggleTradeController', + value: MsgToggleTradeController.encode(message).finish(), + }; + }, +}; +function createBaseMsgToggleTradeControllerResponse(): MsgToggleTradeControllerResponse { + return {}; +} +export const MsgToggleTradeControllerResponse = { + typeUrl: '/stride.stakeibc.MsgToggleTradeControllerResponse', + encode( + _: MsgToggleTradeControllerResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgToggleTradeControllerResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgToggleTradeControllerResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgToggleTradeControllerResponse { + return {}; + }, + toJSON( + _: MsgToggleTradeControllerResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgToggleTradeControllerResponse { + const message = createBaseMsgToggleTradeControllerResponse(); + return message; + }, + fromProtoMsg( + message: MsgToggleTradeControllerResponseProtoMsg, + ): MsgToggleTradeControllerResponse { + return MsgToggleTradeControllerResponse.decode(message.value); + }, + toProto(message: MsgToggleTradeControllerResponse): Uint8Array { + return MsgToggleTradeControllerResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgToggleTradeControllerResponse, + ): MsgToggleTradeControllerResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgToggleTradeControllerResponse', + value: MsgToggleTradeControllerResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateHostZoneParams(): MsgUpdateHostZoneParams { + return { + authority: '', + chainId: '', + maxMessagesPerIcaTx: BigInt(0), + }; +} +export const MsgUpdateHostZoneParams = { + typeUrl: '/stride.stakeibc.MsgUpdateHostZoneParams', + encode( + message: MsgUpdateHostZoneParams, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.authority !== '') { + writer.uint32(10).string(message.authority); + } + if (message.chainId !== '') { + writer.uint32(18).string(message.chainId); + } + if (message.maxMessagesPerIcaTx !== BigInt(0)) { + writer.uint32(24).uint64(message.maxMessagesPerIcaTx); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateHostZoneParams { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateHostZoneParams(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.authority = reader.string(); + break; + case 2: + message.chainId = reader.string(); + break; + case 3: + message.maxMessagesPerIcaTx = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateHostZoneParams { + return { + authority: isSet(object.authority) ? String(object.authority) : '', + chainId: isSet(object.chainId) ? String(object.chainId) : '', + maxMessagesPerIcaTx: isSet(object.maxMessagesPerIcaTx) + ? BigInt(object.maxMessagesPerIcaTx.toString()) + : BigInt(0), + }; + }, + toJSON(message: MsgUpdateHostZoneParams): JsonSafe { + const obj: any = {}; + message.authority !== undefined && (obj.authority = message.authority); + message.chainId !== undefined && (obj.chainId = message.chainId); + message.maxMessagesPerIcaTx !== undefined && + (obj.maxMessagesPerIcaTx = ( + message.maxMessagesPerIcaTx || BigInt(0) + ).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateHostZoneParams { + const message = createBaseMsgUpdateHostZoneParams(); + message.authority = object.authority ?? ''; + message.chainId = object.chainId ?? ''; + message.maxMessagesPerIcaTx = + object.maxMessagesPerIcaTx !== undefined && + object.maxMessagesPerIcaTx !== null + ? BigInt(object.maxMessagesPerIcaTx.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: MsgUpdateHostZoneParamsProtoMsg, + ): MsgUpdateHostZoneParams { + return MsgUpdateHostZoneParams.decode(message.value); + }, + toProto(message: MsgUpdateHostZoneParams): Uint8Array { + return MsgUpdateHostZoneParams.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateHostZoneParams, + ): MsgUpdateHostZoneParamsProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgUpdateHostZoneParams', + value: MsgUpdateHostZoneParams.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateHostZoneParamsResponse(): MsgUpdateHostZoneParamsResponse { + return {}; +} +export const MsgUpdateHostZoneParamsResponse = { + typeUrl: '/stride.stakeibc.MsgUpdateHostZoneParamsResponse', + encode( + _: MsgUpdateHostZoneParamsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateHostZoneParamsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateHostZoneParamsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateHostZoneParamsResponse { + return {}; + }, + toJSON( + _: MsgUpdateHostZoneParamsResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateHostZoneParamsResponse { + const message = createBaseMsgUpdateHostZoneParamsResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateHostZoneParamsResponseProtoMsg, + ): MsgUpdateHostZoneParamsResponse { + return MsgUpdateHostZoneParamsResponse.decode(message.value); + }, + toProto(message: MsgUpdateHostZoneParamsResponse): Uint8Array { + return MsgUpdateHostZoneParamsResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateHostZoneParamsResponse, + ): MsgUpdateHostZoneParamsResponseProtoMsg { + return { + typeUrl: '/stride.stakeibc.MsgUpdateHostZoneParamsResponse', + value: MsgUpdateHostZoneParamsResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/stakeibc/validator.ts b/packages/cosmic-proto/src/codegen/stride/stakeibc/validator.ts new file mode 100644 index 00000000000..6894b6576dd --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/stakeibc/validator.ts @@ -0,0 +1,204 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { Decimal, isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export interface Validator { + name: string; + address: string; + weight: bigint; + delegation: string; + slashQueryProgressTracker: string; + slashQueryCheckpoint: string; + sharesToTokensRate: string; + delegationChangesInProgress: bigint; + slashQueryInProgress: boolean; +} +export interface ValidatorProtoMsg { + typeUrl: '/stride.stakeibc.Validator'; + value: Uint8Array; +} +export interface ValidatorSDKType { + name: string; + address: string; + weight: bigint; + delegation: string; + slash_query_progress_tracker: string; + slash_query_checkpoint: string; + shares_to_tokens_rate: string; + delegation_changes_in_progress: bigint; + slash_query_in_progress: boolean; +} +function createBaseValidator(): Validator { + return { + name: '', + address: '', + weight: BigInt(0), + delegation: '', + slashQueryProgressTracker: '', + slashQueryCheckpoint: '', + sharesToTokensRate: '', + delegationChangesInProgress: BigInt(0), + slashQueryInProgress: false, + }; +} +export const Validator = { + typeUrl: '/stride.stakeibc.Validator', + encode( + message: Validator, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.name !== '') { + writer.uint32(10).string(message.name); + } + if (message.address !== '') { + writer.uint32(18).string(message.address); + } + if (message.weight !== BigInt(0)) { + writer.uint32(48).uint64(message.weight); + } + if (message.delegation !== '') { + writer.uint32(42).string(message.delegation); + } + if (message.slashQueryProgressTracker !== '') { + writer.uint32(74).string(message.slashQueryProgressTracker); + } + if (message.slashQueryCheckpoint !== '') { + writer.uint32(98).string(message.slashQueryCheckpoint); + } + if (message.sharesToTokensRate !== '') { + writer + .uint32(82) + .string(Decimal.fromUserInput(message.sharesToTokensRate, 18).atomics); + } + if (message.delegationChangesInProgress !== BigInt(0)) { + writer.uint32(88).int64(message.delegationChangesInProgress); + } + if (message.slashQueryInProgress === true) { + writer.uint32(104).bool(message.slashQueryInProgress); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Validator { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseValidator(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.address = reader.string(); + break; + case 6: + message.weight = reader.uint64(); + break; + case 5: + message.delegation = reader.string(); + break; + case 9: + message.slashQueryProgressTracker = reader.string(); + break; + case 12: + message.slashQueryCheckpoint = reader.string(); + break; + case 10: + message.sharesToTokensRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 11: + message.delegationChangesInProgress = reader.int64(); + break; + case 13: + message.slashQueryInProgress = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): Validator { + return { + name: isSet(object.name) ? String(object.name) : '', + address: isSet(object.address) ? String(object.address) : '', + weight: isSet(object.weight) + ? BigInt(object.weight.toString()) + : BigInt(0), + delegation: isSet(object.delegation) ? String(object.delegation) : '', + slashQueryProgressTracker: isSet(object.slashQueryProgressTracker) + ? String(object.slashQueryProgressTracker) + : '', + slashQueryCheckpoint: isSet(object.slashQueryCheckpoint) + ? String(object.slashQueryCheckpoint) + : '', + sharesToTokensRate: isSet(object.sharesToTokensRate) + ? String(object.sharesToTokensRate) + : '', + delegationChangesInProgress: isSet(object.delegationChangesInProgress) + ? BigInt(object.delegationChangesInProgress.toString()) + : BigInt(0), + slashQueryInProgress: isSet(object.slashQueryInProgress) + ? Boolean(object.slashQueryInProgress) + : false, + }; + }, + toJSON(message: Validator): JsonSafe { + const obj: any = {}; + message.name !== undefined && (obj.name = message.name); + message.address !== undefined && (obj.address = message.address); + message.weight !== undefined && + (obj.weight = (message.weight || BigInt(0)).toString()); + message.delegation !== undefined && (obj.delegation = message.delegation); + message.slashQueryProgressTracker !== undefined && + (obj.slashQueryProgressTracker = message.slashQueryProgressTracker); + message.slashQueryCheckpoint !== undefined && + (obj.slashQueryCheckpoint = message.slashQueryCheckpoint); + message.sharesToTokensRate !== undefined && + (obj.sharesToTokensRate = message.sharesToTokensRate); + message.delegationChangesInProgress !== undefined && + (obj.delegationChangesInProgress = ( + message.delegationChangesInProgress || BigInt(0) + ).toString()); + message.slashQueryInProgress !== undefined && + (obj.slashQueryInProgress = message.slashQueryInProgress); + return obj; + }, + fromPartial(object: Partial): Validator { + const message = createBaseValidator(); + message.name = object.name ?? ''; + message.address = object.address ?? ''; + message.weight = + object.weight !== undefined && object.weight !== null + ? BigInt(object.weight.toString()) + : BigInt(0); + message.delegation = object.delegation ?? ''; + message.slashQueryProgressTracker = object.slashQueryProgressTracker ?? ''; + message.slashQueryCheckpoint = object.slashQueryCheckpoint ?? ''; + message.sharesToTokensRate = object.sharesToTokensRate ?? ''; + message.delegationChangesInProgress = + object.delegationChangesInProgress !== undefined && + object.delegationChangesInProgress !== null + ? BigInt(object.delegationChangesInProgress.toString()) + : BigInt(0); + message.slashQueryInProgress = object.slashQueryInProgress ?? false; + return message; + }, + fromProtoMsg(message: ValidatorProtoMsg): Validator { + return Validator.decode(message.value); + }, + toProto(message: Validator): Uint8Array { + return Validator.encode(message).finish(); + }, + toProtoMsg(message: Validator): ValidatorProtoMsg { + return { + typeUrl: '/stride.stakeibc.Validator', + value: Validator.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/staketia/genesis.ts b/packages/cosmic-proto/src/codegen/stride/staketia/genesis.ts new file mode 100644 index 00000000000..d8a8f0c71b0 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/staketia/genesis.ts @@ -0,0 +1,420 @@ +//@ts-nocheck +import { + HostZone, + type HostZoneSDKType, + DelegationRecord, + type DelegationRecordSDKType, + UnbondingRecord, + type UnbondingRecordSDKType, + RedemptionRecord, + type RedemptionRecordSDKType, + SlashRecord, + type SlashRecordSDKType, +} from './staketia.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { type JsonSafe } from '../../json-safe.js'; +import { isSet } from '../../helpers.js'; +/** Params defines the staketia module parameters. */ +export interface Params {} +export interface ParamsProtoMsg { + typeUrl: '/stride.staketia.Params'; + value: Uint8Array; +} +/** Params defines the staketia module parameters. */ +export interface ParamsSDKType {} +/** + * TransferInProgressRecordIds stores record IDs for delegation records + * that have a transfer in progress + */ +export interface TransferInProgressRecordIds { + channelId: string; + sequence: bigint; + recordId: bigint; +} +export interface TransferInProgressRecordIdsProtoMsg { + typeUrl: '/stride.staketia.TransferInProgressRecordIds'; + value: Uint8Array; +} +/** + * TransferInProgressRecordIds stores record IDs for delegation records + * that have a transfer in progress + */ +export interface TransferInProgressRecordIdsSDKType { + channel_id: string; + sequence: bigint; + record_id: bigint; +} +/** GenesisState defines the staketia module's genesis state. */ +export interface GenesisState { + params: Params; + hostZone: HostZone; + delegationRecords: DelegationRecord[]; + unbondingRecords: UnbondingRecord[]; + redemptionRecords: RedemptionRecord[]; + slashRecords: SlashRecord[]; + transferInProgressRecordIds: TransferInProgressRecordIds[]; +} +export interface GenesisStateProtoMsg { + typeUrl: '/stride.staketia.GenesisState'; + value: Uint8Array; +} +/** GenesisState defines the staketia module's genesis state. */ +export interface GenesisStateSDKType { + params: ParamsSDKType; + host_zone: HostZoneSDKType; + delegation_records: DelegationRecordSDKType[]; + unbonding_records: UnbondingRecordSDKType[]; + redemption_records: RedemptionRecordSDKType[]; + slash_records: SlashRecordSDKType[]; + transfer_in_progress_record_ids: TransferInProgressRecordIdsSDKType[]; +} +function createBaseParams(): Params { + return {}; +} +export const Params = { + typeUrl: '/stride.staketia.Params', + encode( + _: Params, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): Params { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseParams(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): Params { + return {}; + }, + toJSON(_: Params): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): Params { + const message = createBaseParams(); + return message; + }, + fromProtoMsg(message: ParamsProtoMsg): Params { + return Params.decode(message.value); + }, + toProto(message: Params): Uint8Array { + return Params.encode(message).finish(); + }, + toProtoMsg(message: Params): ParamsProtoMsg { + return { + typeUrl: '/stride.staketia.Params', + value: Params.encode(message).finish(), + }; + }, +}; +function createBaseTransferInProgressRecordIds(): TransferInProgressRecordIds { + return { + channelId: '', + sequence: BigInt(0), + recordId: BigInt(0), + }; +} +export const TransferInProgressRecordIds = { + typeUrl: '/stride.staketia.TransferInProgressRecordIds', + encode( + message: TransferInProgressRecordIds, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.channelId !== '') { + writer.uint32(10).string(message.channelId); + } + if (message.sequence !== BigInt(0)) { + writer.uint32(16).uint64(message.sequence); + } + if (message.recordId !== BigInt(0)) { + writer.uint32(24).uint64(message.recordId); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): TransferInProgressRecordIds { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTransferInProgressRecordIds(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.channelId = reader.string(); + break; + case 2: + message.sequence = reader.uint64(); + break; + case 3: + message.recordId = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): TransferInProgressRecordIds { + return { + channelId: isSet(object.channelId) ? String(object.channelId) : '', + sequence: isSet(object.sequence) + ? BigInt(object.sequence.toString()) + : BigInt(0), + recordId: isSet(object.recordId) + ? BigInt(object.recordId.toString()) + : BigInt(0), + }; + }, + toJSON( + message: TransferInProgressRecordIds, + ): JsonSafe { + const obj: any = {}; + message.channelId !== undefined && (obj.channelId = message.channelId); + message.sequence !== undefined && + (obj.sequence = (message.sequence || BigInt(0)).toString()); + message.recordId !== undefined && + (obj.recordId = (message.recordId || BigInt(0)).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): TransferInProgressRecordIds { + const message = createBaseTransferInProgressRecordIds(); + message.channelId = object.channelId ?? ''; + message.sequence = + object.sequence !== undefined && object.sequence !== null + ? BigInt(object.sequence.toString()) + : BigInt(0); + message.recordId = + object.recordId !== undefined && object.recordId !== null + ? BigInt(object.recordId.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: TransferInProgressRecordIdsProtoMsg, + ): TransferInProgressRecordIds { + return TransferInProgressRecordIds.decode(message.value); + }, + toProto(message: TransferInProgressRecordIds): Uint8Array { + return TransferInProgressRecordIds.encode(message).finish(); + }, + toProtoMsg( + message: TransferInProgressRecordIds, + ): TransferInProgressRecordIdsProtoMsg { + return { + typeUrl: '/stride.staketia.TransferInProgressRecordIds', + value: TransferInProgressRecordIds.encode(message).finish(), + }; + }, +}; +function createBaseGenesisState(): GenesisState { + return { + params: Params.fromPartial({}), + hostZone: HostZone.fromPartial({}), + delegationRecords: [], + unbondingRecords: [], + redemptionRecords: [], + slashRecords: [], + transferInProgressRecordIds: [], + }; +} +export const GenesisState = { + typeUrl: '/stride.staketia.GenesisState', + encode( + message: GenesisState, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.params !== undefined) { + Params.encode(message.params, writer.uint32(10).fork()).ldelim(); + } + if (message.hostZone !== undefined) { + HostZone.encode(message.hostZone, writer.uint32(18).fork()).ldelim(); + } + for (const v of message.delegationRecords) { + DelegationRecord.encode(v!, writer.uint32(26).fork()).ldelim(); + } + for (const v of message.unbondingRecords) { + UnbondingRecord.encode(v!, writer.uint32(34).fork()).ldelim(); + } + for (const v of message.redemptionRecords) { + RedemptionRecord.encode(v!, writer.uint32(42).fork()).ldelim(); + } + for (const v of message.slashRecords) { + SlashRecord.encode(v!, writer.uint32(50).fork()).ldelim(); + } + for (const v of message.transferInProgressRecordIds) { + TransferInProgressRecordIds.encode(v!, writer.uint32(58).fork()).ldelim(); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): GenesisState { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(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.decode(reader, reader.uint32()); + break; + case 2: + message.hostZone = HostZone.decode(reader, reader.uint32()); + break; + case 3: + message.delegationRecords.push( + DelegationRecord.decode(reader, reader.uint32()), + ); + break; + case 4: + message.unbondingRecords.push( + UnbondingRecord.decode(reader, reader.uint32()), + ); + break; + case 5: + message.redemptionRecords.push( + RedemptionRecord.decode(reader, reader.uint32()), + ); + break; + case 6: + message.slashRecords.push( + SlashRecord.decode(reader, reader.uint32()), + ); + break; + case 7: + message.transferInProgressRecordIds.push( + TransferInProgressRecordIds.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): GenesisState { + return { + params: isSet(object.params) ? Params.fromJSON(object.params) : undefined, + hostZone: isSet(object.hostZone) + ? HostZone.fromJSON(object.hostZone) + : undefined, + delegationRecords: Array.isArray(object?.delegationRecords) + ? object.delegationRecords.map((e: any) => DelegationRecord.fromJSON(e)) + : [], + unbondingRecords: Array.isArray(object?.unbondingRecords) + ? object.unbondingRecords.map((e: any) => UnbondingRecord.fromJSON(e)) + : [], + redemptionRecords: Array.isArray(object?.redemptionRecords) + ? object.redemptionRecords.map((e: any) => RedemptionRecord.fromJSON(e)) + : [], + slashRecords: Array.isArray(object?.slashRecords) + ? object.slashRecords.map((e: any) => SlashRecord.fromJSON(e)) + : [], + transferInProgressRecordIds: Array.isArray( + object?.transferInProgressRecordIds, + ) + ? object.transferInProgressRecordIds.map((e: any) => + TransferInProgressRecordIds.fromJSON(e), + ) + : [], + }; + }, + toJSON(message: GenesisState): JsonSafe { + const obj: any = {}; + message.params !== undefined && + (obj.params = message.params ? Params.toJSON(message.params) : undefined); + message.hostZone !== undefined && + (obj.hostZone = message.hostZone + ? HostZone.toJSON(message.hostZone) + : undefined); + if (message.delegationRecords) { + obj.delegationRecords = message.delegationRecords.map(e => + e ? DelegationRecord.toJSON(e) : undefined, + ); + } else { + obj.delegationRecords = []; + } + if (message.unbondingRecords) { + obj.unbondingRecords = message.unbondingRecords.map(e => + e ? UnbondingRecord.toJSON(e) : undefined, + ); + } else { + obj.unbondingRecords = []; + } + if (message.redemptionRecords) { + obj.redemptionRecords = message.redemptionRecords.map(e => + e ? RedemptionRecord.toJSON(e) : undefined, + ); + } else { + obj.redemptionRecords = []; + } + if (message.slashRecords) { + obj.slashRecords = message.slashRecords.map(e => + e ? SlashRecord.toJSON(e) : undefined, + ); + } else { + obj.slashRecords = []; + } + if (message.transferInProgressRecordIds) { + obj.transferInProgressRecordIds = message.transferInProgressRecordIds.map( + e => (e ? TransferInProgressRecordIds.toJSON(e) : undefined), + ); + } else { + obj.transferInProgressRecordIds = []; + } + return obj; + }, + fromPartial(object: Partial): GenesisState { + const message = createBaseGenesisState(); + message.params = + object.params !== undefined && object.params !== null + ? Params.fromPartial(object.params) + : undefined; + message.hostZone = + object.hostZone !== undefined && object.hostZone !== null + ? HostZone.fromPartial(object.hostZone) + : undefined; + message.delegationRecords = + object.delegationRecords?.map(e => DelegationRecord.fromPartial(e)) || []; + message.unbondingRecords = + object.unbondingRecords?.map(e => UnbondingRecord.fromPartial(e)) || []; + message.redemptionRecords = + object.redemptionRecords?.map(e => RedemptionRecord.fromPartial(e)) || []; + message.slashRecords = + object.slashRecords?.map(e => SlashRecord.fromPartial(e)) || []; + message.transferInProgressRecordIds = + object.transferInProgressRecordIds?.map(e => + TransferInProgressRecordIds.fromPartial(e), + ) || []; + return message; + }, + fromProtoMsg(message: GenesisStateProtoMsg): GenesisState { + return GenesisState.decode(message.value); + }, + toProto(message: GenesisState): Uint8Array { + return GenesisState.encode(message).finish(); + }, + toProtoMsg(message: GenesisState): GenesisStateProtoMsg { + return { + typeUrl: '/stride.staketia.GenesisState', + value: GenesisState.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/staketia/query.ts b/packages/cosmic-proto/src/codegen/stride/staketia/query.ts new file mode 100644 index 00000000000..7b1e1666054 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/staketia/query.ts @@ -0,0 +1,1269 @@ +//@ts-nocheck +import { + PageRequest, + type PageRequestSDKType, + PageResponse, + type PageResponseSDKType, +} from '../../cosmos/base/query/v1beta1/pagination.js'; +import { + HostZone, + type HostZoneSDKType, + DelegationRecord, + type DelegationRecordSDKType, + UnbondingRecord, + type UnbondingRecordSDKType, + SlashRecord, + type SlashRecordSDKType, + RedemptionRecord, + type RedemptionRecordSDKType, +} from './staketia.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { type JsonSafe } from '../../json-safe.js'; +import { isSet } from '../../helpers.js'; +/** Host Zone */ +export interface QueryHostZoneRequest {} +export interface QueryHostZoneRequestProtoMsg { + typeUrl: '/stride.staketia.QueryHostZoneRequest'; + value: Uint8Array; +} +/** Host Zone */ +export interface QueryHostZoneRequestSDKType {} +export interface QueryHostZoneResponse { + hostZone?: HostZone; +} +export interface QueryHostZoneResponseProtoMsg { + typeUrl: '/stride.staketia.QueryHostZoneResponse'; + value: Uint8Array; +} +export interface QueryHostZoneResponseSDKType { + host_zone?: HostZoneSDKType; +} +/** All Delegation Records */ +export interface QueryDelegationRecordsRequest { + includeArchived: boolean; +} +export interface QueryDelegationRecordsRequestProtoMsg { + typeUrl: '/stride.staketia.QueryDelegationRecordsRequest'; + value: Uint8Array; +} +/** All Delegation Records */ +export interface QueryDelegationRecordsRequestSDKType { + include_archived: boolean; +} +export interface QueryDelegationRecordsResponse { + delegationRecords: DelegationRecord[]; +} +export interface QueryDelegationRecordsResponseProtoMsg { + typeUrl: '/stride.staketia.QueryDelegationRecordsResponse'; + value: Uint8Array; +} +export interface QueryDelegationRecordsResponseSDKType { + delegation_records: DelegationRecordSDKType[]; +} +/** All Unbonding Records */ +export interface QueryUnbondingRecordsRequest { + includeArchived: boolean; +} +export interface QueryUnbondingRecordsRequestProtoMsg { + typeUrl: '/stride.staketia.QueryUnbondingRecordsRequest'; + value: Uint8Array; +} +/** All Unbonding Records */ +export interface QueryUnbondingRecordsRequestSDKType { + include_archived: boolean; +} +export interface QueryUnbondingRecordsResponse { + unbondingRecords: UnbondingRecord[]; +} +export interface QueryUnbondingRecordsResponseProtoMsg { + typeUrl: '/stride.staketia.QueryUnbondingRecordsResponse'; + value: Uint8Array; +} +export interface QueryUnbondingRecordsResponseSDKType { + unbonding_records: UnbondingRecordSDKType[]; +} +/** Single Redemption Record */ +export interface QueryRedemptionRecordRequest { + unbondingRecordId: bigint; + address: string; +} +export interface QueryRedemptionRecordRequestProtoMsg { + typeUrl: '/stride.staketia.QueryRedemptionRecordRequest'; + value: Uint8Array; +} +/** Single Redemption Record */ +export interface QueryRedemptionRecordRequestSDKType { + unbonding_record_id: bigint; + address: string; +} +export interface QueryRedemptionRecordResponse { + redemptionRecordResponse?: RedemptionRecordResponse; +} +export interface QueryRedemptionRecordResponseProtoMsg { + typeUrl: '/stride.staketia.QueryRedemptionRecordResponse'; + value: Uint8Array; +} +export interface QueryRedemptionRecordResponseSDKType { + redemption_record_response?: RedemptionRecordResponseSDKType; +} +/** All Redemption Records */ +export interface QueryRedemptionRecordsRequest { + address: string; + unbondingRecordId: bigint; + pagination?: PageRequest; +} +export interface QueryRedemptionRecordsRequestProtoMsg { + typeUrl: '/stride.staketia.QueryRedemptionRecordsRequest'; + value: Uint8Array; +} +/** All Redemption Records */ +export interface QueryRedemptionRecordsRequestSDKType { + address: string; + unbonding_record_id: bigint; + pagination?: PageRequestSDKType; +} +export interface QueryRedemptionRecordsResponse { + redemptionRecordResponses: RedemptionRecordResponse[]; + pagination?: PageResponse; +} +export interface QueryRedemptionRecordsResponseProtoMsg { + typeUrl: '/stride.staketia.QueryRedemptionRecordsResponse'; + value: Uint8Array; +} +export interface QueryRedemptionRecordsResponseSDKType { + redemption_record_responses: RedemptionRecordResponseSDKType[]; + pagination?: PageResponseSDKType; +} +/** All Slash Records */ +export interface QuerySlashRecordsRequest {} +export interface QuerySlashRecordsRequestProtoMsg { + typeUrl: '/stride.staketia.QuerySlashRecordsRequest'; + value: Uint8Array; +} +/** All Slash Records */ +export interface QuerySlashRecordsRequestSDKType {} +export interface QuerySlashRecordsResponse { + slashRecords: SlashRecord[]; +} +export interface QuerySlashRecordsResponseProtoMsg { + typeUrl: '/stride.staketia.QuerySlashRecordsResponse'; + value: Uint8Array; +} +export interface QuerySlashRecordsResponseSDKType { + slash_records: SlashRecordSDKType[]; +} +/** Data structure for frontend to consume */ +export interface RedemptionRecordResponse { + /** Redemption record */ + redemptionRecord?: RedemptionRecord; + /** + * The Unix timestamp (in seconds) at which the unbonding for the UR + * associated with this RR completes + */ + unbondingCompletionTimeSeconds: bigint; +} +export interface RedemptionRecordResponseProtoMsg { + typeUrl: '/stride.staketia.RedemptionRecordResponse'; + value: Uint8Array; +} +/** Data structure for frontend to consume */ +export interface RedemptionRecordResponseSDKType { + redemption_record?: RedemptionRecordSDKType; + unbonding_completion_time_seconds: bigint; +} +function createBaseQueryHostZoneRequest(): QueryHostZoneRequest { + return {}; +} +export const QueryHostZoneRequest = { + typeUrl: '/stride.staketia.QueryHostZoneRequest', + encode( + _: QueryHostZoneRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryHostZoneRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryHostZoneRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QueryHostZoneRequest { + return {}; + }, + toJSON(_: QueryHostZoneRequest): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QueryHostZoneRequest { + const message = createBaseQueryHostZoneRequest(); + return message; + }, + fromProtoMsg(message: QueryHostZoneRequestProtoMsg): QueryHostZoneRequest { + return QueryHostZoneRequest.decode(message.value); + }, + toProto(message: QueryHostZoneRequest): Uint8Array { + return QueryHostZoneRequest.encode(message).finish(); + }, + toProtoMsg(message: QueryHostZoneRequest): QueryHostZoneRequestProtoMsg { + return { + typeUrl: '/stride.staketia.QueryHostZoneRequest', + value: QueryHostZoneRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryHostZoneResponse(): QueryHostZoneResponse { + return { + hostZone: undefined, + }; +} +export const QueryHostZoneResponse = { + typeUrl: '/stride.staketia.QueryHostZoneResponse', + encode( + message: QueryHostZoneResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.hostZone !== undefined) { + HostZone.encode(message.hostZone, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryHostZoneResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryHostZoneResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hostZone = HostZone.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryHostZoneResponse { + return { + hostZone: isSet(object.hostZone) + ? HostZone.fromJSON(object.hostZone) + : undefined, + }; + }, + toJSON(message: QueryHostZoneResponse): JsonSafe { + const obj: any = {}; + message.hostZone !== undefined && + (obj.hostZone = message.hostZone + ? HostZone.toJSON(message.hostZone) + : undefined); + return obj; + }, + fromPartial(object: Partial): QueryHostZoneResponse { + const message = createBaseQueryHostZoneResponse(); + message.hostZone = + object.hostZone !== undefined && object.hostZone !== null + ? HostZone.fromPartial(object.hostZone) + : undefined; + return message; + }, + fromProtoMsg(message: QueryHostZoneResponseProtoMsg): QueryHostZoneResponse { + return QueryHostZoneResponse.decode(message.value); + }, + toProto(message: QueryHostZoneResponse): Uint8Array { + return QueryHostZoneResponse.encode(message).finish(); + }, + toProtoMsg(message: QueryHostZoneResponse): QueryHostZoneResponseProtoMsg { + return { + typeUrl: '/stride.staketia.QueryHostZoneResponse', + value: QueryHostZoneResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryDelegationRecordsRequest(): QueryDelegationRecordsRequest { + return { + includeArchived: false, + }; +} +export const QueryDelegationRecordsRequest = { + typeUrl: '/stride.staketia.QueryDelegationRecordsRequest', + encode( + message: QueryDelegationRecordsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.includeArchived === true) { + writer.uint32(8).bool(message.includeArchived); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryDelegationRecordsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDelegationRecordsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.includeArchived = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryDelegationRecordsRequest { + return { + includeArchived: isSet(object.includeArchived) + ? Boolean(object.includeArchived) + : false, + }; + }, + toJSON( + message: QueryDelegationRecordsRequest, + ): JsonSafe { + const obj: any = {}; + message.includeArchived !== undefined && + (obj.includeArchived = message.includeArchived); + return obj; + }, + fromPartial( + object: Partial, + ): QueryDelegationRecordsRequest { + const message = createBaseQueryDelegationRecordsRequest(); + message.includeArchived = object.includeArchived ?? false; + return message; + }, + fromProtoMsg( + message: QueryDelegationRecordsRequestProtoMsg, + ): QueryDelegationRecordsRequest { + return QueryDelegationRecordsRequest.decode(message.value); + }, + toProto(message: QueryDelegationRecordsRequest): Uint8Array { + return QueryDelegationRecordsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryDelegationRecordsRequest, + ): QueryDelegationRecordsRequestProtoMsg { + return { + typeUrl: '/stride.staketia.QueryDelegationRecordsRequest', + value: QueryDelegationRecordsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryDelegationRecordsResponse(): QueryDelegationRecordsResponse { + return { + delegationRecords: [], + }; +} +export const QueryDelegationRecordsResponse = { + typeUrl: '/stride.staketia.QueryDelegationRecordsResponse', + encode( + message: QueryDelegationRecordsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.delegationRecords) { + DelegationRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryDelegationRecordsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryDelegationRecordsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.delegationRecords.push( + DelegationRecord.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryDelegationRecordsResponse { + return { + delegationRecords: Array.isArray(object?.delegationRecords) + ? object.delegationRecords.map((e: any) => DelegationRecord.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryDelegationRecordsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.delegationRecords) { + obj.delegationRecords = message.delegationRecords.map(e => + e ? DelegationRecord.toJSON(e) : undefined, + ); + } else { + obj.delegationRecords = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryDelegationRecordsResponse { + const message = createBaseQueryDelegationRecordsResponse(); + message.delegationRecords = + object.delegationRecords?.map(e => DelegationRecord.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryDelegationRecordsResponseProtoMsg, + ): QueryDelegationRecordsResponse { + return QueryDelegationRecordsResponse.decode(message.value); + }, + toProto(message: QueryDelegationRecordsResponse): Uint8Array { + return QueryDelegationRecordsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryDelegationRecordsResponse, + ): QueryDelegationRecordsResponseProtoMsg { + return { + typeUrl: '/stride.staketia.QueryDelegationRecordsResponse', + value: QueryDelegationRecordsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryUnbondingRecordsRequest(): QueryUnbondingRecordsRequest { + return { + includeArchived: false, + }; +} +export const QueryUnbondingRecordsRequest = { + typeUrl: '/stride.staketia.QueryUnbondingRecordsRequest', + encode( + message: QueryUnbondingRecordsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.includeArchived === true) { + writer.uint32(8).bool(message.includeArchived); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryUnbondingRecordsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryUnbondingRecordsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.includeArchived = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryUnbondingRecordsRequest { + return { + includeArchived: isSet(object.includeArchived) + ? Boolean(object.includeArchived) + : false, + }; + }, + toJSON( + message: QueryUnbondingRecordsRequest, + ): JsonSafe { + const obj: any = {}; + message.includeArchived !== undefined && + (obj.includeArchived = message.includeArchived); + return obj; + }, + fromPartial( + object: Partial, + ): QueryUnbondingRecordsRequest { + const message = createBaseQueryUnbondingRecordsRequest(); + message.includeArchived = object.includeArchived ?? false; + return message; + }, + fromProtoMsg( + message: QueryUnbondingRecordsRequestProtoMsg, + ): QueryUnbondingRecordsRequest { + return QueryUnbondingRecordsRequest.decode(message.value); + }, + toProto(message: QueryUnbondingRecordsRequest): Uint8Array { + return QueryUnbondingRecordsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryUnbondingRecordsRequest, + ): QueryUnbondingRecordsRequestProtoMsg { + return { + typeUrl: '/stride.staketia.QueryUnbondingRecordsRequest', + value: QueryUnbondingRecordsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryUnbondingRecordsResponse(): QueryUnbondingRecordsResponse { + return { + unbondingRecords: [], + }; +} +export const QueryUnbondingRecordsResponse = { + typeUrl: '/stride.staketia.QueryUnbondingRecordsResponse', + encode( + message: QueryUnbondingRecordsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.unbondingRecords) { + UnbondingRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryUnbondingRecordsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryUnbondingRecordsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.unbondingRecords.push( + UnbondingRecord.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryUnbondingRecordsResponse { + return { + unbondingRecords: Array.isArray(object?.unbondingRecords) + ? object.unbondingRecords.map((e: any) => UnbondingRecord.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QueryUnbondingRecordsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.unbondingRecords) { + obj.unbondingRecords = message.unbondingRecords.map(e => + e ? UnbondingRecord.toJSON(e) : undefined, + ); + } else { + obj.unbondingRecords = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QueryUnbondingRecordsResponse { + const message = createBaseQueryUnbondingRecordsResponse(); + message.unbondingRecords = + object.unbondingRecords?.map(e => UnbondingRecord.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QueryUnbondingRecordsResponseProtoMsg, + ): QueryUnbondingRecordsResponse { + return QueryUnbondingRecordsResponse.decode(message.value); + }, + toProto(message: QueryUnbondingRecordsResponse): Uint8Array { + return QueryUnbondingRecordsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryUnbondingRecordsResponse, + ): QueryUnbondingRecordsResponseProtoMsg { + return { + typeUrl: '/stride.staketia.QueryUnbondingRecordsResponse', + value: QueryUnbondingRecordsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryRedemptionRecordRequest(): QueryRedemptionRecordRequest { + return { + unbondingRecordId: BigInt(0), + address: '', + }; +} +export const QueryRedemptionRecordRequest = { + typeUrl: '/stride.staketia.QueryRedemptionRecordRequest', + encode( + message: QueryRedemptionRecordRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.unbondingRecordId !== BigInt(0)) { + writer.uint32(8).uint64(message.unbondingRecordId); + } + if (message.address !== '') { + writer.uint32(18).string(message.address); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRedemptionRecordRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRedemptionRecordRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.unbondingRecordId = reader.uint64(); + break; + case 2: + message.address = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRedemptionRecordRequest { + return { + unbondingRecordId: isSet(object.unbondingRecordId) + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0), + address: isSet(object.address) ? String(object.address) : '', + }; + }, + toJSON( + message: QueryRedemptionRecordRequest, + ): JsonSafe { + const obj: any = {}; + message.unbondingRecordId !== undefined && + (obj.unbondingRecordId = ( + message.unbondingRecordId || BigInt(0) + ).toString()); + message.address !== undefined && (obj.address = message.address); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRedemptionRecordRequest { + const message = createBaseQueryRedemptionRecordRequest(); + message.unbondingRecordId = + object.unbondingRecordId !== undefined && + object.unbondingRecordId !== null + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0); + message.address = object.address ?? ''; + return message; + }, + fromProtoMsg( + message: QueryRedemptionRecordRequestProtoMsg, + ): QueryRedemptionRecordRequest { + return QueryRedemptionRecordRequest.decode(message.value); + }, + toProto(message: QueryRedemptionRecordRequest): Uint8Array { + return QueryRedemptionRecordRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryRedemptionRecordRequest, + ): QueryRedemptionRecordRequestProtoMsg { + return { + typeUrl: '/stride.staketia.QueryRedemptionRecordRequest', + value: QueryRedemptionRecordRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryRedemptionRecordResponse(): QueryRedemptionRecordResponse { + return { + redemptionRecordResponse: undefined, + }; +} +export const QueryRedemptionRecordResponse = { + typeUrl: '/stride.staketia.QueryRedemptionRecordResponse', + encode( + message: QueryRedemptionRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.redemptionRecordResponse !== undefined) { + RedemptionRecordResponse.encode( + message.redemptionRecordResponse, + writer.uint32(10).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRedemptionRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRedemptionRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.redemptionRecordResponse = RedemptionRecordResponse.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRedemptionRecordResponse { + return { + redemptionRecordResponse: isSet(object.redemptionRecordResponse) + ? RedemptionRecordResponse.fromJSON(object.redemptionRecordResponse) + : undefined, + }; + }, + toJSON( + message: QueryRedemptionRecordResponse, + ): JsonSafe { + const obj: any = {}; + message.redemptionRecordResponse !== undefined && + (obj.redemptionRecordResponse = message.redemptionRecordResponse + ? RedemptionRecordResponse.toJSON(message.redemptionRecordResponse) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRedemptionRecordResponse { + const message = createBaseQueryRedemptionRecordResponse(); + message.redemptionRecordResponse = + object.redemptionRecordResponse !== undefined && + object.redemptionRecordResponse !== null + ? RedemptionRecordResponse.fromPartial(object.redemptionRecordResponse) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRedemptionRecordResponseProtoMsg, + ): QueryRedemptionRecordResponse { + return QueryRedemptionRecordResponse.decode(message.value); + }, + toProto(message: QueryRedemptionRecordResponse): Uint8Array { + return QueryRedemptionRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryRedemptionRecordResponse, + ): QueryRedemptionRecordResponseProtoMsg { + return { + typeUrl: '/stride.staketia.QueryRedemptionRecordResponse', + value: QueryRedemptionRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseQueryRedemptionRecordsRequest(): QueryRedemptionRecordsRequest { + return { + address: '', + unbondingRecordId: BigInt(0), + pagination: undefined, + }; +} +export const QueryRedemptionRecordsRequest = { + typeUrl: '/stride.staketia.QueryRedemptionRecordsRequest', + encode( + message: QueryRedemptionRecordsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.address !== '') { + writer.uint32(10).string(message.address); + } + if (message.unbondingRecordId !== BigInt(0)) { + writer.uint32(16).uint64(message.unbondingRecordId); + } + if (message.pagination !== undefined) { + PageRequest.encode(message.pagination, writer.uint32(26).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRedemptionRecordsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRedemptionRecordsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.address = reader.string(); + break; + case 2: + message.unbondingRecordId = reader.uint64(); + break; + case 3: + message.pagination = PageRequest.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRedemptionRecordsRequest { + return { + address: isSet(object.address) ? String(object.address) : '', + unbondingRecordId: isSet(object.unbondingRecordId) + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0), + pagination: isSet(object.pagination) + ? PageRequest.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryRedemptionRecordsRequest, + ): JsonSafe { + const obj: any = {}; + message.address !== undefined && (obj.address = message.address); + message.unbondingRecordId !== undefined && + (obj.unbondingRecordId = ( + message.unbondingRecordId || BigInt(0) + ).toString()); + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageRequest.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRedemptionRecordsRequest { + const message = createBaseQueryRedemptionRecordsRequest(); + message.address = object.address ?? ''; + message.unbondingRecordId = + object.unbondingRecordId !== undefined && + object.unbondingRecordId !== null + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0); + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageRequest.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRedemptionRecordsRequestProtoMsg, + ): QueryRedemptionRecordsRequest { + return QueryRedemptionRecordsRequest.decode(message.value); + }, + toProto(message: QueryRedemptionRecordsRequest): Uint8Array { + return QueryRedemptionRecordsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QueryRedemptionRecordsRequest, + ): QueryRedemptionRecordsRequestProtoMsg { + return { + typeUrl: '/stride.staketia.QueryRedemptionRecordsRequest', + value: QueryRedemptionRecordsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQueryRedemptionRecordsResponse(): QueryRedemptionRecordsResponse { + return { + redemptionRecordResponses: [], + pagination: undefined, + }; +} +export const QueryRedemptionRecordsResponse = { + typeUrl: '/stride.staketia.QueryRedemptionRecordsResponse', + encode( + message: QueryRedemptionRecordsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.redemptionRecordResponses) { + RedemptionRecordResponse.encode(v!, writer.uint32(10).fork()).ldelim(); + } + if (message.pagination !== undefined) { + PageResponse.encode( + message.pagination, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QueryRedemptionRecordsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQueryRedemptionRecordsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.redemptionRecordResponses.push( + RedemptionRecordResponse.decode(reader, reader.uint32()), + ); + break; + case 2: + message.pagination = PageResponse.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QueryRedemptionRecordsResponse { + return { + redemptionRecordResponses: Array.isArray( + object?.redemptionRecordResponses, + ) + ? object.redemptionRecordResponses.map((e: any) => + RedemptionRecordResponse.fromJSON(e), + ) + : [], + pagination: isSet(object.pagination) + ? PageResponse.fromJSON(object.pagination) + : undefined, + }; + }, + toJSON( + message: QueryRedemptionRecordsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.redemptionRecordResponses) { + obj.redemptionRecordResponses = message.redemptionRecordResponses.map( + e => (e ? RedemptionRecordResponse.toJSON(e) : undefined), + ); + } else { + obj.redemptionRecordResponses = []; + } + message.pagination !== undefined && + (obj.pagination = message.pagination + ? PageResponse.toJSON(message.pagination) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): QueryRedemptionRecordsResponse { + const message = createBaseQueryRedemptionRecordsResponse(); + message.redemptionRecordResponses = + object.redemptionRecordResponses?.map(e => + RedemptionRecordResponse.fromPartial(e), + ) || []; + message.pagination = + object.pagination !== undefined && object.pagination !== null + ? PageResponse.fromPartial(object.pagination) + : undefined; + return message; + }, + fromProtoMsg( + message: QueryRedemptionRecordsResponseProtoMsg, + ): QueryRedemptionRecordsResponse { + return QueryRedemptionRecordsResponse.decode(message.value); + }, + toProto(message: QueryRedemptionRecordsResponse): Uint8Array { + return QueryRedemptionRecordsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QueryRedemptionRecordsResponse, + ): QueryRedemptionRecordsResponseProtoMsg { + return { + typeUrl: '/stride.staketia.QueryRedemptionRecordsResponse', + value: QueryRedemptionRecordsResponse.encode(message).finish(), + }; + }, +}; +function createBaseQuerySlashRecordsRequest(): QuerySlashRecordsRequest { + return {}; +} +export const QuerySlashRecordsRequest = { + typeUrl: '/stride.staketia.QuerySlashRecordsRequest', + encode( + _: QuerySlashRecordsRequest, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QuerySlashRecordsRequest { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQuerySlashRecordsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): QuerySlashRecordsRequest { + return {}; + }, + toJSON(_: QuerySlashRecordsRequest): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial(_: Partial): QuerySlashRecordsRequest { + const message = createBaseQuerySlashRecordsRequest(); + return message; + }, + fromProtoMsg( + message: QuerySlashRecordsRequestProtoMsg, + ): QuerySlashRecordsRequest { + return QuerySlashRecordsRequest.decode(message.value); + }, + toProto(message: QuerySlashRecordsRequest): Uint8Array { + return QuerySlashRecordsRequest.encode(message).finish(); + }, + toProtoMsg( + message: QuerySlashRecordsRequest, + ): QuerySlashRecordsRequestProtoMsg { + return { + typeUrl: '/stride.staketia.QuerySlashRecordsRequest', + value: QuerySlashRecordsRequest.encode(message).finish(), + }; + }, +}; +function createBaseQuerySlashRecordsResponse(): QuerySlashRecordsResponse { + return { + slashRecords: [], + }; +} +export const QuerySlashRecordsResponse = { + typeUrl: '/stride.staketia.QuerySlashRecordsResponse', + encode( + message: QuerySlashRecordsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + for (const v of message.slashRecords) { + SlashRecord.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): QuerySlashRecordsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseQuerySlashRecordsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.slashRecords.push( + SlashRecord.decode(reader, reader.uint32()), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): QuerySlashRecordsResponse { + return { + slashRecords: Array.isArray(object?.slashRecords) + ? object.slashRecords.map((e: any) => SlashRecord.fromJSON(e)) + : [], + }; + }, + toJSON( + message: QuerySlashRecordsResponse, + ): JsonSafe { + const obj: any = {}; + if (message.slashRecords) { + obj.slashRecords = message.slashRecords.map(e => + e ? SlashRecord.toJSON(e) : undefined, + ); + } else { + obj.slashRecords = []; + } + return obj; + }, + fromPartial( + object: Partial, + ): QuerySlashRecordsResponse { + const message = createBaseQuerySlashRecordsResponse(); + message.slashRecords = + object.slashRecords?.map(e => SlashRecord.fromPartial(e)) || []; + return message; + }, + fromProtoMsg( + message: QuerySlashRecordsResponseProtoMsg, + ): QuerySlashRecordsResponse { + return QuerySlashRecordsResponse.decode(message.value); + }, + toProto(message: QuerySlashRecordsResponse): Uint8Array { + return QuerySlashRecordsResponse.encode(message).finish(); + }, + toProtoMsg( + message: QuerySlashRecordsResponse, + ): QuerySlashRecordsResponseProtoMsg { + return { + typeUrl: '/stride.staketia.QuerySlashRecordsResponse', + value: QuerySlashRecordsResponse.encode(message).finish(), + }; + }, +}; +function createBaseRedemptionRecordResponse(): RedemptionRecordResponse { + return { + redemptionRecord: undefined, + unbondingCompletionTimeSeconds: BigInt(0), + }; +} +export const RedemptionRecordResponse = { + typeUrl: '/stride.staketia.RedemptionRecordResponse', + encode( + message: RedemptionRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.redemptionRecord !== undefined) { + RedemptionRecord.encode( + message.redemptionRecord, + writer.uint32(10).fork(), + ).ldelim(); + } + if (message.unbondingCompletionTimeSeconds !== BigInt(0)) { + writer.uint32(16).uint64(message.unbondingCompletionTimeSeconds); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): RedemptionRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRedemptionRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.redemptionRecord = RedemptionRecord.decode( + reader, + reader.uint32(), + ); + break; + case 2: + message.unbondingCompletionTimeSeconds = reader.uint64(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RedemptionRecordResponse { + return { + redemptionRecord: isSet(object.redemptionRecord) + ? RedemptionRecord.fromJSON(object.redemptionRecord) + : undefined, + unbondingCompletionTimeSeconds: isSet( + object.unbondingCompletionTimeSeconds, + ) + ? BigInt(object.unbondingCompletionTimeSeconds.toString()) + : BigInt(0), + }; + }, + toJSON( + message: RedemptionRecordResponse, + ): JsonSafe { + const obj: any = {}; + message.redemptionRecord !== undefined && + (obj.redemptionRecord = message.redemptionRecord + ? RedemptionRecord.toJSON(message.redemptionRecord) + : undefined); + message.unbondingCompletionTimeSeconds !== undefined && + (obj.unbondingCompletionTimeSeconds = ( + message.unbondingCompletionTimeSeconds || BigInt(0) + ).toString()); + return obj; + }, + fromPartial( + object: Partial, + ): RedemptionRecordResponse { + const message = createBaseRedemptionRecordResponse(); + message.redemptionRecord = + object.redemptionRecord !== undefined && object.redemptionRecord !== null + ? RedemptionRecord.fromPartial(object.redemptionRecord) + : undefined; + message.unbondingCompletionTimeSeconds = + object.unbondingCompletionTimeSeconds !== undefined && + object.unbondingCompletionTimeSeconds !== null + ? BigInt(object.unbondingCompletionTimeSeconds.toString()) + : BigInt(0); + return message; + }, + fromProtoMsg( + message: RedemptionRecordResponseProtoMsg, + ): RedemptionRecordResponse { + return RedemptionRecordResponse.decode(message.value); + }, + toProto(message: RedemptionRecordResponse): Uint8Array { + return RedemptionRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: RedemptionRecordResponse, + ): RedemptionRecordResponseProtoMsg { + return { + typeUrl: '/stride.staketia.RedemptionRecordResponse', + value: RedemptionRecordResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/staketia/staketia.ts b/packages/cosmic-proto/src/codegen/stride/staketia/staketia.ts new file mode 100644 index 00000000000..2af506dfbe9 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/staketia/staketia.ts @@ -0,0 +1,1014 @@ +//@ts-nocheck +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +/** + * Status fields for a delegation record + * Note: There is an important assumption here that tokens in the deposit + * account should not be tracked by these records. The record is created as soon + * as the tokens leave stride + * Additionally, the GetActiveDelegationRecords query filters for records that + * are either TRANSFER_IN_PROGERSS or DELEGATION_QUEUE. If a new active status + * is added, the keeper must be modified + */ +export enum DelegationRecordStatus { + /** + * TRANSFER_IN_PROGRESS - TRANSFER_IN_PROGRESS indicates the native tokens are being sent from the + * deposit account to the delegation account + */ + TRANSFER_IN_PROGRESS = 0, + /** + * TRANSFER_FAILED - TRANSFER_FAILED indicates that the transfer either timed out or was an ack + * failure + */ + TRANSFER_FAILED = 1, + /** + * DELEGATION_QUEUE - DELEGATION_QUEUE indicates the tokens have landed on the host zone and are + * ready to be delegated + */ + DELEGATION_QUEUE = 2, + /** DELEGATION_COMPLETE - DELEGATION_COMPLETE indicates the delegation has been completed */ + DELEGATION_COMPLETE = 3, + UNRECOGNIZED = -1, +} +export const DelegationRecordStatusSDKType = DelegationRecordStatus; +export function delegationRecordStatusFromJSON( + object: any, +): DelegationRecordStatus { + switch (object) { + case 0: + case 'TRANSFER_IN_PROGRESS': + return DelegationRecordStatus.TRANSFER_IN_PROGRESS; + case 1: + case 'TRANSFER_FAILED': + return DelegationRecordStatus.TRANSFER_FAILED; + case 2: + case 'DELEGATION_QUEUE': + return DelegationRecordStatus.DELEGATION_QUEUE; + case 3: + case 'DELEGATION_COMPLETE': + return DelegationRecordStatus.DELEGATION_COMPLETE; + case -1: + case 'UNRECOGNIZED': + default: + return DelegationRecordStatus.UNRECOGNIZED; + } +} +export function delegationRecordStatusToJSON( + object: DelegationRecordStatus, +): string { + switch (object) { + case DelegationRecordStatus.TRANSFER_IN_PROGRESS: + return 'TRANSFER_IN_PROGRESS'; + case DelegationRecordStatus.TRANSFER_FAILED: + return 'TRANSFER_FAILED'; + case DelegationRecordStatus.DELEGATION_QUEUE: + return 'DELEGATION_QUEUE'; + case DelegationRecordStatus.DELEGATION_COMPLETE: + return 'DELEGATION_COMPLETE'; + case DelegationRecordStatus.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +/** Status fields for an unbonding record */ +export enum UnbondingRecordStatus { + /** + * ACCUMULATING_REDEMPTIONS - ACCUMULATING_REDEMPTIONS indicates redemptions are still being accumulated + * on this record + */ + ACCUMULATING_REDEMPTIONS = 0, + /** + * UNBONDING_QUEUE - UNBONDING_QUEUE indicates the unbond amount for this epoch has been froze + * and the tokens are ready to be unbonded on the host zone + */ + UNBONDING_QUEUE = 1, + /** + * UNBONDING_IN_PROGRESS - UNBONDING_IN_PROGRESS indicates the unbonding is currently in progress on + * the host zone + */ + UNBONDING_IN_PROGRESS = 2, + /** + * UNBONDED - UNBONDED indicates the unbonding is finished on the host zone and the + * tokens are still in the delegation account + */ + UNBONDED = 3, + /** + * CLAIMABLE - CLAIMABLE indicates the unbonded tokens have been swept to stride and are + * ready to be distributed to users + */ + CLAIMABLE = 4, + /** CLAIMED - CLAIMED indicates the full unbonding cycle has been completed */ + CLAIMED = 5, + UNRECOGNIZED = -1, +} +export const UnbondingRecordStatusSDKType = UnbondingRecordStatus; +export function unbondingRecordStatusFromJSON( + object: any, +): UnbondingRecordStatus { + switch (object) { + case 0: + case 'ACCUMULATING_REDEMPTIONS': + return UnbondingRecordStatus.ACCUMULATING_REDEMPTIONS; + case 1: + case 'UNBONDING_QUEUE': + return UnbondingRecordStatus.UNBONDING_QUEUE; + case 2: + case 'UNBONDING_IN_PROGRESS': + return UnbondingRecordStatus.UNBONDING_IN_PROGRESS; + case 3: + case 'UNBONDED': + return UnbondingRecordStatus.UNBONDED; + case 4: + case 'CLAIMABLE': + return UnbondingRecordStatus.CLAIMABLE; + case 5: + case 'CLAIMED': + return UnbondingRecordStatus.CLAIMED; + case -1: + case 'UNRECOGNIZED': + default: + return UnbondingRecordStatus.UNRECOGNIZED; + } +} +export function unbondingRecordStatusToJSON( + object: UnbondingRecordStatus, +): string { + switch (object) { + case UnbondingRecordStatus.ACCUMULATING_REDEMPTIONS: + return 'ACCUMULATING_REDEMPTIONS'; + case UnbondingRecordStatus.UNBONDING_QUEUE: + return 'UNBONDING_QUEUE'; + case UnbondingRecordStatus.UNBONDING_IN_PROGRESS: + return 'UNBONDING_IN_PROGRESS'; + case UnbondingRecordStatus.UNBONDED: + return 'UNBONDED'; + case UnbondingRecordStatus.CLAIMABLE: + return 'CLAIMABLE'; + case UnbondingRecordStatus.CLAIMED: + return 'CLAIMED'; + case UnbondingRecordStatus.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +export interface HostZone { + /** Chain ID */ + chainId: string; + /** Native token denom on the host zone (e.g. utia) */ + nativeTokenDenom: string; + /** IBC denom of the native token as it lives on stride (e.g. ibc/...) */ + nativeTokenIbcDenom: string; + /** Transfer channel ID from stride to the host zone */ + transferChannelId: string; + /** Operator controlled delegation address on the host zone */ + delegationAddress: string; + /** Operator controlled reward address on the host zone */ + rewardAddress: string; + /** Deposit address on stride */ + depositAddress: string; + /** Redemption address on stride */ + redemptionAddress: string; + /** Claim address on stride */ + claimAddress: string; + /** operator address set by safe, on stride */ + operatorAddressOnStride: string; + /** admin address set upon host zone creation, on stride */ + safeAddressOnStride: string; + /** Total delegated balance on the host zone delegation account */ + remainingDelegatedBalance: string; + /** The undelegation period for Celestia in days */ + unbondingPeriodSeconds: bigint; + /** Indicates whether the host zone has been halted */ + halted: boolean; +} +export interface HostZoneProtoMsg { + typeUrl: '/stride.staketia.HostZone'; + value: Uint8Array; +} +export interface HostZoneSDKType { + chain_id: string; + native_token_denom: string; + native_token_ibc_denom: string; + transfer_channel_id: string; + delegation_address: string; + reward_address: string; + deposit_address: string; + redemption_address: string; + claim_address: string; + operator_address_on_stride: string; + safe_address_on_stride: string; + remaining_delegated_balance: string; + unbonding_period_seconds: bigint; + halted: boolean; +} +/** + * DelegationRecords track the aggregate liquid stakes and delegations + * for a given epoch + * Note: There is an important assumption here that tokens in the deposit + * account should not be tracked by these records. The record is created as soon + * as the tokens leave stride + */ +export interface DelegationRecord { + /** Deposit record unique ID */ + id: bigint; + /** The amount of native tokens that should be delegated */ + nativeAmount: string; + /** The status indicating the point in the delegation's lifecycle */ + status: DelegationRecordStatus; + /** The tx hash of the delegation on the host zone */ + txHash: string; +} +export interface DelegationRecordProtoMsg { + typeUrl: '/stride.staketia.DelegationRecord'; + value: Uint8Array; +} +/** + * DelegationRecords track the aggregate liquid stakes and delegations + * for a given epoch + * Note: There is an important assumption here that tokens in the deposit + * account should not be tracked by these records. The record is created as soon + * as the tokens leave stride + */ +export interface DelegationRecordSDKType { + id: bigint; + native_amount: string; + status: DelegationRecordStatus; + tx_hash: string; +} +/** UnbondingRecords track the aggregate unbondings across an epoch */ +export interface UnbondingRecord { + /** Unbonding record ID */ + id: bigint; + /** The status indicating the point in the delegation's lifecycle */ + status: UnbondingRecordStatus; + /** The amount of stTokens that were redeemed */ + stTokenAmount: string; + /** The corresponding amount of native tokens that should be unbonded */ + nativeAmount: string; + /** The Unix timestamp (in seconds) at which the unbonding completes */ + unbondingCompletionTimeSeconds: bigint; + /** The tx hash of the undelegation on the host zone */ + undelegationTxHash: string; + /** The tx hash of the unbonded token sweep on the host zone */ + unbondedTokenSweepTxHash: string; +} +export interface UnbondingRecordProtoMsg { + typeUrl: '/stride.staketia.UnbondingRecord'; + value: Uint8Array; +} +/** UnbondingRecords track the aggregate unbondings across an epoch */ +export interface UnbondingRecordSDKType { + id: bigint; + status: UnbondingRecordStatus; + st_token_amount: string; + native_amount: string; + unbonding_completion_time_seconds: bigint; + undelegation_tx_hash: string; + unbonded_token_sweep_tx_hash: string; +} +/** RedemptionRecords track an individual user's redemption claims */ +export interface RedemptionRecord { + /** Unbonding record ID */ + unbondingRecordId: bigint; + /** Redeemer */ + redeemer: string; + /** The amount of stTokens that were redeemed */ + stTokenAmount: string; + /** The corresponding amount of native tokens that should be unbonded */ + nativeAmount: string; +} +export interface RedemptionRecordProtoMsg { + typeUrl: '/stride.staketia.RedemptionRecord'; + value: Uint8Array; +} +/** RedemptionRecords track an individual user's redemption claims */ +export interface RedemptionRecordSDKType { + unbonding_record_id: bigint; + redeemer: string; + st_token_amount: string; + native_amount: string; +} +/** SlashRecords log adjustments to the delegated balance */ +export interface SlashRecord { + /** The slash record monotonically increasing ID */ + id: bigint; + /** + * The Unix timestamp (in seconds) when the slash adjustment was processed on + * stride + */ + time: bigint; + /** The delta by which the total delegated amount changed from slash */ + nativeAmount: string; + /** The address (or addresses) of the validator that was slashed */ + validatorAddress: string; +} +export interface SlashRecordProtoMsg { + typeUrl: '/stride.staketia.SlashRecord'; + value: Uint8Array; +} +/** SlashRecords log adjustments to the delegated balance */ +export interface SlashRecordSDKType { + id: bigint; + time: bigint; + native_amount: string; + validator_address: string; +} +function createBaseHostZone(): HostZone { + return { + chainId: '', + nativeTokenDenom: '', + nativeTokenIbcDenom: '', + transferChannelId: '', + delegationAddress: '', + rewardAddress: '', + depositAddress: '', + redemptionAddress: '', + claimAddress: '', + operatorAddressOnStride: '', + safeAddressOnStride: '', + remainingDelegatedBalance: '', + unbondingPeriodSeconds: BigInt(0), + halted: false, + }; +} +export const HostZone = { + typeUrl: '/stride.staketia.HostZone', + encode( + message: HostZone, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.chainId !== '') { + writer.uint32(10).string(message.chainId); + } + if (message.nativeTokenDenom !== '') { + writer.uint32(18).string(message.nativeTokenDenom); + } + if (message.nativeTokenIbcDenom !== '') { + writer.uint32(26).string(message.nativeTokenIbcDenom); + } + if (message.transferChannelId !== '') { + writer.uint32(34).string(message.transferChannelId); + } + if (message.delegationAddress !== '') { + writer.uint32(42).string(message.delegationAddress); + } + if (message.rewardAddress !== '') { + writer.uint32(50).string(message.rewardAddress); + } + if (message.depositAddress !== '') { + writer.uint32(58).string(message.depositAddress); + } + if (message.redemptionAddress !== '') { + writer.uint32(66).string(message.redemptionAddress); + } + if (message.claimAddress !== '') { + writer.uint32(74).string(message.claimAddress); + } + if (message.operatorAddressOnStride !== '') { + writer.uint32(82).string(message.operatorAddressOnStride); + } + if (message.safeAddressOnStride !== '') { + writer.uint32(90).string(message.safeAddressOnStride); + } + if (message.remainingDelegatedBalance !== '') { + writer.uint32(146).string(message.remainingDelegatedBalance); + } + if (message.unbondingPeriodSeconds !== BigInt(0)) { + writer.uint32(152).uint64(message.unbondingPeriodSeconds); + } + if (message.halted === true) { + writer.uint32(160).bool(message.halted); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): HostZone { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseHostZone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.chainId = reader.string(); + break; + case 2: + message.nativeTokenDenom = reader.string(); + break; + case 3: + message.nativeTokenIbcDenom = reader.string(); + break; + case 4: + message.transferChannelId = reader.string(); + break; + case 5: + message.delegationAddress = reader.string(); + break; + case 6: + message.rewardAddress = reader.string(); + break; + case 7: + message.depositAddress = reader.string(); + break; + case 8: + message.redemptionAddress = reader.string(); + break; + case 9: + message.claimAddress = reader.string(); + break; + case 10: + message.operatorAddressOnStride = reader.string(); + break; + case 11: + message.safeAddressOnStride = reader.string(); + break; + case 18: + message.remainingDelegatedBalance = reader.string(); + break; + case 19: + message.unbondingPeriodSeconds = reader.uint64(); + break; + case 20: + message.halted = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): HostZone { + return { + chainId: isSet(object.chainId) ? String(object.chainId) : '', + nativeTokenDenom: isSet(object.nativeTokenDenom) + ? String(object.nativeTokenDenom) + : '', + nativeTokenIbcDenom: isSet(object.nativeTokenIbcDenom) + ? String(object.nativeTokenIbcDenom) + : '', + transferChannelId: isSet(object.transferChannelId) + ? String(object.transferChannelId) + : '', + delegationAddress: isSet(object.delegationAddress) + ? String(object.delegationAddress) + : '', + rewardAddress: isSet(object.rewardAddress) + ? String(object.rewardAddress) + : '', + depositAddress: isSet(object.depositAddress) + ? String(object.depositAddress) + : '', + redemptionAddress: isSet(object.redemptionAddress) + ? String(object.redemptionAddress) + : '', + claimAddress: isSet(object.claimAddress) + ? String(object.claimAddress) + : '', + operatorAddressOnStride: isSet(object.operatorAddressOnStride) + ? String(object.operatorAddressOnStride) + : '', + safeAddressOnStride: isSet(object.safeAddressOnStride) + ? String(object.safeAddressOnStride) + : '', + remainingDelegatedBalance: isSet(object.remainingDelegatedBalance) + ? String(object.remainingDelegatedBalance) + : '', + unbondingPeriodSeconds: isSet(object.unbondingPeriodSeconds) + ? BigInt(object.unbondingPeriodSeconds.toString()) + : BigInt(0), + halted: isSet(object.halted) ? Boolean(object.halted) : false, + }; + }, + toJSON(message: HostZone): JsonSafe { + const obj: any = {}; + message.chainId !== undefined && (obj.chainId = message.chainId); + message.nativeTokenDenom !== undefined && + (obj.nativeTokenDenom = message.nativeTokenDenom); + message.nativeTokenIbcDenom !== undefined && + (obj.nativeTokenIbcDenom = message.nativeTokenIbcDenom); + message.transferChannelId !== undefined && + (obj.transferChannelId = message.transferChannelId); + message.delegationAddress !== undefined && + (obj.delegationAddress = message.delegationAddress); + message.rewardAddress !== undefined && + (obj.rewardAddress = message.rewardAddress); + message.depositAddress !== undefined && + (obj.depositAddress = message.depositAddress); + message.redemptionAddress !== undefined && + (obj.redemptionAddress = message.redemptionAddress); + message.claimAddress !== undefined && + (obj.claimAddress = message.claimAddress); + message.operatorAddressOnStride !== undefined && + (obj.operatorAddressOnStride = message.operatorAddressOnStride); + message.safeAddressOnStride !== undefined && + (obj.safeAddressOnStride = message.safeAddressOnStride); + message.remainingDelegatedBalance !== undefined && + (obj.remainingDelegatedBalance = message.remainingDelegatedBalance); + message.unbondingPeriodSeconds !== undefined && + (obj.unbondingPeriodSeconds = ( + message.unbondingPeriodSeconds || BigInt(0) + ).toString()); + message.halted !== undefined && (obj.halted = message.halted); + return obj; + }, + fromPartial(object: Partial): HostZone { + const message = createBaseHostZone(); + message.chainId = object.chainId ?? ''; + message.nativeTokenDenom = object.nativeTokenDenom ?? ''; + message.nativeTokenIbcDenom = object.nativeTokenIbcDenom ?? ''; + message.transferChannelId = object.transferChannelId ?? ''; + message.delegationAddress = object.delegationAddress ?? ''; + message.rewardAddress = object.rewardAddress ?? ''; + message.depositAddress = object.depositAddress ?? ''; + message.redemptionAddress = object.redemptionAddress ?? ''; + message.claimAddress = object.claimAddress ?? ''; + message.operatorAddressOnStride = object.operatorAddressOnStride ?? ''; + message.safeAddressOnStride = object.safeAddressOnStride ?? ''; + message.remainingDelegatedBalance = object.remainingDelegatedBalance ?? ''; + message.unbondingPeriodSeconds = + object.unbondingPeriodSeconds !== undefined && + object.unbondingPeriodSeconds !== null + ? BigInt(object.unbondingPeriodSeconds.toString()) + : BigInt(0); + message.halted = object.halted ?? false; + return message; + }, + fromProtoMsg(message: HostZoneProtoMsg): HostZone { + return HostZone.decode(message.value); + }, + toProto(message: HostZone): Uint8Array { + return HostZone.encode(message).finish(); + }, + toProtoMsg(message: HostZone): HostZoneProtoMsg { + return { + typeUrl: '/stride.staketia.HostZone', + value: HostZone.encode(message).finish(), + }; + }, +}; +function createBaseDelegationRecord(): DelegationRecord { + return { + id: BigInt(0), + nativeAmount: '', + status: 0, + txHash: '', + }; +} +export const DelegationRecord = { + typeUrl: '/stride.staketia.DelegationRecord', + encode( + message: DelegationRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== BigInt(0)) { + writer.uint32(8).uint64(message.id); + } + if (message.nativeAmount !== '') { + writer.uint32(18).string(message.nativeAmount); + } + if (message.status !== 0) { + writer.uint32(24).int32(message.status); + } + if (message.txHash !== '') { + writer.uint32(34).string(message.txHash); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): DelegationRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDelegationRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.uint64(); + break; + case 2: + message.nativeAmount = reader.string(); + break; + case 3: + message.status = reader.int32() as any; + break; + case 4: + message.txHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): DelegationRecord { + return { + id: isSet(object.id) ? BigInt(object.id.toString()) : BigInt(0), + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + status: isSet(object.status) + ? delegationRecordStatusFromJSON(object.status) + : -1, + txHash: isSet(object.txHash) ? String(object.txHash) : '', + }; + }, + toJSON(message: DelegationRecord): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = (message.id || BigInt(0)).toString()); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + message.status !== undefined && + (obj.status = delegationRecordStatusToJSON(message.status)); + message.txHash !== undefined && (obj.txHash = message.txHash); + return obj; + }, + fromPartial(object: Partial): DelegationRecord { + const message = createBaseDelegationRecord(); + message.id = + object.id !== undefined && object.id !== null + ? BigInt(object.id.toString()) + : BigInt(0); + message.nativeAmount = object.nativeAmount ?? ''; + message.status = object.status ?? 0; + message.txHash = object.txHash ?? ''; + return message; + }, + fromProtoMsg(message: DelegationRecordProtoMsg): DelegationRecord { + return DelegationRecord.decode(message.value); + }, + toProto(message: DelegationRecord): Uint8Array { + return DelegationRecord.encode(message).finish(); + }, + toProtoMsg(message: DelegationRecord): DelegationRecordProtoMsg { + return { + typeUrl: '/stride.staketia.DelegationRecord', + value: DelegationRecord.encode(message).finish(), + }; + }, +}; +function createBaseUnbondingRecord(): UnbondingRecord { + return { + id: BigInt(0), + status: 0, + stTokenAmount: '', + nativeAmount: '', + unbondingCompletionTimeSeconds: BigInt(0), + undelegationTxHash: '', + unbondedTokenSweepTxHash: '', + }; +} +export const UnbondingRecord = { + typeUrl: '/stride.staketia.UnbondingRecord', + encode( + message: UnbondingRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== BigInt(0)) { + writer.uint32(8).uint64(message.id); + } + if (message.status !== 0) { + writer.uint32(16).int32(message.status); + } + if (message.stTokenAmount !== '') { + writer.uint32(26).string(message.stTokenAmount); + } + if (message.nativeAmount !== '') { + writer.uint32(34).string(message.nativeAmount); + } + if (message.unbondingCompletionTimeSeconds !== BigInt(0)) { + writer.uint32(40).uint64(message.unbondingCompletionTimeSeconds); + } + if (message.undelegationTxHash !== '') { + writer.uint32(50).string(message.undelegationTxHash); + } + if (message.unbondedTokenSweepTxHash !== '') { + writer.uint32(58).string(message.unbondedTokenSweepTxHash); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): UnbondingRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUnbondingRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.uint64(); + break; + case 2: + message.status = reader.int32() as any; + break; + case 3: + message.stTokenAmount = reader.string(); + break; + case 4: + message.nativeAmount = reader.string(); + break; + case 5: + message.unbondingCompletionTimeSeconds = reader.uint64(); + break; + case 6: + message.undelegationTxHash = reader.string(); + break; + case 7: + message.unbondedTokenSweepTxHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): UnbondingRecord { + return { + id: isSet(object.id) ? BigInt(object.id.toString()) : BigInt(0), + status: isSet(object.status) + ? unbondingRecordStatusFromJSON(object.status) + : -1, + stTokenAmount: isSet(object.stTokenAmount) + ? String(object.stTokenAmount) + : '', + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + unbondingCompletionTimeSeconds: isSet( + object.unbondingCompletionTimeSeconds, + ) + ? BigInt(object.unbondingCompletionTimeSeconds.toString()) + : BigInt(0), + undelegationTxHash: isSet(object.undelegationTxHash) + ? String(object.undelegationTxHash) + : '', + unbondedTokenSweepTxHash: isSet(object.unbondedTokenSweepTxHash) + ? String(object.unbondedTokenSweepTxHash) + : '', + }; + }, + toJSON(message: UnbondingRecord): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = (message.id || BigInt(0)).toString()); + message.status !== undefined && + (obj.status = unbondingRecordStatusToJSON(message.status)); + message.stTokenAmount !== undefined && + (obj.stTokenAmount = message.stTokenAmount); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + message.unbondingCompletionTimeSeconds !== undefined && + (obj.unbondingCompletionTimeSeconds = ( + message.unbondingCompletionTimeSeconds || BigInt(0) + ).toString()); + message.undelegationTxHash !== undefined && + (obj.undelegationTxHash = message.undelegationTxHash); + message.unbondedTokenSweepTxHash !== undefined && + (obj.unbondedTokenSweepTxHash = message.unbondedTokenSweepTxHash); + return obj; + }, + fromPartial(object: Partial): UnbondingRecord { + const message = createBaseUnbondingRecord(); + message.id = + object.id !== undefined && object.id !== null + ? BigInt(object.id.toString()) + : BigInt(0); + message.status = object.status ?? 0; + message.stTokenAmount = object.stTokenAmount ?? ''; + message.nativeAmount = object.nativeAmount ?? ''; + message.unbondingCompletionTimeSeconds = + object.unbondingCompletionTimeSeconds !== undefined && + object.unbondingCompletionTimeSeconds !== null + ? BigInt(object.unbondingCompletionTimeSeconds.toString()) + : BigInt(0); + message.undelegationTxHash = object.undelegationTxHash ?? ''; + message.unbondedTokenSweepTxHash = object.unbondedTokenSweepTxHash ?? ''; + return message; + }, + fromProtoMsg(message: UnbondingRecordProtoMsg): UnbondingRecord { + return UnbondingRecord.decode(message.value); + }, + toProto(message: UnbondingRecord): Uint8Array { + return UnbondingRecord.encode(message).finish(); + }, + toProtoMsg(message: UnbondingRecord): UnbondingRecordProtoMsg { + return { + typeUrl: '/stride.staketia.UnbondingRecord', + value: UnbondingRecord.encode(message).finish(), + }; + }, +}; +function createBaseRedemptionRecord(): RedemptionRecord { + return { + unbondingRecordId: BigInt(0), + redeemer: '', + stTokenAmount: '', + nativeAmount: '', + }; +} +export const RedemptionRecord = { + typeUrl: '/stride.staketia.RedemptionRecord', + encode( + message: RedemptionRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.unbondingRecordId !== BigInt(0)) { + writer.uint32(8).uint64(message.unbondingRecordId); + } + if (message.redeemer !== '') { + writer.uint32(18).string(message.redeemer); + } + if (message.stTokenAmount !== '') { + writer.uint32(26).string(message.stTokenAmount); + } + if (message.nativeAmount !== '') { + writer.uint32(34).string(message.nativeAmount); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): RedemptionRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRedemptionRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.unbondingRecordId = reader.uint64(); + break; + case 2: + message.redeemer = reader.string(); + break; + case 3: + message.stTokenAmount = reader.string(); + break; + case 4: + message.nativeAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): RedemptionRecord { + return { + unbondingRecordId: isSet(object.unbondingRecordId) + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0), + redeemer: isSet(object.redeemer) ? String(object.redeemer) : '', + stTokenAmount: isSet(object.stTokenAmount) + ? String(object.stTokenAmount) + : '', + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + }; + }, + toJSON(message: RedemptionRecord): JsonSafe { + const obj: any = {}; + message.unbondingRecordId !== undefined && + (obj.unbondingRecordId = ( + message.unbondingRecordId || BigInt(0) + ).toString()); + message.redeemer !== undefined && (obj.redeemer = message.redeemer); + message.stTokenAmount !== undefined && + (obj.stTokenAmount = message.stTokenAmount); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + return obj; + }, + fromPartial(object: Partial): RedemptionRecord { + const message = createBaseRedemptionRecord(); + message.unbondingRecordId = + object.unbondingRecordId !== undefined && + object.unbondingRecordId !== null + ? BigInt(object.unbondingRecordId.toString()) + : BigInt(0); + message.redeemer = object.redeemer ?? ''; + message.stTokenAmount = object.stTokenAmount ?? ''; + message.nativeAmount = object.nativeAmount ?? ''; + return message; + }, + fromProtoMsg(message: RedemptionRecordProtoMsg): RedemptionRecord { + return RedemptionRecord.decode(message.value); + }, + toProto(message: RedemptionRecord): Uint8Array { + return RedemptionRecord.encode(message).finish(); + }, + toProtoMsg(message: RedemptionRecord): RedemptionRecordProtoMsg { + return { + typeUrl: '/stride.staketia.RedemptionRecord', + value: RedemptionRecord.encode(message).finish(), + }; + }, +}; +function createBaseSlashRecord(): SlashRecord { + return { + id: BigInt(0), + time: BigInt(0), + nativeAmount: '', + validatorAddress: '', + }; +} +export const SlashRecord = { + typeUrl: '/stride.staketia.SlashRecord', + encode( + message: SlashRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.id !== BigInt(0)) { + writer.uint32(8).uint64(message.id); + } + if (message.time !== BigInt(0)) { + writer.uint32(16).uint64(message.time); + } + if (message.nativeAmount !== '') { + writer.uint32(26).string(message.nativeAmount); + } + if (message.validatorAddress !== '') { + writer.uint32(34).string(message.validatorAddress); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): SlashRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSlashRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.uint64(); + break; + case 2: + message.time = reader.uint64(); + break; + case 3: + message.nativeAmount = reader.string(); + break; + case 4: + message.validatorAddress = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): SlashRecord { + return { + id: isSet(object.id) ? BigInt(object.id.toString()) : BigInt(0), + time: isSet(object.time) ? BigInt(object.time.toString()) : BigInt(0), + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + validatorAddress: isSet(object.validatorAddress) + ? String(object.validatorAddress) + : '', + }; + }, + toJSON(message: SlashRecord): JsonSafe { + const obj: any = {}; + message.id !== undefined && (obj.id = (message.id || BigInt(0)).toString()); + message.time !== undefined && + (obj.time = (message.time || BigInt(0)).toString()); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + message.validatorAddress !== undefined && + (obj.validatorAddress = message.validatorAddress); + return obj; + }, + fromPartial(object: Partial): SlashRecord { + const message = createBaseSlashRecord(); + message.id = + object.id !== undefined && object.id !== null + ? BigInt(object.id.toString()) + : BigInt(0); + message.time = + object.time !== undefined && object.time !== null + ? BigInt(object.time.toString()) + : BigInt(0); + message.nativeAmount = object.nativeAmount ?? ''; + message.validatorAddress = object.validatorAddress ?? ''; + return message; + }, + fromProtoMsg(message: SlashRecordProtoMsg): SlashRecord { + return SlashRecord.decode(message.value); + }, + toProto(message: SlashRecord): Uint8Array { + return SlashRecord.encode(message).finish(); + }, + toProtoMsg(message: SlashRecord): SlashRecordProtoMsg { + return { + typeUrl: '/stride.staketia.SlashRecord', + value: SlashRecord.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/stride/staketia/tx.ts b/packages/cosmic-proto/src/codegen/stride/staketia/tx.ts new file mode 100644 index 00000000000..a9ee47a4701 --- /dev/null +++ b/packages/cosmic-proto/src/codegen/stride/staketia/tx.ts @@ -0,0 +1,2320 @@ +//@ts-nocheck +import { + DelegationRecord, + type DelegationRecordSDKType, + UnbondingRecord, + type UnbondingRecordSDKType, + RedemptionRecord, + type RedemptionRecordSDKType, +} from './staketia.js'; +import { Coin, type CoinSDKType } from '../../cosmos/base/v1beta1/coin.js'; +import { BinaryReader, BinaryWriter } from '../../binary.js'; +import { isSet, Decimal } from '../../helpers.js'; +import { type JsonSafe } from '../../json-safe.js'; +export enum OverwritableRecordType { + RECORD_TYPE_DELEGATION = 0, + RECORD_TYPE_UNBONDING = 1, + RECORD_TYPE_REDEMPTION = 2, + UNRECOGNIZED = -1, +} +export const OverwritableRecordTypeSDKType = OverwritableRecordType; +export function overwritableRecordTypeFromJSON( + object: any, +): OverwritableRecordType { + switch (object) { + case 0: + case 'RECORD_TYPE_DELEGATION': + return OverwritableRecordType.RECORD_TYPE_DELEGATION; + case 1: + case 'RECORD_TYPE_UNBONDING': + return OverwritableRecordType.RECORD_TYPE_UNBONDING; + case 2: + case 'RECORD_TYPE_REDEMPTION': + return OverwritableRecordType.RECORD_TYPE_REDEMPTION; + case -1: + case 'UNRECOGNIZED': + default: + return OverwritableRecordType.UNRECOGNIZED; + } +} +export function overwritableRecordTypeToJSON( + object: OverwritableRecordType, +): string { + switch (object) { + case OverwritableRecordType.RECORD_TYPE_DELEGATION: + return 'RECORD_TYPE_DELEGATION'; + case OverwritableRecordType.RECORD_TYPE_UNBONDING: + return 'RECORD_TYPE_UNBONDING'; + case OverwritableRecordType.RECORD_TYPE_REDEMPTION: + return 'RECORD_TYPE_REDEMPTION'; + case OverwritableRecordType.UNRECOGNIZED: + default: + return 'UNRECOGNIZED'; + } +} +/** + * Deprecated: Liquid stakes should be handled in stakeibc + * LiquidStake + */ +/** @deprecated */ +export interface MsgLiquidStake { + staker: string; + nativeAmount: string; +} +export interface MsgLiquidStakeProtoMsg { + typeUrl: '/stride.staketia.MsgLiquidStake'; + value: Uint8Array; +} +/** + * Deprecated: Liquid stakes should be handled in stakeibc + * LiquidStake + */ +/** @deprecated */ +export interface MsgLiquidStakeSDKType { + staker: string; + native_amount: string; +} +/** @deprecated */ +export interface MsgLiquidStakeResponse { + stToken: Coin; +} +export interface MsgLiquidStakeResponseProtoMsg { + typeUrl: '/stride.staketia.MsgLiquidStakeResponse'; + value: Uint8Array; +} +/** @deprecated */ +export interface MsgLiquidStakeResponseSDKType { + st_token: CoinSDKType; +} +/** RedeemStake */ +export interface MsgRedeemStake { + redeemer: string; + stTokenAmount: string; + /** + * The receiver field is a celestia address + * It is only used in the case where the redemption spills over to stakeibc + */ + receiver: string; +} +export interface MsgRedeemStakeProtoMsg { + typeUrl: '/stride.staketia.MsgRedeemStake'; + value: Uint8Array; +} +/** RedeemStake */ +export interface MsgRedeemStakeSDKType { + redeemer: string; + st_token_amount: string; + receiver: string; +} +export interface MsgRedeemStakeResponse { + nativeToken: Coin; +} +export interface MsgRedeemStakeResponseProtoMsg { + typeUrl: '/stride.staketia.MsgRedeemStakeResponse'; + value: Uint8Array; +} +export interface MsgRedeemStakeResponseSDKType { + native_token: CoinSDKType; +} +/** ConfirmDelegation */ +export interface MsgConfirmDelegation { + operator: string; + recordId: bigint; + txHash: string; +} +export interface MsgConfirmDelegationProtoMsg { + typeUrl: '/stride.staketia.MsgConfirmDelegation'; + value: Uint8Array; +} +/** ConfirmDelegation */ +export interface MsgConfirmDelegationSDKType { + operator: string; + record_id: bigint; + tx_hash: string; +} +export interface MsgConfirmDelegationResponse {} +export interface MsgConfirmDelegationResponseProtoMsg { + typeUrl: '/stride.staketia.MsgConfirmDelegationResponse'; + value: Uint8Array; +} +export interface MsgConfirmDelegationResponseSDKType {} +/** ConfirmUndelegation */ +export interface MsgConfirmUndelegation { + operator: string; + recordId: bigint; + txHash: string; +} +export interface MsgConfirmUndelegationProtoMsg { + typeUrl: '/stride.staketia.MsgConfirmUndelegation'; + value: Uint8Array; +} +/** ConfirmUndelegation */ +export interface MsgConfirmUndelegationSDKType { + operator: string; + record_id: bigint; + tx_hash: string; +} +export interface MsgConfirmUndelegationResponse {} +export interface MsgConfirmUndelegationResponseProtoMsg { + typeUrl: '/stride.staketia.MsgConfirmUndelegationResponse'; + value: Uint8Array; +} +export interface MsgConfirmUndelegationResponseSDKType {} +/** ConfirmUnbondedTokenSweep */ +export interface MsgConfirmUnbondedTokenSweep { + operator: string; + recordId: bigint; + txHash: string; +} +export interface MsgConfirmUnbondedTokenSweepProtoMsg { + typeUrl: '/stride.staketia.MsgConfirmUnbondedTokenSweep'; + value: Uint8Array; +} +/** ConfirmUnbondedTokenSweep */ +export interface MsgConfirmUnbondedTokenSweepSDKType { + operator: string; + record_id: bigint; + tx_hash: string; +} +export interface MsgConfirmUnbondedTokenSweepResponse {} +export interface MsgConfirmUnbondedTokenSweepResponseProtoMsg { + typeUrl: '/stride.staketia.MsgConfirmUnbondedTokenSweepResponse'; + value: Uint8Array; +} +export interface MsgConfirmUnbondedTokenSweepResponseSDKType {} +/** AdjustDelegatedBalance */ +export interface MsgAdjustDelegatedBalance { + operator: string; + delegationOffset: string; + validatorAddress: string; +} +export interface MsgAdjustDelegatedBalanceProtoMsg { + typeUrl: '/stride.staketia.MsgAdjustDelegatedBalance'; + value: Uint8Array; +} +/** AdjustDelegatedBalance */ +export interface MsgAdjustDelegatedBalanceSDKType { + operator: string; + delegation_offset: string; + validator_address: string; +} +export interface MsgAdjustDelegatedBalanceResponse {} +export interface MsgAdjustDelegatedBalanceResponseProtoMsg { + typeUrl: '/stride.staketia.MsgAdjustDelegatedBalanceResponse'; + value: Uint8Array; +} +export interface MsgAdjustDelegatedBalanceResponseSDKType {} +/** UpdateInnerRedemptionRate */ +export interface MsgUpdateInnerRedemptionRateBounds { + creator: string; + minInnerRedemptionRate: string; + maxInnerRedemptionRate: string; +} +export interface MsgUpdateInnerRedemptionRateBoundsProtoMsg { + typeUrl: '/stride.staketia.MsgUpdateInnerRedemptionRateBounds'; + value: Uint8Array; +} +/** UpdateInnerRedemptionRate */ +export interface MsgUpdateInnerRedemptionRateBoundsSDKType { + creator: string; + min_inner_redemption_rate: string; + max_inner_redemption_rate: string; +} +export interface MsgUpdateInnerRedemptionRateBoundsResponse {} +export interface MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg { + typeUrl: '/stride.staketia.MsgUpdateInnerRedemptionRateBoundsResponse'; + value: Uint8Array; +} +export interface MsgUpdateInnerRedemptionRateBoundsResponseSDKType {} +/** ResumeHostZone */ +export interface MsgResumeHostZone { + creator: string; +} +export interface MsgResumeHostZoneProtoMsg { + typeUrl: '/stride.staketia.MsgResumeHostZone'; + value: Uint8Array; +} +/** ResumeHostZone */ +export interface MsgResumeHostZoneSDKType { + creator: string; +} +export interface MsgResumeHostZoneResponse {} +export interface MsgResumeHostZoneResponseProtoMsg { + typeUrl: '/stride.staketia.MsgResumeHostZoneResponse'; + value: Uint8Array; +} +export interface MsgResumeHostZoneResponseSDKType {} +/** RefreshRedemptionRate */ +export interface MsgRefreshRedemptionRate { + creator: string; +} +export interface MsgRefreshRedemptionRateProtoMsg { + typeUrl: '/stride.staketia.MsgRefreshRedemptionRate'; + value: Uint8Array; +} +/** RefreshRedemptionRate */ +export interface MsgRefreshRedemptionRateSDKType { + creator: string; +} +export interface MsgRefreshRedemptionRateResponse {} +export interface MsgRefreshRedemptionRateResponseProtoMsg { + typeUrl: '/stride.staketia.MsgRefreshRedemptionRateResponse'; + value: Uint8Array; +} +export interface MsgRefreshRedemptionRateResponseSDKType {} +/** OverwriteDelegationRecord */ +export interface MsgOverwriteDelegationRecord { + creator: string; + delegationRecord?: DelegationRecord; +} +export interface MsgOverwriteDelegationRecordProtoMsg { + typeUrl: '/stride.staketia.MsgOverwriteDelegationRecord'; + value: Uint8Array; +} +/** OverwriteDelegationRecord */ +export interface MsgOverwriteDelegationRecordSDKType { + creator: string; + delegation_record?: DelegationRecordSDKType; +} +export interface MsgOverwriteDelegationRecordResponse {} +export interface MsgOverwriteDelegationRecordResponseProtoMsg { + typeUrl: '/stride.staketia.MsgOverwriteDelegationRecordResponse'; + value: Uint8Array; +} +export interface MsgOverwriteDelegationRecordResponseSDKType {} +/** OverwriteUnbondingRecord */ +export interface MsgOverwriteUnbondingRecord { + creator: string; + unbondingRecord?: UnbondingRecord; +} +export interface MsgOverwriteUnbondingRecordProtoMsg { + typeUrl: '/stride.staketia.MsgOverwriteUnbondingRecord'; + value: Uint8Array; +} +/** OverwriteUnbondingRecord */ +export interface MsgOverwriteUnbondingRecordSDKType { + creator: string; + unbonding_record?: UnbondingRecordSDKType; +} +export interface MsgOverwriteUnbondingRecordResponse {} +export interface MsgOverwriteUnbondingRecordResponseProtoMsg { + typeUrl: '/stride.staketia.MsgOverwriteUnbondingRecordResponse'; + value: Uint8Array; +} +export interface MsgOverwriteUnbondingRecordResponseSDKType {} +/** OverwriteRedemptionRecord */ +export interface MsgOverwriteRedemptionRecord { + creator: string; + redemptionRecord?: RedemptionRecord; +} +export interface MsgOverwriteRedemptionRecordProtoMsg { + typeUrl: '/stride.staketia.MsgOverwriteRedemptionRecord'; + value: Uint8Array; +} +/** OverwriteRedemptionRecord */ +export interface MsgOverwriteRedemptionRecordSDKType { + creator: string; + redemption_record?: RedemptionRecordSDKType; +} +export interface MsgOverwriteRedemptionRecordResponse {} +export interface MsgOverwriteRedemptionRecordResponseProtoMsg { + typeUrl: '/stride.staketia.MsgOverwriteRedemptionRecordResponse'; + value: Uint8Array; +} +export interface MsgOverwriteRedemptionRecordResponseSDKType {} +/** SetOperatorAddress */ +export interface MsgSetOperatorAddress { + signer: string; + operator: string; +} +export interface MsgSetOperatorAddressProtoMsg { + typeUrl: '/stride.staketia.MsgSetOperatorAddress'; + value: Uint8Array; +} +/** SetOperatorAddress */ +export interface MsgSetOperatorAddressSDKType { + signer: string; + operator: string; +} +export interface MsgSetOperatorAddressResponse {} +export interface MsgSetOperatorAddressResponseProtoMsg { + typeUrl: '/stride.staketia.MsgSetOperatorAddressResponse'; + value: Uint8Array; +} +export interface MsgSetOperatorAddressResponseSDKType {} +function createBaseMsgLiquidStake(): MsgLiquidStake { + return { + staker: '', + nativeAmount: '', + }; +} +export const MsgLiquidStake = { + typeUrl: '/stride.staketia.MsgLiquidStake', + encode( + message: MsgLiquidStake, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.staker !== '') { + writer.uint32(10).string(message.staker); + } + if (message.nativeAmount !== '') { + writer.uint32(18).string(message.nativeAmount); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgLiquidStake { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLiquidStake(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.staker = reader.string(); + break; + case 2: + message.nativeAmount = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLiquidStake { + return { + staker: isSet(object.staker) ? String(object.staker) : '', + nativeAmount: isSet(object.nativeAmount) + ? String(object.nativeAmount) + : '', + }; + }, + toJSON(message: MsgLiquidStake): JsonSafe { + const obj: any = {}; + message.staker !== undefined && (obj.staker = message.staker); + message.nativeAmount !== undefined && + (obj.nativeAmount = message.nativeAmount); + return obj; + }, + fromPartial(object: Partial): MsgLiquidStake { + const message = createBaseMsgLiquidStake(); + message.staker = object.staker ?? ''; + message.nativeAmount = object.nativeAmount ?? ''; + return message; + }, + fromProtoMsg(message: MsgLiquidStakeProtoMsg): MsgLiquidStake { + return MsgLiquidStake.decode(message.value); + }, + toProto(message: MsgLiquidStake): Uint8Array { + return MsgLiquidStake.encode(message).finish(); + }, + toProtoMsg(message: MsgLiquidStake): MsgLiquidStakeProtoMsg { + return { + typeUrl: '/stride.staketia.MsgLiquidStake', + value: MsgLiquidStake.encode(message).finish(), + }; + }, +}; +function createBaseMsgLiquidStakeResponse(): MsgLiquidStakeResponse { + return { + stToken: Coin.fromPartial({}), + }; +} +export const MsgLiquidStakeResponse = { + typeUrl: '/stride.staketia.MsgLiquidStakeResponse', + encode( + message: MsgLiquidStakeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.stToken !== undefined) { + Coin.encode(message.stToken, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgLiquidStakeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgLiquidStakeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.stToken = Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgLiquidStakeResponse { + return { + stToken: isSet(object.stToken) + ? Coin.fromJSON(object.stToken) + : undefined, + }; + }, + toJSON(message: MsgLiquidStakeResponse): JsonSafe { + const obj: any = {}; + message.stToken !== undefined && + (obj.stToken = message.stToken + ? Coin.toJSON(message.stToken) + : undefined); + return obj; + }, + fromPartial(object: Partial): MsgLiquidStakeResponse { + const message = createBaseMsgLiquidStakeResponse(); + message.stToken = + object.stToken !== undefined && object.stToken !== null + ? Coin.fromPartial(object.stToken) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgLiquidStakeResponseProtoMsg, + ): MsgLiquidStakeResponse { + return MsgLiquidStakeResponse.decode(message.value); + }, + toProto(message: MsgLiquidStakeResponse): Uint8Array { + return MsgLiquidStakeResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgLiquidStakeResponse): MsgLiquidStakeResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgLiquidStakeResponse', + value: MsgLiquidStakeResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRedeemStake(): MsgRedeemStake { + return { + redeemer: '', + stTokenAmount: '', + receiver: '', + }; +} +export const MsgRedeemStake = { + typeUrl: '/stride.staketia.MsgRedeemStake', + encode( + message: MsgRedeemStake, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.redeemer !== '') { + writer.uint32(10).string(message.redeemer); + } + if (message.stTokenAmount !== '') { + writer.uint32(18).string(message.stTokenAmount); + } + if (message.receiver !== '') { + writer.uint32(26).string(message.receiver); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgRedeemStake { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRedeemStake(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.redeemer = reader.string(); + break; + case 2: + message.stTokenAmount = reader.string(); + break; + case 3: + message.receiver = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRedeemStake { + return { + redeemer: isSet(object.redeemer) ? String(object.redeemer) : '', + stTokenAmount: isSet(object.stTokenAmount) + ? String(object.stTokenAmount) + : '', + receiver: isSet(object.receiver) ? String(object.receiver) : '', + }; + }, + toJSON(message: MsgRedeemStake): JsonSafe { + const obj: any = {}; + message.redeemer !== undefined && (obj.redeemer = message.redeemer); + message.stTokenAmount !== undefined && + (obj.stTokenAmount = message.stTokenAmount); + message.receiver !== undefined && (obj.receiver = message.receiver); + return obj; + }, + fromPartial(object: Partial): MsgRedeemStake { + const message = createBaseMsgRedeemStake(); + message.redeemer = object.redeemer ?? ''; + message.stTokenAmount = object.stTokenAmount ?? ''; + message.receiver = object.receiver ?? ''; + return message; + }, + fromProtoMsg(message: MsgRedeemStakeProtoMsg): MsgRedeemStake { + return MsgRedeemStake.decode(message.value); + }, + toProto(message: MsgRedeemStake): Uint8Array { + return MsgRedeemStake.encode(message).finish(); + }, + toProtoMsg(message: MsgRedeemStake): MsgRedeemStakeProtoMsg { + return { + typeUrl: '/stride.staketia.MsgRedeemStake', + value: MsgRedeemStake.encode(message).finish(), + }; + }, +}; +function createBaseMsgRedeemStakeResponse(): MsgRedeemStakeResponse { + return { + nativeToken: Coin.fromPartial({}), + }; +} +export const MsgRedeemStakeResponse = { + typeUrl: '/stride.staketia.MsgRedeemStakeResponse', + encode( + message: MsgRedeemStakeResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.nativeToken !== undefined) { + Coin.encode(message.nativeToken, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRedeemStakeResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRedeemStakeResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nativeToken = Coin.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRedeemStakeResponse { + return { + nativeToken: isSet(object.nativeToken) + ? Coin.fromJSON(object.nativeToken) + : undefined, + }; + }, + toJSON(message: MsgRedeemStakeResponse): JsonSafe { + const obj: any = {}; + message.nativeToken !== undefined && + (obj.nativeToken = message.nativeToken + ? Coin.toJSON(message.nativeToken) + : undefined); + return obj; + }, + fromPartial(object: Partial): MsgRedeemStakeResponse { + const message = createBaseMsgRedeemStakeResponse(); + message.nativeToken = + object.nativeToken !== undefined && object.nativeToken !== null + ? Coin.fromPartial(object.nativeToken) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgRedeemStakeResponseProtoMsg, + ): MsgRedeemStakeResponse { + return MsgRedeemStakeResponse.decode(message.value); + }, + toProto(message: MsgRedeemStakeResponse): Uint8Array { + return MsgRedeemStakeResponse.encode(message).finish(); + }, + toProtoMsg(message: MsgRedeemStakeResponse): MsgRedeemStakeResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgRedeemStakeResponse', + value: MsgRedeemStakeResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmDelegation(): MsgConfirmDelegation { + return { + operator: '', + recordId: BigInt(0), + txHash: '', + }; +} +export const MsgConfirmDelegation = { + typeUrl: '/stride.staketia.MsgConfirmDelegation', + encode( + message: MsgConfirmDelegation, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.operator !== '') { + writer.uint32(10).string(message.operator); + } + if (message.recordId !== BigInt(0)) { + writer.uint32(16).uint64(message.recordId); + } + if (message.txHash !== '') { + writer.uint32(26).string(message.txHash); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmDelegation { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmDelegation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.operator = reader.string(); + break; + case 2: + message.recordId = reader.uint64(); + break; + case 3: + message.txHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgConfirmDelegation { + return { + operator: isSet(object.operator) ? String(object.operator) : '', + recordId: isSet(object.recordId) + ? BigInt(object.recordId.toString()) + : BigInt(0), + txHash: isSet(object.txHash) ? String(object.txHash) : '', + }; + }, + toJSON(message: MsgConfirmDelegation): JsonSafe { + const obj: any = {}; + message.operator !== undefined && (obj.operator = message.operator); + message.recordId !== undefined && + (obj.recordId = (message.recordId || BigInt(0)).toString()); + message.txHash !== undefined && (obj.txHash = message.txHash); + return obj; + }, + fromPartial(object: Partial): MsgConfirmDelegation { + const message = createBaseMsgConfirmDelegation(); + message.operator = object.operator ?? ''; + message.recordId = + object.recordId !== undefined && object.recordId !== null + ? BigInt(object.recordId.toString()) + : BigInt(0); + message.txHash = object.txHash ?? ''; + return message; + }, + fromProtoMsg(message: MsgConfirmDelegationProtoMsg): MsgConfirmDelegation { + return MsgConfirmDelegation.decode(message.value); + }, + toProto(message: MsgConfirmDelegation): Uint8Array { + return MsgConfirmDelegation.encode(message).finish(); + }, + toProtoMsg(message: MsgConfirmDelegation): MsgConfirmDelegationProtoMsg { + return { + typeUrl: '/stride.staketia.MsgConfirmDelegation', + value: MsgConfirmDelegation.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmDelegationResponse(): MsgConfirmDelegationResponse { + return {}; +} +export const MsgConfirmDelegationResponse = { + typeUrl: '/stride.staketia.MsgConfirmDelegationResponse', + encode( + _: MsgConfirmDelegationResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmDelegationResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmDelegationResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgConfirmDelegationResponse { + return {}; + }, + toJSON( + _: MsgConfirmDelegationResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgConfirmDelegationResponse { + const message = createBaseMsgConfirmDelegationResponse(); + return message; + }, + fromProtoMsg( + message: MsgConfirmDelegationResponseProtoMsg, + ): MsgConfirmDelegationResponse { + return MsgConfirmDelegationResponse.decode(message.value); + }, + toProto(message: MsgConfirmDelegationResponse): Uint8Array { + return MsgConfirmDelegationResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgConfirmDelegationResponse, + ): MsgConfirmDelegationResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgConfirmDelegationResponse', + value: MsgConfirmDelegationResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmUndelegation(): MsgConfirmUndelegation { + return { + operator: '', + recordId: BigInt(0), + txHash: '', + }; +} +export const MsgConfirmUndelegation = { + typeUrl: '/stride.staketia.MsgConfirmUndelegation', + encode( + message: MsgConfirmUndelegation, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.operator !== '') { + writer.uint32(10).string(message.operator); + } + if (message.recordId !== BigInt(0)) { + writer.uint32(16).uint64(message.recordId); + } + if (message.txHash !== '') { + writer.uint32(26).string(message.txHash); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmUndelegation { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmUndelegation(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.operator = reader.string(); + break; + case 2: + message.recordId = reader.uint64(); + break; + case 3: + message.txHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgConfirmUndelegation { + return { + operator: isSet(object.operator) ? String(object.operator) : '', + recordId: isSet(object.recordId) + ? BigInt(object.recordId.toString()) + : BigInt(0), + txHash: isSet(object.txHash) ? String(object.txHash) : '', + }; + }, + toJSON(message: MsgConfirmUndelegation): JsonSafe { + const obj: any = {}; + message.operator !== undefined && (obj.operator = message.operator); + message.recordId !== undefined && + (obj.recordId = (message.recordId || BigInt(0)).toString()); + message.txHash !== undefined && (obj.txHash = message.txHash); + return obj; + }, + fromPartial(object: Partial): MsgConfirmUndelegation { + const message = createBaseMsgConfirmUndelegation(); + message.operator = object.operator ?? ''; + message.recordId = + object.recordId !== undefined && object.recordId !== null + ? BigInt(object.recordId.toString()) + : BigInt(0); + message.txHash = object.txHash ?? ''; + return message; + }, + fromProtoMsg( + message: MsgConfirmUndelegationProtoMsg, + ): MsgConfirmUndelegation { + return MsgConfirmUndelegation.decode(message.value); + }, + toProto(message: MsgConfirmUndelegation): Uint8Array { + return MsgConfirmUndelegation.encode(message).finish(); + }, + toProtoMsg(message: MsgConfirmUndelegation): MsgConfirmUndelegationProtoMsg { + return { + typeUrl: '/stride.staketia.MsgConfirmUndelegation', + value: MsgConfirmUndelegation.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmUndelegationResponse(): MsgConfirmUndelegationResponse { + return {}; +} +export const MsgConfirmUndelegationResponse = { + typeUrl: '/stride.staketia.MsgConfirmUndelegationResponse', + encode( + _: MsgConfirmUndelegationResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmUndelegationResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmUndelegationResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgConfirmUndelegationResponse { + return {}; + }, + toJSON( + _: MsgConfirmUndelegationResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgConfirmUndelegationResponse { + const message = createBaseMsgConfirmUndelegationResponse(); + return message; + }, + fromProtoMsg( + message: MsgConfirmUndelegationResponseProtoMsg, + ): MsgConfirmUndelegationResponse { + return MsgConfirmUndelegationResponse.decode(message.value); + }, + toProto(message: MsgConfirmUndelegationResponse): Uint8Array { + return MsgConfirmUndelegationResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgConfirmUndelegationResponse, + ): MsgConfirmUndelegationResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgConfirmUndelegationResponse', + value: MsgConfirmUndelegationResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmUnbondedTokenSweep(): MsgConfirmUnbondedTokenSweep { + return { + operator: '', + recordId: BigInt(0), + txHash: '', + }; +} +export const MsgConfirmUnbondedTokenSweep = { + typeUrl: '/stride.staketia.MsgConfirmUnbondedTokenSweep', + encode( + message: MsgConfirmUnbondedTokenSweep, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.operator !== '') { + writer.uint32(10).string(message.operator); + } + if (message.recordId !== BigInt(0)) { + writer.uint32(16).uint64(message.recordId); + } + if (message.txHash !== '') { + writer.uint32(26).string(message.txHash); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmUnbondedTokenSweep { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmUnbondedTokenSweep(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.operator = reader.string(); + break; + case 2: + message.recordId = reader.uint64(); + break; + case 3: + message.txHash = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgConfirmUnbondedTokenSweep { + return { + operator: isSet(object.operator) ? String(object.operator) : '', + recordId: isSet(object.recordId) + ? BigInt(object.recordId.toString()) + : BigInt(0), + txHash: isSet(object.txHash) ? String(object.txHash) : '', + }; + }, + toJSON( + message: MsgConfirmUnbondedTokenSweep, + ): JsonSafe { + const obj: any = {}; + message.operator !== undefined && (obj.operator = message.operator); + message.recordId !== undefined && + (obj.recordId = (message.recordId || BigInt(0)).toString()); + message.txHash !== undefined && (obj.txHash = message.txHash); + return obj; + }, + fromPartial( + object: Partial, + ): MsgConfirmUnbondedTokenSweep { + const message = createBaseMsgConfirmUnbondedTokenSweep(); + message.operator = object.operator ?? ''; + message.recordId = + object.recordId !== undefined && object.recordId !== null + ? BigInt(object.recordId.toString()) + : BigInt(0); + message.txHash = object.txHash ?? ''; + return message; + }, + fromProtoMsg( + message: MsgConfirmUnbondedTokenSweepProtoMsg, + ): MsgConfirmUnbondedTokenSweep { + return MsgConfirmUnbondedTokenSweep.decode(message.value); + }, + toProto(message: MsgConfirmUnbondedTokenSweep): Uint8Array { + return MsgConfirmUnbondedTokenSweep.encode(message).finish(); + }, + toProtoMsg( + message: MsgConfirmUnbondedTokenSweep, + ): MsgConfirmUnbondedTokenSweepProtoMsg { + return { + typeUrl: '/stride.staketia.MsgConfirmUnbondedTokenSweep', + value: MsgConfirmUnbondedTokenSweep.encode(message).finish(), + }; + }, +}; +function createBaseMsgConfirmUnbondedTokenSweepResponse(): MsgConfirmUnbondedTokenSweepResponse { + return {}; +} +export const MsgConfirmUnbondedTokenSweepResponse = { + typeUrl: '/stride.staketia.MsgConfirmUnbondedTokenSweepResponse', + encode( + _: MsgConfirmUnbondedTokenSweepResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgConfirmUnbondedTokenSweepResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgConfirmUnbondedTokenSweepResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgConfirmUnbondedTokenSweepResponse { + return {}; + }, + toJSON( + _: MsgConfirmUnbondedTokenSweepResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgConfirmUnbondedTokenSweepResponse { + const message = createBaseMsgConfirmUnbondedTokenSweepResponse(); + return message; + }, + fromProtoMsg( + message: MsgConfirmUnbondedTokenSweepResponseProtoMsg, + ): MsgConfirmUnbondedTokenSweepResponse { + return MsgConfirmUnbondedTokenSweepResponse.decode(message.value); + }, + toProto(message: MsgConfirmUnbondedTokenSweepResponse): Uint8Array { + return MsgConfirmUnbondedTokenSweepResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgConfirmUnbondedTokenSweepResponse, + ): MsgConfirmUnbondedTokenSweepResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgConfirmUnbondedTokenSweepResponse', + value: MsgConfirmUnbondedTokenSweepResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgAdjustDelegatedBalance(): MsgAdjustDelegatedBalance { + return { + operator: '', + delegationOffset: '', + validatorAddress: '', + }; +} +export const MsgAdjustDelegatedBalance = { + typeUrl: '/stride.staketia.MsgAdjustDelegatedBalance', + encode( + message: MsgAdjustDelegatedBalance, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.operator !== '') { + writer.uint32(10).string(message.operator); + } + if (message.delegationOffset !== '') { + writer.uint32(18).string(message.delegationOffset); + } + if (message.validatorAddress !== '') { + writer.uint32(26).string(message.validatorAddress); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgAdjustDelegatedBalance { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAdjustDelegatedBalance(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.operator = reader.string(); + break; + case 2: + message.delegationOffset = reader.string(); + break; + case 3: + message.validatorAddress = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgAdjustDelegatedBalance { + return { + operator: isSet(object.operator) ? String(object.operator) : '', + delegationOffset: isSet(object.delegationOffset) + ? String(object.delegationOffset) + : '', + validatorAddress: isSet(object.validatorAddress) + ? String(object.validatorAddress) + : '', + }; + }, + toJSON( + message: MsgAdjustDelegatedBalance, + ): JsonSafe { + const obj: any = {}; + message.operator !== undefined && (obj.operator = message.operator); + message.delegationOffset !== undefined && + (obj.delegationOffset = message.delegationOffset); + message.validatorAddress !== undefined && + (obj.validatorAddress = message.validatorAddress); + return obj; + }, + fromPartial( + object: Partial, + ): MsgAdjustDelegatedBalance { + const message = createBaseMsgAdjustDelegatedBalance(); + message.operator = object.operator ?? ''; + message.delegationOffset = object.delegationOffset ?? ''; + message.validatorAddress = object.validatorAddress ?? ''; + return message; + }, + fromProtoMsg( + message: MsgAdjustDelegatedBalanceProtoMsg, + ): MsgAdjustDelegatedBalance { + return MsgAdjustDelegatedBalance.decode(message.value); + }, + toProto(message: MsgAdjustDelegatedBalance): Uint8Array { + return MsgAdjustDelegatedBalance.encode(message).finish(); + }, + toProtoMsg( + message: MsgAdjustDelegatedBalance, + ): MsgAdjustDelegatedBalanceProtoMsg { + return { + typeUrl: '/stride.staketia.MsgAdjustDelegatedBalance', + value: MsgAdjustDelegatedBalance.encode(message).finish(), + }; + }, +}; +function createBaseMsgAdjustDelegatedBalanceResponse(): MsgAdjustDelegatedBalanceResponse { + return {}; +} +export const MsgAdjustDelegatedBalanceResponse = { + typeUrl: '/stride.staketia.MsgAdjustDelegatedBalanceResponse', + encode( + _: MsgAdjustDelegatedBalanceResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgAdjustDelegatedBalanceResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgAdjustDelegatedBalanceResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgAdjustDelegatedBalanceResponse { + return {}; + }, + toJSON( + _: MsgAdjustDelegatedBalanceResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgAdjustDelegatedBalanceResponse { + const message = createBaseMsgAdjustDelegatedBalanceResponse(); + return message; + }, + fromProtoMsg( + message: MsgAdjustDelegatedBalanceResponseProtoMsg, + ): MsgAdjustDelegatedBalanceResponse { + return MsgAdjustDelegatedBalanceResponse.decode(message.value); + }, + toProto(message: MsgAdjustDelegatedBalanceResponse): Uint8Array { + return MsgAdjustDelegatedBalanceResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgAdjustDelegatedBalanceResponse, + ): MsgAdjustDelegatedBalanceResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgAdjustDelegatedBalanceResponse', + value: MsgAdjustDelegatedBalanceResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateInnerRedemptionRateBounds(): MsgUpdateInnerRedemptionRateBounds { + return { + creator: '', + minInnerRedemptionRate: '', + maxInnerRedemptionRate: '', + }; +} +export const MsgUpdateInnerRedemptionRateBounds = { + typeUrl: '/stride.staketia.MsgUpdateInnerRedemptionRateBounds', + encode( + message: MsgUpdateInnerRedemptionRateBounds, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.minInnerRedemptionRate !== '') { + writer + .uint32(18) + .string( + Decimal.fromUserInput(message.minInnerRedemptionRate, 18).atomics, + ); + } + if (message.maxInnerRedemptionRate !== '') { + writer + .uint32(26) + .string( + Decimal.fromUserInput(message.maxInnerRedemptionRate, 18).atomics, + ); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateInnerRedemptionRateBounds { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateInnerRedemptionRateBounds(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.minInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + case 3: + message.maxInnerRedemptionRate = Decimal.fromAtomics( + reader.string(), + 18, + ).toString(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgUpdateInnerRedemptionRateBounds { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + minInnerRedemptionRate: isSet(object.minInnerRedemptionRate) + ? String(object.minInnerRedemptionRate) + : '', + maxInnerRedemptionRate: isSet(object.maxInnerRedemptionRate) + ? String(object.maxInnerRedemptionRate) + : '', + }; + }, + toJSON( + message: MsgUpdateInnerRedemptionRateBounds, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.minInnerRedemptionRate !== undefined && + (obj.minInnerRedemptionRate = message.minInnerRedemptionRate); + message.maxInnerRedemptionRate !== undefined && + (obj.maxInnerRedemptionRate = message.maxInnerRedemptionRate); + return obj; + }, + fromPartial( + object: Partial, + ): MsgUpdateInnerRedemptionRateBounds { + const message = createBaseMsgUpdateInnerRedemptionRateBounds(); + message.creator = object.creator ?? ''; + message.minInnerRedemptionRate = object.minInnerRedemptionRate ?? ''; + message.maxInnerRedemptionRate = object.maxInnerRedemptionRate ?? ''; + return message; + }, + fromProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsProtoMsg, + ): MsgUpdateInnerRedemptionRateBounds { + return MsgUpdateInnerRedemptionRateBounds.decode(message.value); + }, + toProto(message: MsgUpdateInnerRedemptionRateBounds): Uint8Array { + return MsgUpdateInnerRedemptionRateBounds.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateInnerRedemptionRateBounds, + ): MsgUpdateInnerRedemptionRateBoundsProtoMsg { + return { + typeUrl: '/stride.staketia.MsgUpdateInnerRedemptionRateBounds', + value: MsgUpdateInnerRedemptionRateBounds.encode(message).finish(), + }; + }, +}; +function createBaseMsgUpdateInnerRedemptionRateBoundsResponse(): MsgUpdateInnerRedemptionRateBoundsResponse { + return {}; +} +export const MsgUpdateInnerRedemptionRateBoundsResponse = { + typeUrl: '/stride.staketia.MsgUpdateInnerRedemptionRateBoundsResponse', + encode( + _: MsgUpdateInnerRedemptionRateBoundsResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgUpdateInnerRedemptionRateBoundsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgUpdateInnerRedemptionRateBoundsResponse { + return {}; + }, + toJSON( + _: MsgUpdateInnerRedemptionRateBoundsResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + const message = createBaseMsgUpdateInnerRedemptionRateBoundsResponse(); + return message; + }, + fromProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg, + ): MsgUpdateInnerRedemptionRateBoundsResponse { + return MsgUpdateInnerRedemptionRateBoundsResponse.decode(message.value); + }, + toProto(message: MsgUpdateInnerRedemptionRateBoundsResponse): Uint8Array { + return MsgUpdateInnerRedemptionRateBoundsResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgUpdateInnerRedemptionRateBoundsResponse, + ): MsgUpdateInnerRedemptionRateBoundsResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgUpdateInnerRedemptionRateBoundsResponse', + value: + MsgUpdateInnerRedemptionRateBoundsResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgResumeHostZone(): MsgResumeHostZone { + return { + creator: '', + }; +} +export const MsgResumeHostZone = { + typeUrl: '/stride.staketia.MsgResumeHostZone', + encode( + message: MsgResumeHostZone, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + return writer; + }, + decode(input: BinaryReader | Uint8Array, length?: number): MsgResumeHostZone { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgResumeHostZone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgResumeHostZone { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + }; + }, + toJSON(message: MsgResumeHostZone): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + return obj; + }, + fromPartial(object: Partial): MsgResumeHostZone { + const message = createBaseMsgResumeHostZone(); + message.creator = object.creator ?? ''; + return message; + }, + fromProtoMsg(message: MsgResumeHostZoneProtoMsg): MsgResumeHostZone { + return MsgResumeHostZone.decode(message.value); + }, + toProto(message: MsgResumeHostZone): Uint8Array { + return MsgResumeHostZone.encode(message).finish(); + }, + toProtoMsg(message: MsgResumeHostZone): MsgResumeHostZoneProtoMsg { + return { + typeUrl: '/stride.staketia.MsgResumeHostZone', + value: MsgResumeHostZone.encode(message).finish(), + }; + }, +}; +function createBaseMsgResumeHostZoneResponse(): MsgResumeHostZoneResponse { + return {}; +} +export const MsgResumeHostZoneResponse = { + typeUrl: '/stride.staketia.MsgResumeHostZoneResponse', + encode( + _: MsgResumeHostZoneResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgResumeHostZoneResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgResumeHostZoneResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgResumeHostZoneResponse { + return {}; + }, + toJSON(_: MsgResumeHostZoneResponse): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgResumeHostZoneResponse { + const message = createBaseMsgResumeHostZoneResponse(); + return message; + }, + fromProtoMsg( + message: MsgResumeHostZoneResponseProtoMsg, + ): MsgResumeHostZoneResponse { + return MsgResumeHostZoneResponse.decode(message.value); + }, + toProto(message: MsgResumeHostZoneResponse): Uint8Array { + return MsgResumeHostZoneResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgResumeHostZoneResponse, + ): MsgResumeHostZoneResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgResumeHostZoneResponse', + value: MsgResumeHostZoneResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgRefreshRedemptionRate(): MsgRefreshRedemptionRate { + return { + creator: '', + }; +} +export const MsgRefreshRedemptionRate = { + typeUrl: '/stride.staketia.MsgRefreshRedemptionRate', + encode( + message: MsgRefreshRedemptionRate, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRefreshRedemptionRate { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRefreshRedemptionRate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgRefreshRedemptionRate { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + }; + }, + toJSON( + message: MsgRefreshRedemptionRate, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + return obj; + }, + fromPartial( + object: Partial, + ): MsgRefreshRedemptionRate { + const message = createBaseMsgRefreshRedemptionRate(); + message.creator = object.creator ?? ''; + return message; + }, + fromProtoMsg( + message: MsgRefreshRedemptionRateProtoMsg, + ): MsgRefreshRedemptionRate { + return MsgRefreshRedemptionRate.decode(message.value); + }, + toProto(message: MsgRefreshRedemptionRate): Uint8Array { + return MsgRefreshRedemptionRate.encode(message).finish(); + }, + toProtoMsg( + message: MsgRefreshRedemptionRate, + ): MsgRefreshRedemptionRateProtoMsg { + return { + typeUrl: '/stride.staketia.MsgRefreshRedemptionRate', + value: MsgRefreshRedemptionRate.encode(message).finish(), + }; + }, +}; +function createBaseMsgRefreshRedemptionRateResponse(): MsgRefreshRedemptionRateResponse { + return {}; +} +export const MsgRefreshRedemptionRateResponse = { + typeUrl: '/stride.staketia.MsgRefreshRedemptionRateResponse', + encode( + _: MsgRefreshRedemptionRateResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgRefreshRedemptionRateResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgRefreshRedemptionRateResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgRefreshRedemptionRateResponse { + return {}; + }, + toJSON( + _: MsgRefreshRedemptionRateResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgRefreshRedemptionRateResponse { + const message = createBaseMsgRefreshRedemptionRateResponse(); + return message; + }, + fromProtoMsg( + message: MsgRefreshRedemptionRateResponseProtoMsg, + ): MsgRefreshRedemptionRateResponse { + return MsgRefreshRedemptionRateResponse.decode(message.value); + }, + toProto(message: MsgRefreshRedemptionRateResponse): Uint8Array { + return MsgRefreshRedemptionRateResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgRefreshRedemptionRateResponse, + ): MsgRefreshRedemptionRateResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgRefreshRedemptionRateResponse', + value: MsgRefreshRedemptionRateResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteDelegationRecord(): MsgOverwriteDelegationRecord { + return { + creator: '', + delegationRecord: undefined, + }; +} +export const MsgOverwriteDelegationRecord = { + typeUrl: '/stride.staketia.MsgOverwriteDelegationRecord', + encode( + message: MsgOverwriteDelegationRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.delegationRecord !== undefined) { + DelegationRecord.encode( + message.delegationRecord, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteDelegationRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteDelegationRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.delegationRecord = DelegationRecord.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgOverwriteDelegationRecord { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + delegationRecord: isSet(object.delegationRecord) + ? DelegationRecord.fromJSON(object.delegationRecord) + : undefined, + }; + }, + toJSON( + message: MsgOverwriteDelegationRecord, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.delegationRecord !== undefined && + (obj.delegationRecord = message.delegationRecord + ? DelegationRecord.toJSON(message.delegationRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): MsgOverwriteDelegationRecord { + const message = createBaseMsgOverwriteDelegationRecord(); + message.creator = object.creator ?? ''; + message.delegationRecord = + object.delegationRecord !== undefined && object.delegationRecord !== null + ? DelegationRecord.fromPartial(object.delegationRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgOverwriteDelegationRecordProtoMsg, + ): MsgOverwriteDelegationRecord { + return MsgOverwriteDelegationRecord.decode(message.value); + }, + toProto(message: MsgOverwriteDelegationRecord): Uint8Array { + return MsgOverwriteDelegationRecord.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteDelegationRecord, + ): MsgOverwriteDelegationRecordProtoMsg { + return { + typeUrl: '/stride.staketia.MsgOverwriteDelegationRecord', + value: MsgOverwriteDelegationRecord.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteDelegationRecordResponse(): MsgOverwriteDelegationRecordResponse { + return {}; +} +export const MsgOverwriteDelegationRecordResponse = { + typeUrl: '/stride.staketia.MsgOverwriteDelegationRecordResponse', + encode( + _: MsgOverwriteDelegationRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteDelegationRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteDelegationRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgOverwriteDelegationRecordResponse { + return {}; + }, + toJSON( + _: MsgOverwriteDelegationRecordResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgOverwriteDelegationRecordResponse { + const message = createBaseMsgOverwriteDelegationRecordResponse(); + return message; + }, + fromProtoMsg( + message: MsgOverwriteDelegationRecordResponseProtoMsg, + ): MsgOverwriteDelegationRecordResponse { + return MsgOverwriteDelegationRecordResponse.decode(message.value); + }, + toProto(message: MsgOverwriteDelegationRecordResponse): Uint8Array { + return MsgOverwriteDelegationRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteDelegationRecordResponse, + ): MsgOverwriteDelegationRecordResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgOverwriteDelegationRecordResponse', + value: MsgOverwriteDelegationRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteUnbondingRecord(): MsgOverwriteUnbondingRecord { + return { + creator: '', + unbondingRecord: undefined, + }; +} +export const MsgOverwriteUnbondingRecord = { + typeUrl: '/stride.staketia.MsgOverwriteUnbondingRecord', + encode( + message: MsgOverwriteUnbondingRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.unbondingRecord !== undefined) { + UnbondingRecord.encode( + message.unbondingRecord, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteUnbondingRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteUnbondingRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.unbondingRecord = UnbondingRecord.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgOverwriteUnbondingRecord { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + unbondingRecord: isSet(object.unbondingRecord) + ? UnbondingRecord.fromJSON(object.unbondingRecord) + : undefined, + }; + }, + toJSON( + message: MsgOverwriteUnbondingRecord, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.unbondingRecord !== undefined && + (obj.unbondingRecord = message.unbondingRecord + ? UnbondingRecord.toJSON(message.unbondingRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): MsgOverwriteUnbondingRecord { + const message = createBaseMsgOverwriteUnbondingRecord(); + message.creator = object.creator ?? ''; + message.unbondingRecord = + object.unbondingRecord !== undefined && object.unbondingRecord !== null + ? UnbondingRecord.fromPartial(object.unbondingRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgOverwriteUnbondingRecordProtoMsg, + ): MsgOverwriteUnbondingRecord { + return MsgOverwriteUnbondingRecord.decode(message.value); + }, + toProto(message: MsgOverwriteUnbondingRecord): Uint8Array { + return MsgOverwriteUnbondingRecord.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteUnbondingRecord, + ): MsgOverwriteUnbondingRecordProtoMsg { + return { + typeUrl: '/stride.staketia.MsgOverwriteUnbondingRecord', + value: MsgOverwriteUnbondingRecord.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteUnbondingRecordResponse(): MsgOverwriteUnbondingRecordResponse { + return {}; +} +export const MsgOverwriteUnbondingRecordResponse = { + typeUrl: '/stride.staketia.MsgOverwriteUnbondingRecordResponse', + encode( + _: MsgOverwriteUnbondingRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteUnbondingRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteUnbondingRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgOverwriteUnbondingRecordResponse { + return {}; + }, + toJSON( + _: MsgOverwriteUnbondingRecordResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgOverwriteUnbondingRecordResponse { + const message = createBaseMsgOverwriteUnbondingRecordResponse(); + return message; + }, + fromProtoMsg( + message: MsgOverwriteUnbondingRecordResponseProtoMsg, + ): MsgOverwriteUnbondingRecordResponse { + return MsgOverwriteUnbondingRecordResponse.decode(message.value); + }, + toProto(message: MsgOverwriteUnbondingRecordResponse): Uint8Array { + return MsgOverwriteUnbondingRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteUnbondingRecordResponse, + ): MsgOverwriteUnbondingRecordResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgOverwriteUnbondingRecordResponse', + value: MsgOverwriteUnbondingRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteRedemptionRecord(): MsgOverwriteRedemptionRecord { + return { + creator: '', + redemptionRecord: undefined, + }; +} +export const MsgOverwriteRedemptionRecord = { + typeUrl: '/stride.staketia.MsgOverwriteRedemptionRecord', + encode( + message: MsgOverwriteRedemptionRecord, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.creator !== '') { + writer.uint32(10).string(message.creator); + } + if (message.redemptionRecord !== undefined) { + RedemptionRecord.encode( + message.redemptionRecord, + writer.uint32(18).fork(), + ).ldelim(); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteRedemptionRecord { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteRedemptionRecord(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.creator = reader.string(); + break; + case 2: + message.redemptionRecord = RedemptionRecord.decode( + reader, + reader.uint32(), + ); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgOverwriteRedemptionRecord { + return { + creator: isSet(object.creator) ? String(object.creator) : '', + redemptionRecord: isSet(object.redemptionRecord) + ? RedemptionRecord.fromJSON(object.redemptionRecord) + : undefined, + }; + }, + toJSON( + message: MsgOverwriteRedemptionRecord, + ): JsonSafe { + const obj: any = {}; + message.creator !== undefined && (obj.creator = message.creator); + message.redemptionRecord !== undefined && + (obj.redemptionRecord = message.redemptionRecord + ? RedemptionRecord.toJSON(message.redemptionRecord) + : undefined); + return obj; + }, + fromPartial( + object: Partial, + ): MsgOverwriteRedemptionRecord { + const message = createBaseMsgOverwriteRedemptionRecord(); + message.creator = object.creator ?? ''; + message.redemptionRecord = + object.redemptionRecord !== undefined && object.redemptionRecord !== null + ? RedemptionRecord.fromPartial(object.redemptionRecord) + : undefined; + return message; + }, + fromProtoMsg( + message: MsgOverwriteRedemptionRecordProtoMsg, + ): MsgOverwriteRedemptionRecord { + return MsgOverwriteRedemptionRecord.decode(message.value); + }, + toProto(message: MsgOverwriteRedemptionRecord): Uint8Array { + return MsgOverwriteRedemptionRecord.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteRedemptionRecord, + ): MsgOverwriteRedemptionRecordProtoMsg { + return { + typeUrl: '/stride.staketia.MsgOverwriteRedemptionRecord', + value: MsgOverwriteRedemptionRecord.encode(message).finish(), + }; + }, +}; +function createBaseMsgOverwriteRedemptionRecordResponse(): MsgOverwriteRedemptionRecordResponse { + return {}; +} +export const MsgOverwriteRedemptionRecordResponse = { + typeUrl: '/stride.staketia.MsgOverwriteRedemptionRecordResponse', + encode( + _: MsgOverwriteRedemptionRecordResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgOverwriteRedemptionRecordResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgOverwriteRedemptionRecordResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgOverwriteRedemptionRecordResponse { + return {}; + }, + toJSON( + _: MsgOverwriteRedemptionRecordResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgOverwriteRedemptionRecordResponse { + const message = createBaseMsgOverwriteRedemptionRecordResponse(); + return message; + }, + fromProtoMsg( + message: MsgOverwriteRedemptionRecordResponseProtoMsg, + ): MsgOverwriteRedemptionRecordResponse { + return MsgOverwriteRedemptionRecordResponse.decode(message.value); + }, + toProto(message: MsgOverwriteRedemptionRecordResponse): Uint8Array { + return MsgOverwriteRedemptionRecordResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgOverwriteRedemptionRecordResponse, + ): MsgOverwriteRedemptionRecordResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgOverwriteRedemptionRecordResponse', + value: MsgOverwriteRedemptionRecordResponse.encode(message).finish(), + }; + }, +}; +function createBaseMsgSetOperatorAddress(): MsgSetOperatorAddress { + return { + signer: '', + operator: '', + }; +} +export const MsgSetOperatorAddress = { + typeUrl: '/stride.staketia.MsgSetOperatorAddress', + encode( + message: MsgSetOperatorAddress, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + if (message.signer !== '') { + writer.uint32(10).string(message.signer); + } + if (message.operator !== '') { + writer.uint32(18).string(message.operator); + } + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSetOperatorAddress { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSetOperatorAddress(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.signer = reader.string(); + break; + case 2: + message.operator = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(object: any): MsgSetOperatorAddress { + return { + signer: isSet(object.signer) ? String(object.signer) : '', + operator: isSet(object.operator) ? String(object.operator) : '', + }; + }, + toJSON(message: MsgSetOperatorAddress): JsonSafe { + const obj: any = {}; + message.signer !== undefined && (obj.signer = message.signer); + message.operator !== undefined && (obj.operator = message.operator); + return obj; + }, + fromPartial(object: Partial): MsgSetOperatorAddress { + const message = createBaseMsgSetOperatorAddress(); + message.signer = object.signer ?? ''; + message.operator = object.operator ?? ''; + return message; + }, + fromProtoMsg(message: MsgSetOperatorAddressProtoMsg): MsgSetOperatorAddress { + return MsgSetOperatorAddress.decode(message.value); + }, + toProto(message: MsgSetOperatorAddress): Uint8Array { + return MsgSetOperatorAddress.encode(message).finish(); + }, + toProtoMsg(message: MsgSetOperatorAddress): MsgSetOperatorAddressProtoMsg { + return { + typeUrl: '/stride.staketia.MsgSetOperatorAddress', + value: MsgSetOperatorAddress.encode(message).finish(), + }; + }, +}; +function createBaseMsgSetOperatorAddressResponse(): MsgSetOperatorAddressResponse { + return {}; +} +export const MsgSetOperatorAddressResponse = { + typeUrl: '/stride.staketia.MsgSetOperatorAddressResponse', + encode( + _: MsgSetOperatorAddressResponse, + writer: BinaryWriter = BinaryWriter.create(), + ): BinaryWriter { + return writer; + }, + decode( + input: BinaryReader | Uint8Array, + length?: number, + ): MsgSetOperatorAddressResponse { + const reader = + input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseMsgSetOperatorAddressResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }, + fromJSON(_: any): MsgSetOperatorAddressResponse { + return {}; + }, + toJSON( + _: MsgSetOperatorAddressResponse, + ): JsonSafe { + const obj: any = {}; + return obj; + }, + fromPartial( + _: Partial, + ): MsgSetOperatorAddressResponse { + const message = createBaseMsgSetOperatorAddressResponse(); + return message; + }, + fromProtoMsg( + message: MsgSetOperatorAddressResponseProtoMsg, + ): MsgSetOperatorAddressResponse { + return MsgSetOperatorAddressResponse.decode(message.value); + }, + toProto(message: MsgSetOperatorAddressResponse): Uint8Array { + return MsgSetOperatorAddressResponse.encode(message).finish(); + }, + toProtoMsg( + message: MsgSetOperatorAddressResponse, + ): MsgSetOperatorAddressResponseProtoMsg { + return { + typeUrl: '/stride.staketia.MsgSetOperatorAddressResponse', + value: MsgSetOperatorAddressResponse.encode(message).finish(), + }; + }, +}; diff --git a/packages/cosmic-proto/src/codegen/tendermint/bundle.ts b/packages/cosmic-proto/src/codegen/tendermint/bundle.ts index 48cdbb29f8b..af5da29ec0e 100644 --- a/packages/cosmic-proto/src/codegen/tendermint/bundle.ts +++ b/packages/cosmic-proto/src/codegen/tendermint/bundle.ts @@ -1,39 +1,39 @@ //@ts-nocheck -import * as _140 from './abci/types.js'; -import * as _141 from './crypto/keys.js'; -import * as _142 from './crypto/proof.js'; -import * as _143 from './libs/bits/types.js'; -import * as _144 from './p2p/types.js'; -import * as _145 from './types/block.js'; -import * as _146 from './types/evidence.js'; -import * as _147 from './types/params.js'; -import * as _148 from './types/types.js'; -import * as _149 from './types/validator.js'; -import * as _150 from './version/types.js'; +import * as _168 from './abci/types.js'; +import * as _169 from './crypto/keys.js'; +import * as _170 from './crypto/proof.js'; +import * as _171 from './libs/bits/types.js'; +import * as _172 from './p2p/types.js'; +import * as _173 from './types/block.js'; +import * as _174 from './types/evidence.js'; +import * as _175 from './types/params.js'; +import * as _176 from './types/types.js'; +import * as _177 from './types/validator.js'; +import * as _178 from './version/types.js'; export namespace tendermint { export const abci = { - ..._140, + ..._168, }; export const crypto = { - ..._141, - ..._142, + ..._169, + ..._170, }; export namespace libs { export const bits = { - ..._143, + ..._171, }; } export const p2p = { - ..._144, + ..._172, }; export const types = { - ..._145, - ..._146, - ..._147, - ..._148, - ..._149, + ..._173, + ..._174, + ..._175, + ..._176, + ..._177, }; export const version = { - ..._150, + ..._178, }; }