import { MsgEditValidator as BaseMsgEditValidator } from '@routerprotocol/chain-api/cosmos/staking/v1beta1/tx_pb';
import { MsgBase } from '../../MsgBase';
export declare namespace MsgEditValidator {
    interface Params {
        description: {
            moniker: string;
            identity: string;
            website: string;
            securityContact?: string;
            details: string;
        };
        validatorAddress: string;
        commissionRate?: string;
        minSelfDelegation?: string;
    }
    interface DirectSign {
        type: '/cosmos.staking.v1beta1.MsgEditValidator';
        message: BaseMsgEditValidator;
    }
    interface Data extends BaseMsgEditValidator.AsObject {
        '@type': '/cosmos.staking.v1beta1.MsgEditValidator';
    }
    interface Amino extends BaseMsgEditValidator.AsObject {
        type: 'cosmos-sdk/MsgEditValidator';
    }
    interface Web3 extends BaseMsgEditValidator.AsObject {
        '@type': '/cosmos.authz.v1beta1.MsgEditValidator';
    }
    type Proto = BaseMsgEditValidator;
}
/**
 * @group Message
 */
export default class MsgEditValidator extends MsgBase<MsgEditValidator.Params, MsgEditValidator.Data, MsgEditValidator.Proto, MsgEditValidator.Amino, MsgEditValidator.DirectSign> {
    static fromJSON(params: MsgEditValidator.Params): MsgEditValidator;
    toProto(): MsgEditValidator.Proto;
    toData(): MsgEditValidator.Data;
    toAmino(): MsgEditValidator.Amino;
    toWeb3(): MsgEditValidator.Web3;
    toDirectSign(): MsgEditValidator.DirectSign;
}
