import { AccountToAccount, AccountToUtxos, UtxosToAccount, SetFutureSwap, Script, TransactionSegWit, TransferDomain } from '@defichain/jellyfish-transaction'; import { P2WPKHTxnBuilder } from './txn_builder'; import { Prevout } from '../provider'; export declare class TxnBuilderAccount extends P2WPKHTxnBuilder { /** * Requires UTXO in the same amount + fees to create a transaction. * * @param {UtxosToAccount} utxosToAccount txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @throws {TxnBuilderError} if 'utxosToAccount.to' length is less than `1` * @throws {TxnBuilderError} if 'utxosToAccount.to[any].balances' length is not `1` * @throws {TxnBuilderError} if 'utxosToAccount.to[any].balances[0].token' is not `0`\ * @returns {Promise} */ utxosToAccount(utxosToAccount: UtxosToAccount, changeScript: Script): Promise; /** * * @param {AccountToUtxos} accountToUtxos txn to create * @param {Script} destinationScript vout destination, for both utxos minted and change after deducted fee * @throws {TxnBuilderError} if 'accountToUtxos.balances' length is not `1` * @throws {TxnBuilderError} if 'accountToUtxos.balances[0].token' is not `0` * @throws {TxnBuilderError} if 'accountToUtxos.mintingOutputsStart' is not `2`, vout[0] = DfTx, vout[1] = change, vout[2] = new minted utxos * @returns {Promise} */ accountToUtxos(accountToUtxos: AccountToUtxos, destinationScript: Script): Promise; accountToAccount(accountToAccount: AccountToAccount, changeScript: Script): Promise; /** * FutureSwap transaction. * * @param {SetFutureSwap} futureSwap txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise} */ futureSwap(futureSwap: SetFutureSwap, changeScript: Script): Promise; /** * TransferDomain transaction. * * @param {TransferDomain} transferDomain txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @param {Prevout[]} utxos to be speficically provided if needed * @returns {Promise} */ transferDomain(transferDomain: TransferDomain, changeScript: Script, utxos?: Prevout[]): Promise; } //# sourceMappingURL=txn_builder_account.d.ts.map