PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@bitgo/sdk-core/dist/src/bitgo/staking
Просмотр файла: stakingWallet.d.ts
import { DelegationOptions, DelegationResults, IStakingWallet, StakeOptions, StakingPrebuildTransactionResult, StakingRequest, StakingSignedTransaction, StakingSignOptions, StakingTransaction, SwitchValidatorOptions, TransactionsReadyToSign, UnstakeOptions, EthUnstakeOptions, ClaimRewardsOptions } from './iStakingWallet';
import { IWallet, PrebuildTransactionResult } from '../wallet';
import { ITssUtils } from '../utils';
export declare class StakingWallet implements IStakingWallet {
private readonly bitgo;
private tokenParentWallet?;
private readonly isEthTss;
wallet: IWallet;
tssUtil: ITssUtils;
constructor(wallet: IWallet, isEthTss: boolean);
get walletId(): string;
get coin(): string;
/**
* Stake coins
* @param options - stake options
* @return StakingRequest
*/
stake(options: StakeOptions): Promise<StakingRequest>;
/**
* Unstake coins
* @param options - unstake options
* @return StakingRequest
*/
unstake(options: UnstakeOptions | EthUnstakeOptions): Promise<StakingRequest>;
/**
* Submit a request to switch the validator used for a specific delegation
* This will create a new delegation with the new validator address and mark the old delegation as inactive
* @param options - switch validator options
* @return StakingRequest
*/
switchValidator(options: SwitchValidatorOptions): Promise<StakingRequest>;
/**
* Submit a request to claim rewards for a specific delegation
* @param options - claim rewards options
* @return StakingRequest
*/
claimRewards(options: ClaimRewardsOptions): Promise<StakingRequest>;
/**
* Cancel staking request
* @param stakingRequestId - id of the staking request to cancel
* @return StakingRequest
*/
cancelStakingRequest(stakingRequestId: string): Promise<StakingRequest>;
/**
* Fetch delegations for a specific wallet
* @param options - unstake options
* @return StakingRequest
*/
delegations(options: DelegationOptions): Promise<DelegationResults>;
/**
* Get a staking request by ID
* @param stakingRequestId - id of the staking request to retrieve
* @return StakingRequest
*/
getStakingRequest(stakingRequestId: string): Promise<StakingRequest>;
/**
* Get transactions ready to sign
* @param stakingRequestId
* @return TransactionsReadyToSign
*/
getTransactionsReadyToSign(stakingRequestId: string): Promise<TransactionsReadyToSign>;
/**
* Build the staking transaction
* If TSS delete signature shares, else expand build params and then build
* @param transaction - staking transaction to build
*/
build(transaction: StakingTransaction): Promise<StakingPrebuildTransactionResult>;
/**
* Sign the staking transaction
* @param signOptions
* @param stakingPrebuildTransaction
*/
sign(signOptions: StakingSignOptions, stakingPrebuildTransaction: StakingPrebuildTransactionResult): Promise<StakingSignedTransaction>;
/**
* Send the signed staking transaction if required. Send call is not required if api version is full
* and this method will return the staking transaction from the incoming object.
* @param signedTransaction
*/
send(signedTransaction: StakingSignedTransaction): Promise<StakingTransaction>;
/**
* @Deprecated use buildAndSign
* Build, sign and send the transaction.
* @param signOptions
* @param transaction
*/
buildSignAndSend(signOptions: StakingSignOptions, transaction: StakingTransaction): Promise<StakingTransaction>;
/**
* Create prebuilt staking transaction.
*
* for transactions with tx request id (TSS transactions), we need to delete signature shares before creating prebuild transaction
* we only need to get transaction build params if they exist to pre build
*
* @param transaction
*/
prebuildSelfManagedStakingTransaction(transaction: StakingTransaction): Promise<PrebuildTransactionResult>;
/**
* Build and sign the transaction.
* @param signOptions
* @param transaction
*/
buildAndSign(signOptions: StakingSignOptions, transaction: StakingTransaction): Promise<StakingSignedTransaction>;
private expandBuildParams;
private createStakingRequest;
private stakingRequestsURL;
private getDelegations;
private stakingDelegationsURL;
private stakingRequestUrl;
private stakingTransactionURL;
private getWalletForBuildingAndSigning;
/**
* Send API call is only required for TSS TxRequest api version lite or multi-sig transactions.
* For Full api version, sign transaction moves the transaction to delivered state.
* @returns true if send API call to staking service is required else false
*/
private isSendCallRequired;
private getDescriptorWallet;
private validateBuiltStakingTransaction;
}
//# sourceMappingURL=stakingWallet.d.ts.mapВыполнить команду
Для локальной разработки. Не используйте в интернете!