import { Rpc } from "../../../helpers";
import { MsgStake, MsgStakeResponse, MsgUnstake, MsgUnstakeResponse, MsgUpdateParams, MsgUpdateParamsResponse } from "./tx";
/** Msg defines the restake Msg service. */
export interface Msg {
    /** Stake defines a method for staking coins into the module. */
    stake(request: MsgStake): Promise<MsgStakeResponse>;
    /** Unstake defines a method for unstaking coins out of the module. */
    unstake(request: MsgUnstake): Promise<MsgUnstakeResponse>;
    /** UpdateParams defines a method for updating parameters. */
    updateParams(request: MsgUpdateParams): Promise<MsgUpdateParamsResponse>;
}
export declare class MsgClientImpl implements Msg {
    private readonly rpc;
    constructor(rpc: Rpc);
    stake(request: MsgStake): Promise<MsgStakeResponse>;
    unstake(request: MsgUnstake): Promise<MsgUnstakeResponse>;
    updateParams(request: MsgUpdateParams): Promise<MsgUpdateParamsResponse>;
}
