"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.useUpdateParams = exports.useCancelUnbondingDelegation = exports.useUndelegate = exports.useBeginRedelegate = exports.useDelegate = exports.useEditValidator = exports.useCreateValidator = void 0;
const vue_query_1 = require("../../../vue-query");
const tx_rpc_func_1 = require("./tx.rpc.func");
/**
 * CreateValidator defines a method for creating a new validator.
 * @name useCreateValidator
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.CreateValidator
 */
exports.useCreateValidator = (0, vue_query_1.buildUseVueMutation)({
    builderMutationFn: tx_rpc_func_1.createValidator
});
/**
 * EditValidator defines a method for editing an existing validator.
 * @name useEditValidator
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.EditValidator
 */
exports.useEditValidator = (0, vue_query_1.buildUseVueMutation)({
    builderMutationFn: tx_rpc_func_1.editValidator
});
/**
 * Delegate defines a method for performing a delegation of coins
 * from a delegator to a validator.
 * @name useDelegate
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.Delegate
 */
exports.useDelegate = (0, vue_query_1.buildUseVueMutation)({
    builderMutationFn: tx_rpc_func_1.delegate
});
/**
 * BeginRedelegate defines a method for performing a redelegation
 * of coins from a delegator and source validator to a destination validator.
 * @name useBeginRedelegate
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.BeginRedelegate
 */
exports.useBeginRedelegate = (0, vue_query_1.buildUseVueMutation)({
    builderMutationFn: tx_rpc_func_1.beginRedelegate
});
/**
 * Undelegate defines a method for performing an undelegation from a
 * delegate and a validator.
 * @name useUndelegate
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.Undelegate
 */
exports.useUndelegate = (0, vue_query_1.buildUseVueMutation)({
    builderMutationFn: tx_rpc_func_1.undelegate
});
/**
 * CancelUnbondingDelegation defines a method for performing canceling the unbonding delegation
 * and delegate back to previous validator.
 * @name useCancelUnbondingDelegation
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.CancelUnbondingDelegation
 */
exports.useCancelUnbondingDelegation = (0, vue_query_1.buildUseVueMutation)({
    builderMutationFn: tx_rpc_func_1.cancelUnbondingDelegation
});
/**
 * UpdateParams defines an operation for updating the x/staking module
 * parameters.
 * @name useUpdateParams
 * @package cosmos.staking.v1beta1
 * @see proto service: cosmos.staking.v1beta1.UpdateParams
 */
exports.useUpdateParams = (0, vue_query_1.buildUseVueMutation)({
    builderMutationFn: tx_rpc_func_1.updateParams
});
