import { BaseCoin as CoinConfig } from '@bitgo-beta/statics'; import { DecodedSignedTx, DecodedSigningPayload, UnsignedTransaction } from '@substrate/txwrapper-core'; import { BaseAddress, TransactionType } from '@bitgo-beta/sdk-core'; import { StakeArgsPayee } from './iface'; import { Transaction } from './transaction'; import { TransactionBuilder } from './transactionBuilder'; export declare class StakingBuilder extends TransactionBuilder { protected _amount: string; protected _controller: string; protected _payee: StakeArgsPayee; constructor(_coinConfig: Readonly); /** * Take the origin account as a stash and lock up value of its balance. * Controller will be the account that controls it. * * @returns {UnsignedTransaction} an unsigned Dot transaction * * @see https://polkadot.js.org/docs/substrate/extrinsics/#staking */ protected buildTransaction(): UnsignedTransaction; protected get transactionType(): TransactionType; /** * The amount to stake. * * @param {string} amount * @returns {StakeBuilder} This staking builder. * * @see https://wiki.polkadot.network/docs/learn-nominator#required-minimum-stake */ amount(amount: string): this; /** * The controller of the staked amount. * * @param {string} controller * @returns {StakeBuilder} This staking builder. * * @see https://wiki.polkadot.network/docs/learn-staking#accounts */ owner(controller: BaseAddress): this; /** * The rewards destination of the staked amount. * Can be set to another accounts address. * * @param {string} payee * @returns {StakeBuilder} This staking builder. * * @see https://wiki.polkadot.network/docs/learn-staking#4-rewards-mechanism */ payee(payee: StakeArgsPayee): this; /** @inheritdoc */ validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx): void; /** @inheritdoc */ protected fromImplementation(rawTransaction: string): Transaction; /** @inheritdoc */ validateTransaction(_: Transaction): void; private validateFields; } //# sourceMappingURL=stakingBuilder.d.ts.map