import BigNumber from 'bignumber.js'; import { BaseCoin as CoinConfig } from '@bitgo/statics'; import { StacksNetwork } from '@stacks/network'; import { BaseAddress, BaseFee, BaseKey, BaseTransactionBuilder } from '@bitgo/sdk-core'; import { Transaction } from './transaction'; import { KeyPair } from './keyPair'; import { SignatureData } from './iface'; export declare abstract class TransactionBuilder extends BaseTransactionBuilder { private _transaction; protected _anchorMode: number; protected _fee: BaseFee; protected _nonce: number; protected _memo: string; protected _numberSignatures: number; protected _multiSignerKeyPairs: KeyPair[]; protected _signatures: SignatureData[]; protected _network: StacksNetwork; protected _fromPubKeys: string[]; constructor(_coinConfig: Readonly); /** * Initialize the transaction builder fields using the decoded transaction data * * @param {Transaction} tx the transaction data */ initBuilder(tx: Transaction): void; /** @inheritdoc */ protected fromImplementation(rawTransaction: string): Transaction; /** @inheritdoc */ protected buildImplementation(): Promise; private getSignature; private getPrivateKey; /** @inheritdoc */ protected signImplementation(key: BaseKey): Transaction; /** @inheritdoc */ protected get transaction(): Transaction; /** @inheritdoc */ protected set transaction(transaction: Transaction); /** * Validates that the given key is not already in this._multiSignerKeyPairs * * @param {BaseKey} key - The key to check */ private checkDuplicatedKeys; /** * Set the transaction fees * * @param {BaseFee} fee The maximum gas to pay * @returns {TransactionBuilder} This transaction builder */ fee(fee: BaseFee): this; nonce(n: number): this; fromPubKey(senderPubKey: string | string[]): this; /** * Set the memo * * @param {string} memo * @returns {TransactionBuilder} This transaction builder */ memo(memo: string): this; /** * Set the number of signatures for multi-sig * * @param {number} numSigns * @returns {TransactionBuilder} This transaction builder */ numberSignatures(numSigns: number): this; /** @inheritdoc */ validateAddress(address: BaseAddress, addressFormat?: string): void; /** @inheritdoc */ validateKey(key: BaseKey): void; /** @inheritdoc */ validateRawTransaction(rawTransaction: string): void; /** @inheritdoc */ validateTransaction(transaction?: Transaction): void; /** @inheritdoc */ validateValue(value: BigNumber): void; /** * Validates that the fee field is defined */ private validateFee; /** * Validates that nonce is defined */ private validateNonce; } //# sourceMappingURL=transactionBuilder.d.ts.map