import { MsgRevoke as BaseMsgRevoke } from '@routerprotocol/chain-api/cosmos/authz/v1beta1/tx_pb';
import { MsgBase } from '../../MsgBase';
export declare namespace MsgRevoke {
    interface Params {
        messageType: string;
        grantee: string;
        granter: string;
    }
    interface DirectSign {
        type: '/cosmos.authz.v1beta1.MsgRevoke';
        message: BaseMsgRevoke;
    }
    interface Data extends BaseMsgRevoke.AsObject {
        '@type': '/cosmos.authz.v1beta1.MsgRevoke';
    }
    interface Amino extends BaseMsgRevoke.AsObject {
        type: 'cosmos-sdk/MsgRevoke';
    }
    interface Web3 extends BaseMsgRevoke.AsObject {
        '@type': '/cosmos.authz.v1beta1.MsgRevoke';
    }
    type Proto = BaseMsgRevoke;
}
/**
 * @group Message
 */
export default class MsgRevoke extends MsgBase<MsgRevoke.Params, MsgRevoke.Data, MsgRevoke.Proto, MsgRevoke.Amino, MsgRevoke.DirectSign> {
    static fromJSON(params: MsgRevoke.Params): MsgRevoke;
    toProto(): MsgRevoke.Proto;
    toData(): MsgRevoke.Data;
    toAmino(): MsgRevoke.Amino;
    toWeb3(): MsgRevoke.Web3;
    toDirectSign(): MsgRevoke.DirectSign;
}
