// package: cosmos.group.v1
// file: cosmos/group/v1/tx.proto

/* tslint:disable */
/* eslint-disable */

import * as grpc from "grpc";
import * as cosmos_group_v1_tx_pb from "../../../cosmos/group/v1/tx_pb";
import * as gogoproto_gogo_pb from "../../../gogoproto/gogo_pb";
import * as cosmos_proto_cosmos_pb from "../../../cosmos_proto/cosmos_pb";
import * as google_protobuf_any_pb from "google-protobuf/google/protobuf/any_pb";
import * as cosmos_group_v1_types_pb from "../../../cosmos/group/v1/types_pb";
import * as cosmos_msg_v1_msg_pb from "../../../cosmos/msg/v1/msg_pb";

interface IMsgService extends grpc.ServiceDefinition<grpc.UntypedServiceImplementation> {
    createGroup: IMsgService_ICreateGroup;
    updateGroupMembers: IMsgService_IUpdateGroupMembers;
    updateGroupAdmin: IMsgService_IUpdateGroupAdmin;
    updateGroupMetadata: IMsgService_IUpdateGroupMetadata;
    createGroupPolicy: IMsgService_ICreateGroupPolicy;
    createGroupWithPolicy: IMsgService_ICreateGroupWithPolicy;
    updateGroupPolicyAdmin: IMsgService_IUpdateGroupPolicyAdmin;
    updateGroupPolicyDecisionPolicy: IMsgService_IUpdateGroupPolicyDecisionPolicy;
    updateGroupPolicyMetadata: IMsgService_IUpdateGroupPolicyMetadata;
    submitProposal: IMsgService_ISubmitProposal;
    withdrawProposal: IMsgService_IWithdrawProposal;
    vote: IMsgService_IVote;
    exec: IMsgService_IExec;
    leaveGroup: IMsgService_ILeaveGroup;
}

interface IMsgService_ICreateGroup extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgCreateGroup, cosmos_group_v1_tx_pb.MsgCreateGroupResponse> {
    path: "/cosmos.group.v1.Msg/CreateGroup";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgCreateGroup>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgCreateGroup>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgCreateGroupResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgCreateGroupResponse>;
}
interface IMsgService_IUpdateGroupMembers extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgUpdateGroupMembers, cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse> {
    path: "/cosmos.group.v1.Msg/UpdateGroupMembers";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupMembers>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupMembers>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse>;
}
interface IMsgService_IUpdateGroupAdmin extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin, cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse> {
    path: "/cosmos.group.v1.Msg/UpdateGroupAdmin";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse>;
}
interface IMsgService_IUpdateGroupMetadata extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata, cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse> {
    path: "/cosmos.group.v1.Msg/UpdateGroupMetadata";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse>;
}
interface IMsgService_ICreateGroupPolicy extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgCreateGroupPolicy, cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse> {
    path: "/cosmos.group.v1.Msg/CreateGroupPolicy";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgCreateGroupPolicy>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgCreateGroupPolicy>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse>;
}
interface IMsgService_ICreateGroupWithPolicy extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy, cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse> {
    path: "/cosmos.group.v1.Msg/CreateGroupWithPolicy";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse>;
}
interface IMsgService_IUpdateGroupPolicyAdmin extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin, cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse> {
    path: "/cosmos.group.v1.Msg/UpdateGroupPolicyAdmin";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse>;
}
interface IMsgService_IUpdateGroupPolicyDecisionPolicy extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy, cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse> {
    path: "/cosmos.group.v1.Msg/UpdateGroupPolicyDecisionPolicy";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse>;
}
interface IMsgService_IUpdateGroupPolicyMetadata extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata, cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse> {
    path: "/cosmos.group.v1.Msg/UpdateGroupPolicyMetadata";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse>;
}
interface IMsgService_ISubmitProposal extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgSubmitProposal, cosmos_group_v1_tx_pb.MsgSubmitProposalResponse> {
    path: "/cosmos.group.v1.Msg/SubmitProposal";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgSubmitProposal>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgSubmitProposal>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgSubmitProposalResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgSubmitProposalResponse>;
}
interface IMsgService_IWithdrawProposal extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgWithdrawProposal, cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse> {
    path: "/cosmos.group.v1.Msg/WithdrawProposal";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgWithdrawProposal>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgWithdrawProposal>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse>;
}
interface IMsgService_IVote extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgVote, cosmos_group_v1_tx_pb.MsgVoteResponse> {
    path: "/cosmos.group.v1.Msg/Vote";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgVote>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgVote>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgVoteResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgVoteResponse>;
}
interface IMsgService_IExec extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgExec, cosmos_group_v1_tx_pb.MsgExecResponse> {
    path: "/cosmos.group.v1.Msg/Exec";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgExec>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgExec>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgExecResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgExecResponse>;
}
interface IMsgService_ILeaveGroup extends grpc.MethodDefinition<cosmos_group_v1_tx_pb.MsgLeaveGroup, cosmos_group_v1_tx_pb.MsgLeaveGroupResponse> {
    path: "/cosmos.group.v1.Msg/LeaveGroup";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgLeaveGroup>;
    requestDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgLeaveGroup>;
    responseSerialize: grpc.serialize<cosmos_group_v1_tx_pb.MsgLeaveGroupResponse>;
    responseDeserialize: grpc.deserialize<cosmos_group_v1_tx_pb.MsgLeaveGroupResponse>;
}

export const MsgService: IMsgService;

export interface IMsgServer {
    createGroup: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgCreateGroup, cosmos_group_v1_tx_pb.MsgCreateGroupResponse>;
    updateGroupMembers: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgUpdateGroupMembers, cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse>;
    updateGroupAdmin: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin, cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse>;
    updateGroupMetadata: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata, cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse>;
    createGroupPolicy: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgCreateGroupPolicy, cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse>;
    createGroupWithPolicy: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy, cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse>;
    updateGroupPolicyAdmin: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin, cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse>;
    updateGroupPolicyDecisionPolicy: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy, cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse>;
    updateGroupPolicyMetadata: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata, cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse>;
    submitProposal: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgSubmitProposal, cosmos_group_v1_tx_pb.MsgSubmitProposalResponse>;
    withdrawProposal: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgWithdrawProposal, cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse>;
    vote: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgVote, cosmos_group_v1_tx_pb.MsgVoteResponse>;
    exec: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgExec, cosmos_group_v1_tx_pb.MsgExecResponse>;
    leaveGroup: grpc.handleUnaryCall<cosmos_group_v1_tx_pb.MsgLeaveGroup, cosmos_group_v1_tx_pb.MsgLeaveGroupResponse>;
}

export interface IMsgClient {
    createGroup(request: cosmos_group_v1_tx_pb.MsgCreateGroup, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupResponse) => void): grpc.ClientUnaryCall;
    createGroup(request: cosmos_group_v1_tx_pb.MsgCreateGroup, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupResponse) => void): grpc.ClientUnaryCall;
    createGroup(request: cosmos_group_v1_tx_pb.MsgCreateGroup, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupResponse) => void): grpc.ClientUnaryCall;
    updateGroupMembers(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMembers, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse) => void): grpc.ClientUnaryCall;
    updateGroupMembers(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMembers, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse) => void): grpc.ClientUnaryCall;
    updateGroupMembers(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMembers, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse) => void): grpc.ClientUnaryCall;
    updateGroupAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse) => void): grpc.ClientUnaryCall;
    updateGroupAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse) => void): grpc.ClientUnaryCall;
    updateGroupAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse) => void): grpc.ClientUnaryCall;
    updateGroupMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse) => void): grpc.ClientUnaryCall;
    updateGroupMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse) => void): grpc.ClientUnaryCall;
    updateGroupMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse) => void): grpc.ClientUnaryCall;
    createGroupPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupPolicy, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse) => void): grpc.ClientUnaryCall;
    createGroupPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupPolicy, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse) => void): grpc.ClientUnaryCall;
    createGroupPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupPolicy, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse) => void): grpc.ClientUnaryCall;
    createGroupWithPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse) => void): grpc.ClientUnaryCall;
    createGroupWithPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse) => void): grpc.ClientUnaryCall;
    createGroupWithPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyDecisionPolicy(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyDecisionPolicy(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyDecisionPolicy(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse) => void): grpc.ClientUnaryCall;
    updateGroupPolicyMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse) => void): grpc.ClientUnaryCall;
    submitProposal(request: cosmos_group_v1_tx_pb.MsgSubmitProposal, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgSubmitProposalResponse) => void): grpc.ClientUnaryCall;
    submitProposal(request: cosmos_group_v1_tx_pb.MsgSubmitProposal, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgSubmitProposalResponse) => void): grpc.ClientUnaryCall;
    submitProposal(request: cosmos_group_v1_tx_pb.MsgSubmitProposal, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgSubmitProposalResponse) => void): grpc.ClientUnaryCall;
    withdrawProposal(request: cosmos_group_v1_tx_pb.MsgWithdrawProposal, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse) => void): grpc.ClientUnaryCall;
    withdrawProposal(request: cosmos_group_v1_tx_pb.MsgWithdrawProposal, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse) => void): grpc.ClientUnaryCall;
    withdrawProposal(request: cosmos_group_v1_tx_pb.MsgWithdrawProposal, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse) => void): grpc.ClientUnaryCall;
    vote(request: cosmos_group_v1_tx_pb.MsgVote, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgVoteResponse) => void): grpc.ClientUnaryCall;
    vote(request: cosmos_group_v1_tx_pb.MsgVote, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgVoteResponse) => void): grpc.ClientUnaryCall;
    vote(request: cosmos_group_v1_tx_pb.MsgVote, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgVoteResponse) => void): grpc.ClientUnaryCall;
    exec(request: cosmos_group_v1_tx_pb.MsgExec, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgExecResponse) => void): grpc.ClientUnaryCall;
    exec(request: cosmos_group_v1_tx_pb.MsgExec, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgExecResponse) => void): grpc.ClientUnaryCall;
    exec(request: cosmos_group_v1_tx_pb.MsgExec, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgExecResponse) => void): grpc.ClientUnaryCall;
    leaveGroup(request: cosmos_group_v1_tx_pb.MsgLeaveGroup, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgLeaveGroupResponse) => void): grpc.ClientUnaryCall;
    leaveGroup(request: cosmos_group_v1_tx_pb.MsgLeaveGroup, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgLeaveGroupResponse) => void): grpc.ClientUnaryCall;
    leaveGroup(request: cosmos_group_v1_tx_pb.MsgLeaveGroup, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgLeaveGroupResponse) => void): grpc.ClientUnaryCall;
}

export class MsgClient extends grpc.Client implements IMsgClient {
    constructor(address: string, credentials: grpc.ChannelCredentials, options?: object);
    public createGroup(request: cosmos_group_v1_tx_pb.MsgCreateGroup, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupResponse) => void): grpc.ClientUnaryCall;
    public createGroup(request: cosmos_group_v1_tx_pb.MsgCreateGroup, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupResponse) => void): grpc.ClientUnaryCall;
    public createGroup(request: cosmos_group_v1_tx_pb.MsgCreateGroup, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupResponse) => void): grpc.ClientUnaryCall;
    public updateGroupMembers(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMembers, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse) => void): grpc.ClientUnaryCall;
    public updateGroupMembers(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMembers, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse) => void): grpc.ClientUnaryCall;
    public updateGroupMembers(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMembers, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMembersResponse) => void): grpc.ClientUnaryCall;
    public updateGroupAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse) => void): grpc.ClientUnaryCall;
    public updateGroupAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse) => void): grpc.ClientUnaryCall;
    public updateGroupAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupAdmin, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupAdminResponse) => void): grpc.ClientUnaryCall;
    public updateGroupMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse) => void): grpc.ClientUnaryCall;
    public updateGroupMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse) => void): grpc.ClientUnaryCall;
    public updateGroupMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadata, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupMetadataResponse) => void): grpc.ClientUnaryCall;
    public createGroupPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupPolicy, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse) => void): grpc.ClientUnaryCall;
    public createGroupPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupPolicy, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse) => void): grpc.ClientUnaryCall;
    public createGroupPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupPolicy, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupPolicyResponse) => void): grpc.ClientUnaryCall;
    public createGroupWithPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse) => void): grpc.ClientUnaryCall;
    public createGroupWithPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse) => void): grpc.ClientUnaryCall;
    public createGroupWithPolicy(request: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicy, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgCreateGroupWithPolicyResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyAdmin(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdmin, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyAdminResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyDecisionPolicy(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyDecisionPolicy(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyDecisionPolicy(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicy, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyDecisionPolicyResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse) => void): grpc.ClientUnaryCall;
    public updateGroupPolicyMetadata(request: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadata, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgUpdateGroupPolicyMetadataResponse) => void): grpc.ClientUnaryCall;
    public submitProposal(request: cosmos_group_v1_tx_pb.MsgSubmitProposal, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgSubmitProposalResponse) => void): grpc.ClientUnaryCall;
    public submitProposal(request: cosmos_group_v1_tx_pb.MsgSubmitProposal, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgSubmitProposalResponse) => void): grpc.ClientUnaryCall;
    public submitProposal(request: cosmos_group_v1_tx_pb.MsgSubmitProposal, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgSubmitProposalResponse) => void): grpc.ClientUnaryCall;
    public withdrawProposal(request: cosmos_group_v1_tx_pb.MsgWithdrawProposal, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse) => void): grpc.ClientUnaryCall;
    public withdrawProposal(request: cosmos_group_v1_tx_pb.MsgWithdrawProposal, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse) => void): grpc.ClientUnaryCall;
    public withdrawProposal(request: cosmos_group_v1_tx_pb.MsgWithdrawProposal, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgWithdrawProposalResponse) => void): grpc.ClientUnaryCall;
    public vote(request: cosmos_group_v1_tx_pb.MsgVote, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgVoteResponse) => void): grpc.ClientUnaryCall;
    public vote(request: cosmos_group_v1_tx_pb.MsgVote, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgVoteResponse) => void): grpc.ClientUnaryCall;
    public vote(request: cosmos_group_v1_tx_pb.MsgVote, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgVoteResponse) => void): grpc.ClientUnaryCall;
    public exec(request: cosmos_group_v1_tx_pb.MsgExec, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgExecResponse) => void): grpc.ClientUnaryCall;
    public exec(request: cosmos_group_v1_tx_pb.MsgExec, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgExecResponse) => void): grpc.ClientUnaryCall;
    public exec(request: cosmos_group_v1_tx_pb.MsgExec, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgExecResponse) => void): grpc.ClientUnaryCall;
    public leaveGroup(request: cosmos_group_v1_tx_pb.MsgLeaveGroup, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgLeaveGroupResponse) => void): grpc.ClientUnaryCall;
    public leaveGroup(request: cosmos_group_v1_tx_pb.MsgLeaveGroup, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgLeaveGroupResponse) => void): grpc.ClientUnaryCall;
    public leaveGroup(request: cosmos_group_v1_tx_pb.MsgLeaveGroup, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: cosmos_group_v1_tx_pb.MsgLeaveGroupResponse) => void): grpc.ClientUnaryCall;
}
