"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.updateParams = exports.cancelUnbondingDelegation = exports.undelegate = exports.beginRedelegate = exports.delegate = exports.editValidator = exports.createValidator = void 0;
const helper_func_types_1 = require("../../../helper-func-types");
const tx_1 = require("./tx");
/**
 * CreateValidator defines a method for creating a new validator.
 * @name createValidator
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.CreateValidator
 */
exports.createValidator = (0, helper_func_types_1.buildTx)({
    msg: tx_1.MsgCreateValidator
});
/**
 * EditValidator defines a method for editing an existing validator.
 * @name editValidator
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.EditValidator
 */
exports.editValidator = (0, helper_func_types_1.buildTx)({
    msg: tx_1.MsgEditValidator
});
/**
 * Delegate defines a method for performing a delegation of coins
 * from a delegator to a validator.
 * @name delegate
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.Delegate
 */
exports.delegate = (0, helper_func_types_1.buildTx)({
    msg: tx_1.MsgDelegate
});
/**
 * BeginRedelegate defines a method for performing a redelegation
 * of coins from a delegator and source validator to a destination validator.
 * @name beginRedelegate
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.BeginRedelegate
 */
exports.beginRedelegate = (0, helper_func_types_1.buildTx)({
    msg: tx_1.MsgBeginRedelegate
});
/**
 * Undelegate defines a method for performing an undelegation from a
 * delegate and a validator.
 * @name undelegate
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.Undelegate
 */
exports.undelegate = (0, helper_func_types_1.buildTx)({
    msg: tx_1.MsgUndelegate
});
/**
 * CancelUnbondingDelegation defines a method for performing canceling the unbonding delegation
 * and delegate back to previous validator.
 * @name cancelUnbondingDelegation
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.CancelUnbondingDelegation
 */
exports.cancelUnbondingDelegation = (0, helper_func_types_1.buildTx)({
    msg: tx_1.MsgCancelUnbondingDelegation
});
/**
 * UpdateParams defines an operation for updating the x/staking module
 * parameters.
 * @name updateParams
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.UpdateParams
 */
exports.updateParams = (0, helper_func_types_1.buildTx)({
    msg: tx_1.MsgUpdateParams
});
