UNPKG

@ardier16/q-js-sdk

Version:

Typescript Library to interact with Q System Contracts

93 lines 4.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ValidationRewardPoolsInstance = void 0; const SystemContractInstance_1 = require("../SystemContractInstance"); /** * Validation reward pools instance to interact with Validation reward pools contract. * See [onchain documentation](@system-contracts-repo/@network/ValidationRewardPools/) for more details. * An instance of this class for a deployed network can be obtained via {@link ContractRegistryInstance.validationRewardPools} */ class ValidationRewardPoolsInstance extends SystemContractInstance_1.SystemContractInstance { constructor(web3, address) { super(web3, 'ValidationRewardPools.json', address); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#validatorproperties) */ async validatorProperties(address) { return this.instance.methods.validatorsProperties(address).call(); } /** * Checks whether a user has CompoundRateKeeper * @param address user * @returns CRKeeper existence for given address */ async compoundRateKeeperExists(address) { const properties = await this.validatorProperties(address); return properties.compoundRate != this.adapter.ZERO_ADDRESS; } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#setdelegatorsshare) */ async setDelegatorsShare(qsv, txOptions) { return this.submitTransaction(this.instance.methods.setDelegatorsShare(qsv), txOptions); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#increase) */ async increase(address, txOptions) { return this.submitTransaction(this.instance.methods.increase(address), txOptions); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#updatevalidatorscompoundrate) */ async updateValidatorsCompoundRate(address, txOptions) { return this.submitTransaction(this.instance.methods.updateValidatorsCompoundRate(address), txOptions); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#reserveadditionalfunds) */ async reserveAdditionalFunds(validator, txOptions) { return this.submitTransaction(this.instance.methods.reserveAdditionalFunds(validator), txOptions); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#getcompoundrate) */ async getCompoundRate(address) { return this.instance.methods.getCompoundRate(address).call(); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#getlastupdateofcompoundrate) */ async getLastUpdateOfCompoundRate(address) { return this.instance.methods.getLastUpdateOfCompoundRate(address).call(); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#getbalance) */ async getValidatorBalance(address) { return this.instance.methods.getBalance(address).call(); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#getdelegatedstake) */ async getDelegatedStake(address) { return this.instance.methods.getDelegatedStake(address).call(); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#getdelegatorsshare) */ async getDelegatorsShare(address) { return this.instance.methods.getDelegatorsShare(address).call(); } /** * [External documentation](@system-contracts-repo/@network/ValidationRewardPools/#getpoolinfo) */ async getPoolInfo(address) { const poolInfo = await this.instance.methods.getPoolInfo(address).call(); return poolInfo; } } exports.ValidationRewardPoolsInstance = ValidationRewardPoolsInstance; ValidationRewardPoolsInstance.registryKey = 'tokeneconomics.validationRewardPools'; //# sourceMappingURL=ValidationRewardPoolsInstance.js.map