@chorus-one/ton
Version:
All-in-one tooling for building staking dApps on TON
73 lines (72 loc) • 3.01 kB
TypeScript
import { TonBaseStaker } from './TonBaseStaker';
import { NominatorInfo, UnsignedTx } from './types';
export declare class TonNominatorPoolStaker extends TonBaseStaker {
/**
* Builds a staking (delegation) transaction for Nominator Pool contract.
* For more information see: https://github.com/ton-blockchain/nominator-pool
*
* @param params - Parameters for building the transaction
* @param params.delegatorAddress - The delegator address to stake from
* @param params.validatorAddress - The validator address to stake to
* @param params.amount - The amount to stake, specified in `TON`
* @param params.validUntil - (Optional) The Unix timestamp when the transaction expires
*
* @returns Returns a promise that resolves to a TON nominator pool staking transaction.
*/
buildStakeTx(params: {
delegatorAddress: string;
validatorAddress: string;
amount: string;
validUntil?: number;
}): Promise<{
tx: UnsignedTx;
}>;
/**
* Builds an unstaking (withdraw nominator) transaction for Nominator Pool contract.
* For more information see: https://github.com/ton-blockchain/nominator-pool
*
* @param params - Parameters for building the transaction
* @param params.delegatorAddress - The delegator address
* @param params.validatorAddress - The validator address to unstake from
* @param params.validUntil - (Optional) The Unix timestamp when the transaction expires
*
* @returns Returns a promise that resolves to a TON nominator pool unstaking transaction.
*/
buildUnstakeTx(params: {
delegatorAddress: string;
validatorAddress: string;
validUntil?: number;
}): Promise<{
tx: UnsignedTx;
}>;
/**
* Retrieves the staking information for a specified delegator.
*
* @param params - Parameters for the request
* @param params.delegatorAddress - The delegator (wallet) address
* @param params.validatorAddress - The validator address to gather rewards data from
* @param params.contractType - The validator contract type (single-nominator-pool or nominator-pool)
*
* @returns Returns a promise that resolves to the staking information for the specified delegator.
*/
getStake(params: {
delegatorAddress: string;
validatorAddress: string;
}): Promise<{
balance: string;
}>;
/**
* Retrieves the active nominators for a Nominator Pool contract.
* For more information see: https://github.com/ton-blockchain/nominator-pool
*
* @param params - Parameters for the request
* @param params.validatorAddress - The validator address to gather rewards data from
*
* @returns Returns a promise that resolves to the nominator data for the validator address.
*/
getPoolContractNominators(params: {
validatorAddress: string;
}): Promise<{
nominators: NominatorInfo[];
}>;
}