import { MemberRequest, MemberRequestSDKType, VoteOption, ProposalExecutorResult } from "./types"; import { Any, AnySDKType } from "../../../google/protobuf/any"; import * as _m0 from "protobufjs/minimal"; import { DeepPartial, Long } from "../../../helpers"; /** Exec defines modes of execution of a proposal on creation or on new vote. */ export enum Exec { /** * EXEC_UNSPECIFIED - An empty value means that there should be a separate * MsgExec request for the proposal to execute. */ EXEC_UNSPECIFIED = 0, /** * EXEC_TRY - Try to execute the proposal immediately. * If the proposal is not allowed per the DecisionPolicy, * the proposal will still be open and could * be executed at a later point. */ EXEC_TRY = 1, UNRECOGNIZED = -1, } export const ExecSDKType = Exec; export function execFromJSON(object: any): Exec { switch (object) { case 0: case "EXEC_UNSPECIFIED": return Exec.EXEC_UNSPECIFIED; case 1: case "EXEC_TRY": return Exec.EXEC_TRY; case -1: case "UNRECOGNIZED": default: return Exec.UNRECOGNIZED; } } export function execToJSON(object: Exec): string { switch (object) { case Exec.EXEC_UNSPECIFIED: return "EXEC_UNSPECIFIED"; case Exec.EXEC_TRY: return "EXEC_TRY"; case Exec.UNRECOGNIZED: default: return "UNRECOGNIZED"; } } /** MsgCreateGroup is the Msg/CreateGroup request type. */ export interface MsgCreateGroup { /** admin is the account address of the group admin. */ admin: string; /** members defines the group members. */ members: MemberRequest[]; /** metadata is any arbitrary metadata to attached to the group. */ metadata: string; } /** MsgCreateGroup is the Msg/CreateGroup request type. */ export interface MsgCreateGroupSDKType { admin: string; members: MemberRequestSDKType[]; metadata: string; } /** MsgCreateGroupResponse is the Msg/CreateGroup response type. */ export interface MsgCreateGroupResponse { /** group_id is the unique ID of the newly created group. */ groupId: Long; } /** MsgCreateGroupResponse is the Msg/CreateGroup response type. */ export interface MsgCreateGroupResponseSDKType { group_id: Long; } /** MsgUpdateGroupMembers is the Msg/UpdateGroupMembers request type. */ export interface MsgUpdateGroupMembers { /** admin is the account address of the group admin. */ admin: string; /** group_id is the unique ID of the group. */ groupId: Long; /** * member_updates is the list of members to update, * set weight to 0 to remove a member. */ memberUpdates: MemberRequest[]; } /** MsgUpdateGroupMembers is the Msg/UpdateGroupMembers request type. */ export interface MsgUpdateGroupMembersSDKType { admin: string; group_id: Long; member_updates: MemberRequestSDKType[]; } /** MsgUpdateGroupMembersResponse is the Msg/UpdateGroupMembers response type. */ export interface MsgUpdateGroupMembersResponse {} /** MsgUpdateGroupMembersResponse is the Msg/UpdateGroupMembers response type. */ export interface MsgUpdateGroupMembersResponseSDKType {} /** MsgUpdateGroupAdmin is the Msg/UpdateGroupAdmin request type. */ export interface MsgUpdateGroupAdmin { /** admin is the current account address of the group admin. */ admin: string; /** group_id is the unique ID of the group. */ groupId: Long; /** new_admin is the group new admin account address. */ newAdmin: string; } /** MsgUpdateGroupAdmin is the Msg/UpdateGroupAdmin request type. */ export interface MsgUpdateGroupAdminSDKType { admin: string; group_id: Long; new_admin: string; } /** MsgUpdateGroupAdminResponse is the Msg/UpdateGroupAdmin response type. */ export interface MsgUpdateGroupAdminResponse {} /** MsgUpdateGroupAdminResponse is the Msg/UpdateGroupAdmin response type. */ export interface MsgUpdateGroupAdminResponseSDKType {} /** MsgUpdateGroupMetadata is the Msg/UpdateGroupMetadata request type. */ export interface MsgUpdateGroupMetadata { /** admin is the account address of the group admin. */ admin: string; /** group_id is the unique ID of the group. */ groupId: Long; /** metadata is the updated group's metadata. */ metadata: string; } /** MsgUpdateGroupMetadata is the Msg/UpdateGroupMetadata request type. */ export interface MsgUpdateGroupMetadataSDKType { admin: string; group_id: Long; metadata: string; } /** MsgUpdateGroupMetadataResponse is the Msg/UpdateGroupMetadata response type. */ export interface MsgUpdateGroupMetadataResponse {} /** MsgUpdateGroupMetadataResponse is the Msg/UpdateGroupMetadata response type. */ export interface MsgUpdateGroupMetadataResponseSDKType {} /** MsgCreateGroupPolicy is the Msg/CreateGroupPolicy request type. */ export interface MsgCreateGroupPolicy { /** admin is the account address of the group admin. */ admin: string; /** group_id is the unique ID of the group. */ groupId: Long; /** metadata is any arbitrary metadata attached to the group policy. */ metadata: string; /** decision_policy specifies the group policy's decision policy. */ decisionPolicy?: Any; } /** MsgCreateGroupPolicy is the Msg/CreateGroupPolicy request type. */ export interface MsgCreateGroupPolicySDKType { admin: string; group_id: Long; metadata: string; decision_policy?: AnySDKType; } /** MsgCreateGroupPolicyResponse is the Msg/CreateGroupPolicy response type. */ export interface MsgCreateGroupPolicyResponse { /** address is the account address of the newly created group policy. */ address: string; } /** MsgCreateGroupPolicyResponse is the Msg/CreateGroupPolicy response type. */ export interface MsgCreateGroupPolicyResponseSDKType { address: string; } /** MsgUpdateGroupPolicyAdmin is the Msg/UpdateGroupPolicyAdmin request type. */ export interface MsgUpdateGroupPolicyAdmin { /** admin is the account address of the group admin. */ admin: string; /** group_policy_address is the account address of the group policy. */ groupPolicyAddress: string; /** new_admin is the new group policy admin. */ newAdmin: string; } /** MsgUpdateGroupPolicyAdmin is the Msg/UpdateGroupPolicyAdmin request type. */ export interface MsgUpdateGroupPolicyAdminSDKType { admin: string; group_policy_address: string; new_admin: string; } /** MsgUpdateGroupPolicyAdminResponse is the Msg/UpdateGroupPolicyAdmin response type. */ export interface MsgUpdateGroupPolicyAdminResponse {} /** MsgUpdateGroupPolicyAdminResponse is the Msg/UpdateGroupPolicyAdmin response type. */ export interface MsgUpdateGroupPolicyAdminResponseSDKType {} /** MsgCreateGroupWithPolicy is the Msg/CreateGroupWithPolicy request type. */ export interface MsgCreateGroupWithPolicy { /** admin is the account address of the group and group policy admin. */ admin: string; /** members defines the group members. */ members: MemberRequest[]; /** group_metadata is any arbitrary metadata attached to the group. */ groupMetadata: string; /** group_policy_metadata is any arbitrary metadata attached to the group policy. */ groupPolicyMetadata: string; /** * group_policy_as_admin is a boolean field, if set to true, the group policy account address will be used as group * and group policy admin. */ groupPolicyAsAdmin: boolean; /** decision_policy specifies the group policy's decision policy. */ decisionPolicy?: Any; } /** MsgCreateGroupWithPolicy is the Msg/CreateGroupWithPolicy request type. */ export interface MsgCreateGroupWithPolicySDKType { admin: string; members: MemberRequestSDKType[]; group_metadata: string; group_policy_metadata: string; group_policy_as_admin: boolean; decision_policy?: AnySDKType; } /** MsgCreateGroupWithPolicyResponse is the Msg/CreateGroupWithPolicy response type. */ export interface MsgCreateGroupWithPolicyResponse { /** group_id is the unique ID of the newly created group with policy. */ groupId: Long; /** group_policy_address is the account address of the newly created group policy. */ groupPolicyAddress: string; } /** MsgCreateGroupWithPolicyResponse is the Msg/CreateGroupWithPolicy response type. */ export interface MsgCreateGroupWithPolicyResponseSDKType { group_id: Long; group_policy_address: string; } /** MsgUpdateGroupPolicyDecisionPolicy is the Msg/UpdateGroupPolicyDecisionPolicy request type. */ export interface MsgUpdateGroupPolicyDecisionPolicy { /** admin is the account address of the group admin. */ admin: string; /** group_policy_address is the account address of group policy. */ groupPolicyAddress: string; /** decision_policy is the updated group policy's decision policy. */ decisionPolicy?: Any; } /** MsgUpdateGroupPolicyDecisionPolicy is the Msg/UpdateGroupPolicyDecisionPolicy request type. */ export interface MsgUpdateGroupPolicyDecisionPolicySDKType { admin: string; group_policy_address: string; decision_policy?: AnySDKType; } /** MsgUpdateGroupPolicyDecisionPolicyResponse is the Msg/UpdateGroupPolicyDecisionPolicy response type. */ export interface MsgUpdateGroupPolicyDecisionPolicyResponse {} /** MsgUpdateGroupPolicyDecisionPolicyResponse is the Msg/UpdateGroupPolicyDecisionPolicy response type. */ export interface MsgUpdateGroupPolicyDecisionPolicyResponseSDKType {} /** MsgUpdateGroupPolicyMetadata is the Msg/UpdateGroupPolicyMetadata request type. */ export interface MsgUpdateGroupPolicyMetadata { /** admin is the account address of the group admin. */ admin: string; /** group_policy_address is the account address of group policy. */ groupPolicyAddress: string; /** metadata is the group policy metadata to be updated. */ metadata: string; } /** MsgUpdateGroupPolicyMetadata is the Msg/UpdateGroupPolicyMetadata request type. */ export interface MsgUpdateGroupPolicyMetadataSDKType { admin: string; group_policy_address: string; metadata: string; } /** MsgUpdateGroupPolicyMetadataResponse is the Msg/UpdateGroupPolicyMetadata response type. */ export interface MsgUpdateGroupPolicyMetadataResponse {} /** MsgUpdateGroupPolicyMetadataResponse is the Msg/UpdateGroupPolicyMetadata response type. */ export interface MsgUpdateGroupPolicyMetadataResponseSDKType {} /** MsgSubmitProposal is the Msg/SubmitProposal request type. */ export interface MsgSubmitProposal { /** group_policy_address is the account address of group policy. */ groupPolicyAddress: string; /** * proposers are the account addresses of the proposers. * Proposers signatures will be counted as yes votes. */ proposers: string[]; /** metadata is any arbitrary metadata attached to the proposal. */ metadata: string; /** messages is a list of `sdk.Msg`s that will be executed if the proposal passes. */ messages: Any[]; /** * exec defines the mode of execution of the proposal, * whether it should be executed immediately on creation or not. * If so, proposers signatures are considered as Yes votes. */ exec: Exec; /** * title is the title of the proposal. * * Since: cosmos-sdk 0.47 */ title: string; /** * summary is the summary of the proposal. * * Since: cosmos-sdk 0.47 */ summary: string; } /** MsgSubmitProposal is the Msg/SubmitProposal request type. */ export interface MsgSubmitProposalSDKType { group_policy_address: string; proposers: string[]; metadata: string; messages: AnySDKType[]; exec: Exec; title: string; summary: string; } /** MsgSubmitProposalResponse is the Msg/SubmitProposal response type. */ export interface MsgSubmitProposalResponse { /** proposal is the unique ID of the proposal. */ proposalId: Long; } /** MsgSubmitProposalResponse is the Msg/SubmitProposal response type. */ export interface MsgSubmitProposalResponseSDKType { proposal_id: Long; } /** MsgWithdrawProposal is the Msg/WithdrawProposal request type. */ export interface MsgWithdrawProposal { /** proposal is the unique ID of the proposal. */ proposalId: Long; /** address is the admin of the group policy or one of the proposer of the proposal. */ address: string; } /** MsgWithdrawProposal is the Msg/WithdrawProposal request type. */ export interface MsgWithdrawProposalSDKType { proposal_id: Long; address: string; } /** MsgWithdrawProposalResponse is the Msg/WithdrawProposal response type. */ export interface MsgWithdrawProposalResponse {} /** MsgWithdrawProposalResponse is the Msg/WithdrawProposal response type. */ export interface MsgWithdrawProposalResponseSDKType {} /** MsgVote is the Msg/Vote request type. */ export interface MsgVote { /** proposal is the unique ID of the proposal. */ proposalId: Long; /** voter is the voter account address. */ voter: string; /** option is the voter's choice on the proposal. */ option: VoteOption; /** metadata is any arbitrary metadata attached to the vote. */ metadata: string; /** * exec defines whether the proposal should be executed * immediately after voting or not. */ exec: Exec; } /** MsgVote is the Msg/Vote request type. */ export interface MsgVoteSDKType { proposal_id: Long; voter: string; option: VoteOption; metadata: string; exec: Exec; } /** MsgVoteResponse is the Msg/Vote response type. */ export interface MsgVoteResponse {} /** MsgVoteResponse is the Msg/Vote response type. */ export interface MsgVoteResponseSDKType {} /** MsgExec is the Msg/Exec request type. */ export interface MsgExec { /** proposal is the unique ID of the proposal. */ proposalId: Long; /** executor is the account address used to execute the proposal. */ executor: string; } /** MsgExec is the Msg/Exec request type. */ export interface MsgExecSDKType { proposal_id: Long; executor: string; } /** MsgExecResponse is the Msg/Exec request type. */ export interface MsgExecResponse { /** result is the final result of the proposal execution. */ result: ProposalExecutorResult; } /** MsgExecResponse is the Msg/Exec request type. */ export interface MsgExecResponseSDKType { result: ProposalExecutorResult; } /** MsgLeaveGroup is the Msg/LeaveGroup request type. */ export interface MsgLeaveGroup { /** address is the account address of the group member. */ address: string; /** group_id is the unique ID of the group. */ groupId: Long; } /** MsgLeaveGroup is the Msg/LeaveGroup request type. */ export interface MsgLeaveGroupSDKType { address: string; group_id: Long; } /** MsgLeaveGroupResponse is the Msg/LeaveGroup response type. */ export interface MsgLeaveGroupResponse {} /** MsgLeaveGroupResponse is the Msg/LeaveGroup response type. */ export interface MsgLeaveGroupResponseSDKType {} function createBaseMsgCreateGroup(): MsgCreateGroup { return { admin: "", members: [], metadata: "" }; } export const MsgCreateGroup = { encode(message: MsgCreateGroup, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } for (const v of message.members) { MemberRequest.encode(v!, writer.uint32(18).fork()).ldelim(); } if (message.metadata !== "") { writer.uint32(26).string(message.metadata); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgCreateGroup { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgCreateGroup(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.members.push(MemberRequest.decode(reader, reader.uint32())); break; case 3: message.metadata = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgCreateGroup { const message = createBaseMsgCreateGroup(); message.admin = object.admin ?? ""; message.members = object.members?.map(e => MemberRequest.fromPartial(e)) || []; message.metadata = object.metadata ?? ""; return message; } }; function createBaseMsgCreateGroupResponse(): MsgCreateGroupResponse { return { groupId: Long.UZERO }; } export const MsgCreateGroupResponse = { encode(message: MsgCreateGroupResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (!message.groupId.isZero()) { writer.uint32(8).uint64(message.groupId); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgCreateGroupResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgCreateGroupResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.groupId = (reader.uint64() as Long); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgCreateGroupResponse { const message = createBaseMsgCreateGroupResponse(); message.groupId = object.groupId !== undefined && object.groupId !== null ? Long.fromValue(object.groupId) : Long.UZERO; return message; } }; function createBaseMsgUpdateGroupMembers(): MsgUpdateGroupMembers { return { admin: "", groupId: Long.UZERO, memberUpdates: [] }; } export const MsgUpdateGroupMembers = { encode(message: MsgUpdateGroupMembers, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } if (!message.groupId.isZero()) { writer.uint32(16).uint64(message.groupId); } for (const v of message.memberUpdates) { MemberRequest.encode(v!, writer.uint32(26).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupMembers { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupMembers(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.groupId = (reader.uint64() as Long); break; case 3: message.memberUpdates.push(MemberRequest.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgUpdateGroupMembers { const message = createBaseMsgUpdateGroupMembers(); message.admin = object.admin ?? ""; message.groupId = object.groupId !== undefined && object.groupId !== null ? Long.fromValue(object.groupId) : Long.UZERO; message.memberUpdates = object.memberUpdates?.map(e => MemberRequest.fromPartial(e)) || []; return message; } }; function createBaseMsgUpdateGroupMembersResponse(): MsgUpdateGroupMembersResponse { return {}; } export const MsgUpdateGroupMembersResponse = { encode(_: MsgUpdateGroupMembersResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupMembersResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupMembersResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgUpdateGroupMembersResponse { const message = createBaseMsgUpdateGroupMembersResponse(); return message; } }; function createBaseMsgUpdateGroupAdmin(): MsgUpdateGroupAdmin { return { admin: "", groupId: Long.UZERO, newAdmin: "" }; } export const MsgUpdateGroupAdmin = { encode(message: MsgUpdateGroupAdmin, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } if (!message.groupId.isZero()) { writer.uint32(16).uint64(message.groupId); } if (message.newAdmin !== "") { writer.uint32(26).string(message.newAdmin); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupAdmin { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupAdmin(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.groupId = (reader.uint64() as Long); break; case 3: message.newAdmin = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgUpdateGroupAdmin { const message = createBaseMsgUpdateGroupAdmin(); message.admin = object.admin ?? ""; message.groupId = object.groupId !== undefined && object.groupId !== null ? Long.fromValue(object.groupId) : Long.UZERO; message.newAdmin = object.newAdmin ?? ""; return message; } }; function createBaseMsgUpdateGroupAdminResponse(): MsgUpdateGroupAdminResponse { return {}; } export const MsgUpdateGroupAdminResponse = { encode(_: MsgUpdateGroupAdminResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupAdminResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupAdminResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgUpdateGroupAdminResponse { const message = createBaseMsgUpdateGroupAdminResponse(); return message; } }; function createBaseMsgUpdateGroupMetadata(): MsgUpdateGroupMetadata { return { admin: "", groupId: Long.UZERO, metadata: "" }; } export const MsgUpdateGroupMetadata = { encode(message: MsgUpdateGroupMetadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } if (!message.groupId.isZero()) { writer.uint32(16).uint64(message.groupId); } if (message.metadata !== "") { writer.uint32(26).string(message.metadata); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupMetadata { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupMetadata(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.groupId = (reader.uint64() as Long); break; case 3: message.metadata = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgUpdateGroupMetadata { const message = createBaseMsgUpdateGroupMetadata(); message.admin = object.admin ?? ""; message.groupId = object.groupId !== undefined && object.groupId !== null ? Long.fromValue(object.groupId) : Long.UZERO; message.metadata = object.metadata ?? ""; return message; } }; function createBaseMsgUpdateGroupMetadataResponse(): MsgUpdateGroupMetadataResponse { return {}; } export const MsgUpdateGroupMetadataResponse = { encode(_: MsgUpdateGroupMetadataResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupMetadataResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupMetadataResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgUpdateGroupMetadataResponse { const message = createBaseMsgUpdateGroupMetadataResponse(); return message; } }; function createBaseMsgCreateGroupPolicy(): MsgCreateGroupPolicy { return { admin: "", groupId: Long.UZERO, metadata: "", decisionPolicy: undefined }; } export const MsgCreateGroupPolicy = { encode(message: MsgCreateGroupPolicy, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } if (!message.groupId.isZero()) { writer.uint32(16).uint64(message.groupId); } if (message.metadata !== "") { writer.uint32(26).string(message.metadata); } if (message.decisionPolicy !== undefined) { Any.encode(message.decisionPolicy, writer.uint32(34).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgCreateGroupPolicy { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgCreateGroupPolicy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.groupId = (reader.uint64() as Long); break; case 3: message.metadata = reader.string(); break; case 4: message.decisionPolicy = Any.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgCreateGroupPolicy { const message = createBaseMsgCreateGroupPolicy(); message.admin = object.admin ?? ""; message.groupId = object.groupId !== undefined && object.groupId !== null ? Long.fromValue(object.groupId) : Long.UZERO; message.metadata = object.metadata ?? ""; message.decisionPolicy = object.decisionPolicy !== undefined && object.decisionPolicy !== null ? Any.fromPartial(object.decisionPolicy) : undefined; return message; } }; function createBaseMsgCreateGroupPolicyResponse(): MsgCreateGroupPolicyResponse { return { address: "" }; } export const MsgCreateGroupPolicyResponse = { encode(message: MsgCreateGroupPolicyResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.address !== "") { writer.uint32(10).string(message.address); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgCreateGroupPolicyResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgCreateGroupPolicyResponse(); 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; }, fromPartial(object: DeepPartial): MsgCreateGroupPolicyResponse { const message = createBaseMsgCreateGroupPolicyResponse(); message.address = object.address ?? ""; return message; } }; function createBaseMsgUpdateGroupPolicyAdmin(): MsgUpdateGroupPolicyAdmin { return { admin: "", groupPolicyAddress: "", newAdmin: "" }; } export const MsgUpdateGroupPolicyAdmin = { encode(message: MsgUpdateGroupPolicyAdmin, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } if (message.groupPolicyAddress !== "") { writer.uint32(18).string(message.groupPolicyAddress); } if (message.newAdmin !== "") { writer.uint32(26).string(message.newAdmin); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupPolicyAdmin { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupPolicyAdmin(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.groupPolicyAddress = reader.string(); break; case 3: message.newAdmin = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgUpdateGroupPolicyAdmin { const message = createBaseMsgUpdateGroupPolicyAdmin(); message.admin = object.admin ?? ""; message.groupPolicyAddress = object.groupPolicyAddress ?? ""; message.newAdmin = object.newAdmin ?? ""; return message; } }; function createBaseMsgUpdateGroupPolicyAdminResponse(): MsgUpdateGroupPolicyAdminResponse { return {}; } export const MsgUpdateGroupPolicyAdminResponse = { encode(_: MsgUpdateGroupPolicyAdminResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupPolicyAdminResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupPolicyAdminResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgUpdateGroupPolicyAdminResponse { const message = createBaseMsgUpdateGroupPolicyAdminResponse(); return message; } }; function createBaseMsgCreateGroupWithPolicy(): MsgCreateGroupWithPolicy { return { admin: "", members: [], groupMetadata: "", groupPolicyMetadata: "", groupPolicyAsAdmin: false, decisionPolicy: undefined }; } export const MsgCreateGroupWithPolicy = { encode(message: MsgCreateGroupWithPolicy, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } for (const v of message.members) { MemberRequest.encode(v!, writer.uint32(18).fork()).ldelim(); } if (message.groupMetadata !== "") { writer.uint32(26).string(message.groupMetadata); } if (message.groupPolicyMetadata !== "") { writer.uint32(34).string(message.groupPolicyMetadata); } if (message.groupPolicyAsAdmin === true) { writer.uint32(40).bool(message.groupPolicyAsAdmin); } if (message.decisionPolicy !== undefined) { Any.encode(message.decisionPolicy, writer.uint32(50).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgCreateGroupWithPolicy { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgCreateGroupWithPolicy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.members.push(MemberRequest.decode(reader, reader.uint32())); break; case 3: message.groupMetadata = reader.string(); break; case 4: message.groupPolicyMetadata = reader.string(); break; case 5: message.groupPolicyAsAdmin = reader.bool(); break; case 6: message.decisionPolicy = Any.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgCreateGroupWithPolicy { const message = createBaseMsgCreateGroupWithPolicy(); message.admin = object.admin ?? ""; message.members = object.members?.map(e => MemberRequest.fromPartial(e)) || []; message.groupMetadata = object.groupMetadata ?? ""; message.groupPolicyMetadata = object.groupPolicyMetadata ?? ""; message.groupPolicyAsAdmin = object.groupPolicyAsAdmin ?? false; message.decisionPolicy = object.decisionPolicy !== undefined && object.decisionPolicy !== null ? Any.fromPartial(object.decisionPolicy) : undefined; return message; } }; function createBaseMsgCreateGroupWithPolicyResponse(): MsgCreateGroupWithPolicyResponse { return { groupId: Long.UZERO, groupPolicyAddress: "" }; } export const MsgCreateGroupWithPolicyResponse = { encode(message: MsgCreateGroupWithPolicyResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (!message.groupId.isZero()) { writer.uint32(8).uint64(message.groupId); } if (message.groupPolicyAddress !== "") { writer.uint32(18).string(message.groupPolicyAddress); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgCreateGroupWithPolicyResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgCreateGroupWithPolicyResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.groupId = (reader.uint64() as Long); break; case 2: message.groupPolicyAddress = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgCreateGroupWithPolicyResponse { const message = createBaseMsgCreateGroupWithPolicyResponse(); message.groupId = object.groupId !== undefined && object.groupId !== null ? Long.fromValue(object.groupId) : Long.UZERO; message.groupPolicyAddress = object.groupPolicyAddress ?? ""; return message; } }; function createBaseMsgUpdateGroupPolicyDecisionPolicy(): MsgUpdateGroupPolicyDecisionPolicy { return { admin: "", groupPolicyAddress: "", decisionPolicy: undefined }; } export const MsgUpdateGroupPolicyDecisionPolicy = { encode(message: MsgUpdateGroupPolicyDecisionPolicy, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } if (message.groupPolicyAddress !== "") { writer.uint32(18).string(message.groupPolicyAddress); } if (message.decisionPolicy !== undefined) { Any.encode(message.decisionPolicy, writer.uint32(26).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupPolicyDecisionPolicy { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupPolicyDecisionPolicy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.groupPolicyAddress = reader.string(); break; case 3: message.decisionPolicy = Any.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgUpdateGroupPolicyDecisionPolicy { const message = createBaseMsgUpdateGroupPolicyDecisionPolicy(); message.admin = object.admin ?? ""; message.groupPolicyAddress = object.groupPolicyAddress ?? ""; message.decisionPolicy = object.decisionPolicy !== undefined && object.decisionPolicy !== null ? Any.fromPartial(object.decisionPolicy) : undefined; return message; } }; function createBaseMsgUpdateGroupPolicyDecisionPolicyResponse(): MsgUpdateGroupPolicyDecisionPolicyResponse { return {}; } export const MsgUpdateGroupPolicyDecisionPolicyResponse = { encode(_: MsgUpdateGroupPolicyDecisionPolicyResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupPolicyDecisionPolicyResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupPolicyDecisionPolicyResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgUpdateGroupPolicyDecisionPolicyResponse { const message = createBaseMsgUpdateGroupPolicyDecisionPolicyResponse(); return message; } }; function createBaseMsgUpdateGroupPolicyMetadata(): MsgUpdateGroupPolicyMetadata { return { admin: "", groupPolicyAddress: "", metadata: "" }; } export const MsgUpdateGroupPolicyMetadata = { encode(message: MsgUpdateGroupPolicyMetadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.admin !== "") { writer.uint32(10).string(message.admin); } if (message.groupPolicyAddress !== "") { writer.uint32(18).string(message.groupPolicyAddress); } if (message.metadata !== "") { writer.uint32(26).string(message.metadata); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupPolicyMetadata { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupPolicyMetadata(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.admin = reader.string(); break; case 2: message.groupPolicyAddress = reader.string(); break; case 3: message.metadata = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgUpdateGroupPolicyMetadata { const message = createBaseMsgUpdateGroupPolicyMetadata(); message.admin = object.admin ?? ""; message.groupPolicyAddress = object.groupPolicyAddress ?? ""; message.metadata = object.metadata ?? ""; return message; } }; function createBaseMsgUpdateGroupPolicyMetadataResponse(): MsgUpdateGroupPolicyMetadataResponse { return {}; } export const MsgUpdateGroupPolicyMetadataResponse = { encode(_: MsgUpdateGroupPolicyMetadataResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgUpdateGroupPolicyMetadataResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgUpdateGroupPolicyMetadataResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgUpdateGroupPolicyMetadataResponse { const message = createBaseMsgUpdateGroupPolicyMetadataResponse(); return message; } }; function createBaseMsgSubmitProposal(): MsgSubmitProposal { return { groupPolicyAddress: "", proposers: [], metadata: "", messages: [], exec: 0, title: "", summary: "" }; } export const MsgSubmitProposal = { encode(message: MsgSubmitProposal, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.groupPolicyAddress !== "") { writer.uint32(10).string(message.groupPolicyAddress); } for (const v of message.proposers) { writer.uint32(18).string(v!); } if (message.metadata !== "") { writer.uint32(26).string(message.metadata); } for (const v of message.messages) { Any.encode(v!, writer.uint32(34).fork()).ldelim(); } if (message.exec !== 0) { writer.uint32(40).int32(message.exec); } if (message.title !== "") { writer.uint32(50).string(message.title); } if (message.summary !== "") { writer.uint32(58).string(message.summary); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitProposal { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitProposal(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.groupPolicyAddress = reader.string(); break; case 2: message.proposers.push(reader.string()); break; case 3: message.metadata = reader.string(); break; case 4: message.messages.push(Any.decode(reader, reader.uint32())); break; case 5: message.exec = (reader.int32() as any); break; case 6: message.title = reader.string(); break; case 7: message.summary = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgSubmitProposal { const message = createBaseMsgSubmitProposal(); message.groupPolicyAddress = object.groupPolicyAddress ?? ""; message.proposers = object.proposers?.map(e => e) || []; message.metadata = object.metadata ?? ""; message.messages = object.messages?.map(e => Any.fromPartial(e)) || []; message.exec = object.exec ?? 0; message.title = object.title ?? ""; message.summary = object.summary ?? ""; return message; } }; function createBaseMsgSubmitProposalResponse(): MsgSubmitProposalResponse { return { proposalId: Long.UZERO }; } export const MsgSubmitProposalResponse = { encode(message: MsgSubmitProposalResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (!message.proposalId.isZero()) { writer.uint32(8).uint64(message.proposalId); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgSubmitProposalResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgSubmitProposalResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.proposalId = (reader.uint64() as Long); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgSubmitProposalResponse { const message = createBaseMsgSubmitProposalResponse(); message.proposalId = object.proposalId !== undefined && object.proposalId !== null ? Long.fromValue(object.proposalId) : Long.UZERO; return message; } }; function createBaseMsgWithdrawProposal(): MsgWithdrawProposal { return { proposalId: Long.UZERO, address: "" }; } export const MsgWithdrawProposal = { encode(message: MsgWithdrawProposal, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (!message.proposalId.isZero()) { writer.uint32(8).uint64(message.proposalId); } if (message.address !== "") { writer.uint32(18).string(message.address); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgWithdrawProposal { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgWithdrawProposal(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.proposalId = (reader.uint64() as Long); break; case 2: message.address = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgWithdrawProposal { const message = createBaseMsgWithdrawProposal(); message.proposalId = object.proposalId !== undefined && object.proposalId !== null ? Long.fromValue(object.proposalId) : Long.UZERO; message.address = object.address ?? ""; return message; } }; function createBaseMsgWithdrawProposalResponse(): MsgWithdrawProposalResponse { return {}; } export const MsgWithdrawProposalResponse = { encode(_: MsgWithdrawProposalResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgWithdrawProposalResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgWithdrawProposalResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgWithdrawProposalResponse { const message = createBaseMsgWithdrawProposalResponse(); return message; } }; function createBaseMsgVote(): MsgVote { return { proposalId: Long.UZERO, voter: "", option: 0, metadata: "", exec: 0 }; } export const MsgVote = { encode(message: MsgVote, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (!message.proposalId.isZero()) { writer.uint32(8).uint64(message.proposalId); } if (message.voter !== "") { writer.uint32(18).string(message.voter); } if (message.option !== 0) { writer.uint32(24).int32(message.option); } if (message.metadata !== "") { writer.uint32(34).string(message.metadata); } if (message.exec !== 0) { writer.uint32(40).int32(message.exec); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgVote { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgVote(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.proposalId = (reader.uint64() as Long); break; case 2: message.voter = reader.string(); break; case 3: message.option = (reader.int32() as any); break; case 4: message.metadata = reader.string(); break; case 5: message.exec = (reader.int32() as any); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgVote { const message = createBaseMsgVote(); message.proposalId = object.proposalId !== undefined && object.proposalId !== null ? Long.fromValue(object.proposalId) : Long.UZERO; message.voter = object.voter ?? ""; message.option = object.option ?? 0; message.metadata = object.metadata ?? ""; message.exec = object.exec ?? 0; return message; } }; function createBaseMsgVoteResponse(): MsgVoteResponse { return {}; } export const MsgVoteResponse = { encode(_: MsgVoteResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgVoteResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgVoteResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgVoteResponse { const message = createBaseMsgVoteResponse(); return message; } }; function createBaseMsgExec(): MsgExec { return { proposalId: Long.UZERO, executor: "" }; } export const MsgExec = { encode(message: MsgExec, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (!message.proposalId.isZero()) { writer.uint32(8).uint64(message.proposalId); } if (message.executor !== "") { writer.uint32(18).string(message.executor); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgExec { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgExec(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.proposalId = (reader.uint64() as Long); break; case 2: message.executor = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgExec { const message = createBaseMsgExec(); message.proposalId = object.proposalId !== undefined && object.proposalId !== null ? Long.fromValue(object.proposalId) : Long.UZERO; message.executor = object.executor ?? ""; return message; } }; function createBaseMsgExecResponse(): MsgExecResponse { return { result: 0 }; } export const MsgExecResponse = { encode(message: MsgExecResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.result !== 0) { writer.uint32(16).int32(message.result); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgExecResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgExecResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 2: message.result = (reader.int32() as any); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgExecResponse { const message = createBaseMsgExecResponse(); message.result = object.result ?? 0; return message; } }; function createBaseMsgLeaveGroup(): MsgLeaveGroup { return { address: "", groupId: Long.UZERO }; } export const MsgLeaveGroup = { encode(message: MsgLeaveGroup, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.address !== "") { writer.uint32(10).string(message.address); } if (!message.groupId.isZero()) { writer.uint32(16).uint64(message.groupId); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgLeaveGroup { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgLeaveGroup(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.address = reader.string(); break; case 2: message.groupId = (reader.uint64() as Long); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): MsgLeaveGroup { const message = createBaseMsgLeaveGroup(); message.address = object.address ?? ""; message.groupId = object.groupId !== undefined && object.groupId !== null ? Long.fromValue(object.groupId) : Long.UZERO; return message; } }; function createBaseMsgLeaveGroupResponse(): MsgLeaveGroupResponse { return {}; } export const MsgLeaveGroupResponse = { encode(_: MsgLeaveGroupResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgLeaveGroupResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgLeaveGroupResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(_: DeepPartial): MsgLeaveGroupResponse { const message = createBaseMsgLeaveGroupResponse(); return message; } };