@caminojs-nikos/caminojs
Version:
Camino Platform JS Library
371 lines • 31 kB
TypeScript
/**
* @packageDocumentation
* @module API-PlatformVM-Builder
*/
import BN from "bn.js";
import { Buffer } from "buffer/";
import { OutputOwners } from "../../common";
import { AssetAmountDestination, ClaimAmountParams, MultisigAliasParams, UnsignedTx, UTXO } from ".";
import { GenesisData } from "../avm";
import { Offer } from "../../apis/platformvm/adddepositoffertx";
export type LockMode = "Unlocked" | "Bond" | "Deposit" | "Stake";
export interface MinimumSpendable {
getMinimumSpendable(aad: AssetAmountDestination, asOf: BN, locktime: BN, lockMode: LockMode): Promise<Error>;
}
export type FromSigner = {
from: Buffer[];
signer: Buffer[];
};
export type NodeOwner = {
address: Buffer;
auth: [number, Buffer][];
};
export type Auth = {
addresses: Buffer[];
threshold: number;
signer: [number, Buffer][];
};
export declare class Builder {
spender: MinimumSpendable;
caminoEnabled: boolean;
constructor(spender: MinimumSpendable, caminoEnabled: boolean);
/**
* Creates an [[UnsignedTx]] wrapping a [[BaseTx]]. For more granular control, you may create your own
* [[UnsignedTx]] wrapping a [[BaseTx]] manually (with their corresponding [[TransferableInput]]s and [[TransferableOutput]]s).
*
* @param networkID The number representing NetworkID of the node
* @param blockchainID The {@link https://github.com/feross/buffer|Buffer} representing the BlockchainID for the transaction
* @param amount The amount of the asset to be spent in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}.
* @param assetID {@link https://github.com/feross/buffer|Buffer} of the asset ID for the UTXO
* @param toAddresses The addresses to send the funds
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses Optional. The addresses that can spend the change remaining from the spent UTXOs. Default: toAddresses
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned. Default: assetID
* @param memo Optional. Contains arbitrary data, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param locktime Optional. The locktime field created in the resulting outputs
* @param toThreshold Optional. The number of signatures required to spend the funds in the resultant UTXO
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned transaction created from the passed in parameters.
*
*/
buildBaseTx: (networkID: number, blockchainID: Buffer, amount: BN, amountAssetID: Buffer, toAddresses: Buffer[], fromSigner: FromSigner, changeAddresses?: Buffer[], fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, lockTime?: BN, toThreshold?: number, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Creates an unsigned ImportTx transaction.
*
* @param networkID The number representing NetworkID of the node
* @param blockchainID The {@link https://github.com/feross/buffer|Buffer} representing the BlockchainID for the transaction
* @param toAddresses The addresses to send the funds
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses Optional. The addresses that can spend the change remaining from the spent UTXOs. Default: toAddresses
* @param importIns An array of [[TransferableInput]]s being imported
* @param sourceChain A {@link https://github.com/feross/buffer|Buffer} for the chainid where the imports are coming from.
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}. Fee will come from the inputs first, if they can.
* @param feeAssetID Optional. The assetID of the fees being burned.
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param locktime Optional. The locktime field created in the resulting outputs
* @param toThreshold Optional. The number of signatures required to spend the funds in the received UTXO
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned transaction created from the passed in parameters.
*
*/
buildImportTx: (networkID: number, blockchainID: Buffer, toAddresses: Buffer[], fromSigner: FromSigner, changeAddresses: Buffer[], atomics: UTXO[], sourceChain?: Buffer, fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, locktime?: BN, toThreshold?: number, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Creates an unsigned ExportTx transaction.
*
* @param networkID The number representing NetworkID of the node
* @param blockchainID The {@link https://github.com/feross/buffer|Buffer} representing the BlockchainID for the transaction
* @param amount The amount being exported as a {@link https://github.com/indutny/bn.js/|BN}
* @param avaxAssetID {@link https://github.com/feross/buffer|Buffer} of the asset ID for AVAX
* @param toAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} who recieves the AVAX
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} who gets the change leftover of the AVAX
* @param destinationChain Optional. A {@link https://github.com/feross/buffer|Buffer} for the chainid where to send the asset.
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned.
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param locktime Optional. The locktime field created in the resulting outputs
* @param toThreshold Optional. The number of signatures required to spend the funds in the received UTXO
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned transaction created from the passed in parameters.
*
*/
buildExportTx: (networkID: number, blockchainID: Buffer, amount: BN, amountAssetID: Buffer, toAddresses: Buffer[], fromSigner: FromSigner, destinationChain: Buffer, changeAddresses?: Buffer[], fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, locktime?: BN, toThreshold?: number, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Class representing an unsigned [[AddSubnetValidatorTx]] transaction.
*
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} who gets the change leftover from the fee payment
* @param nodeID The node ID of the validator being added.
* @param startTime The Unix time when the validator starts validating the Primary Network.
* @param endTime The Unix time when the validator stops validating the Primary Network (and staked AVAX is returned).
* @param weight The amount of weight for this subnet validator.
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned.
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param subnetAuth Optional. An Auth struct which contains the subnet Auth and the signers.
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned transaction created from the passed in parameters.
*/
buildAddSubnetValidatorTx: (networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], nodeID: Buffer, startTime: BN, endTime: BN, weight: BN, subnetID: string, fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, subnetAuth?: Auth, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Class representing an unsigned [[AddDelegatorTx]] transaction.
*
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param avaxAssetID {@link https://github.com/feross/buffer|Buffer} of the asset ID for AVAX
* @param toAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} recieves the stake at the end of the staking period
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} who gets the change leftover from the staking payment
* @param nodeID The node ID of the validator being added.
* @param startTime The Unix time when the validator starts validating the Primary Network.
* @param endTime The Unix time when the validator stops validating the Primary Network (and staked AVAX is returned).
* @param stakeAmount A {@link https://github.com/indutny/bn.js/|BN} for the amount of stake to be delegated in nAVAX.
* @param rewardLocktime The locktime field created in the resulting reward outputs
* @param rewardThreshold The number of signatures required to spend the funds in the resultant reward UTXO
* @param rewardAddresses The addresses the validator reward goes.
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned.
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param toThreshold Optional. The number of signatures required to spend the funds in the stake UTXO
* @param changeThreshold Optional. The number of signatures required to spend the funds in the change UTXO
*
* @returns An unsigned transaction created from the passed in parameters.
*/
buildAddDelegatorTx: (networkID: number, blockchainID: Buffer, avaxAssetID: Buffer, toAddresses: Buffer[], fromSigner: FromSigner, changeAddresses: Buffer[], nodeID: Buffer, startTime: BN, endTime: BN, stakeAmount: BN, rewardLocktime: BN, rewardThreshold: number, rewardAddresses: Buffer[], fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, toThreshold?: number, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Class representing an unsigned [[AddValidatorTx]] transaction.
*
* @param networkID NetworkID, [[DefaultNetworkID]]
* @param blockchainID BlockchainID, default undefined
* @param avaxAssetID {@link https://github.com/feross/buffer|Buffer} of the asset ID for AVAX
* @param toAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} recieves the stake at the end of the staking period
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} who gets the change leftover from the staking payment
* @param nodeID The node ID of the validator being added.
* @param startTime The Unix time when the validator starts validating the Primary Network.
* @param endTime The Unix time when the validator stops validating the Primary Network (and staked AVAX is returned).
* @param stakeAmount A {@link https://github.com/indutny/bn.js/|BN} for the amount of stake to be delegated in nAVAX.
* @param rewardLocktime The locktime field created in the resulting reward outputs
* @param rewardThreshold The number of signatures required to spend the funds in the resultant reward UTXO
* @param rewardAddresses The addresses the validator reward goes.
* @param delegationFee A number for the percentage of reward to be given to the validator when someone delegates to them. Must be between 0 and 100.
* @param minStake A {@link https://github.com/indutny/bn.js/|BN} representing the minimum stake required to validate on this network.
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned.
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param toThreshold Optional. The number of signatures required to spend the funds in the stake UTXO
* @param changeThreshold Optional. The number of signatures required to spend the funds in the change UTXO
*/
buildAddValidatorTx: (networkID: number, blockchainID: Buffer, toAddresses: Buffer[], fromSigner: FromSigner, changeAddresses: Buffer[], nodeID: Buffer, startTime: BN, endTime: BN, stakeAmount: BN, stakeAssetID: Buffer, rewardLocktime: BN, rewardThreshold: number, rewardAddresses: Buffer[], delegationFee: number, fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, toThreshold?: number, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Class representing an unsigned [[CreateSubnetTx]] transaction.
*
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses The addresses that can spend the change remaining from the spent UTXOs.
* @param subnetOwnerAddresses An array of {@link https://github.com/feross/buffer|Buffer} for the addresses to add to a subnet
* @param subnetOwnerThreshold The number of owners's signatures required to add a validator to the network
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned transaction created from the passed in parameters.
*/
buildCreateSubnetTx: (networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], subnetOwnerAddresses: Buffer[], subnetOwnerThreshold: number, fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Build an unsigned [[CreateChainTx]].
*
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses The addresses that can spend the change remaining from the spent UTXOs.
* @param subnetID Optional ID of the Subnet that validates this blockchain
* @param chainName Optional A human readable name for the chain; need not be unique
* @param vmID Optional ID of the VM running on the new chain
* @param fxIDs Optional IDs of the feature extensions running on the new chain
* @param genesisData Optional Byte representation of genesis state of the new chain
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param subnetAuth Optional. An Auth struct to sign for the Subnet.
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned CreateChainTx created from the passed in parameters.
*/
buildCreateChainTx: (networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], subnetID?: string | Buffer, chainName?: string, vmID?: string, fxIDs?: string[], genesisData?: string | GenesisData, fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, subnetAuth?: Auth, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Helper function which creates an unsigned [[CaminoAddValidatorTx]]. For more granular control, you may create your own
* [[UnsignedTx]] manually and import the [[CaminoAddValidatorTx]] class directly.
*
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param toAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} who received the staked tokens at the end of the staking period
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses An array of addresses as {@link https://github.com/feross/buffer|Buffer} who gets the change leftover from the fee payment
* @param nodeID The node ID of the validator being added.
* @param nodeOwner The address and signature indices of the registered nodeId owner.
* @param startTime The Unix time when the validator starts validating the Primary Network.
* @param endTime The Unix time when the validator stops validating the Primary Network (and staked AVAX is returned).
* @param stakeAmount The amount being delegated as a {@link https://github.com/indutny/bn.js/|BN}
* @param rewardAddresses The addresses which will recieve the rewards from the delegated stake.
* @param rewardLocktime Optional. The locktime field created in the resulting reward outputs
* @param rewardThreshold Opional. The number of signatures required to spend the funds in the resultant reward UTXO. Default 1.
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param toThreshold Optional. The number of signatures required to spend the funds in the received UTXO
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned transaction created from the passed in parameters.
*/
buildCaminoAddValidatorTx: (networkID: number, blockchainID: Buffer, to: Buffer[], fromSigner: FromSigner, change: Buffer[], nodeID: Buffer, nodeOwner: NodeOwner, startTime: BN, endTime: BN, stakeAmount: BN, stakeAssetID: Buffer, rewards: Buffer[], rewardLocktime?: BN, rewardThreshold?: number, memo?: Buffer, asOf?: BN, toThreshold?: number, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Build an unsigned [[AddressStateTx]].
*
* @param version Optional. Transaction version number, default 0.
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses The addresses that can spend the change remaining from the spent UTXOs.
* @param address The address to alter state.
* @param state The state to set or remove on the given address
* @param remove Optional. Flag if state should be applied or removed
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned AddressStateTx created from the passed in parameters.
*/
buildAddressStateTx: (version: number, networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], address: Buffer, state: number, remove?: boolean, fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, changeThreshold?: number, executorAddress?: Buffer, executorAuth?: [number, Buffer][]) => Promise<UnsignedTx>;
/**
* Build an unsigned [[RegisterNodeTx]].
*
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses The addresses that can spend the change remaining from the spent UTXOs.
* @param oldNodeID Optional. ID of the existing NodeID to replace or remove.
* @param newNodeID Optional. ID of the newNodID to register address.
* @param address The consortiumMemberAddress, single or multi-sig.
* @param addressAuths An array of index and address to verify ownership of address.
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned RegisterNodeTx created from the passed in parameters.
*/
buildRegisterNodeTx: (networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], oldNodeID?: Buffer, newNodeID?: Buffer, address?: Buffer, addressAuths?: [number, Buffer][], fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Build an unsigned [[DepositTx]].
*
* @param version Optional. Transaction version number, default 0.
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses The addresses that can spend the change remaining from the spent UTXOs.
* @param depositOfferID ID of the deposit offer.
* @param depositDuration Duration of the deposit
* @param rewardsOwner Optional The owners of the reward. If omitted, all inputs must have the same owner
* @param depositCreatorAddress Address that is authorized to create deposit with given offer. Could be empty, if offer owner is empty.
* @param depositCreatorAuth Auth for deposit creator address
* @param depositOfferOwnerSigs Signatures which recover to depositOfferOwner address(es)
* @param depositOfferOwnerAuth Auth for deposit offer owner
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned DepositTx created from the passed in parameters.
*/
buildDepositTx: (version: number, networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], depositOfferID: Buffer, depositDuration: number, rewardsOwner: OutputOwners, depositCreatorAddress: Buffer, depositCreatorAuth: [number, Buffer][], depositOfferOwnerSigs: Buffer[], depositOfferOwnerAuth: [number, Buffer][], fee: BN, feeAssetID: Buffer, memo: Buffer, asOf: BN, amountToLock: BN, changeThreshold?: number, to?: Buffer[], toThreshold?: number) => Promise<UnsignedTx>;
/**
* Build an unsigned [[UnlockDepositTx]].
*
* @param networkID Networkid, [[DefaultNetworkID]]
* @param blockchainID Blockchainid, default undefined
* @param fromSigner @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses The addresses that can spend the change remaining from the spent UTXOs.
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned UnlockDepositTx created from the passed in parameters.
*/
buildUnlockDepositTx: (networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, changeThreshold?: number) => Promise<UnsignedTx>;
/**
* Build an unsigned [[ClaimTx]].
*
* @param networkID NetworkID, [[DefaultNetworkID]]
* @param blockchainID BlockchainID, default undefined
* @param fromSigner @param fromSigner The addresses being used to send and verify the funds from the UTXOs {@link https://github.com/feross/buffer|Buffer}
* @param changeAddresses The addresses that can spend the change remaining from the spent UTXOs.
* @param fee Optional. The amount of fees to burn in its smallest denomination, represented as {@link https://github.com/indutny/bn.js/|BN}
* @param feeAssetID Optional. The assetID of the fees being burned
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional. The timestamp to verify the transaction against as a {@link https://github.com/indutny/bn.js/|BN}
* @param changeThreshold Optional. The number of signatures required to spend the funds in the resultant change UTXO
* @param claimAmounts The specification and authentication what and how much to claim
* @param claimTo The address to claimed rewards will be directed to
*
* @returns An unsigned ClaimTx created from the passed in parameters.
*/
buildClaimTx: (networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], fee: BN, feeAssetID: Buffer, memo: Buffer, asOf: BN, changeThreshold: number, claimAmounts: ClaimAmountParams[], claimTo?: OutputOwners) => Promise<UnsignedTx>;
/**
* Build an unsigned [[MultisigAliasTx]].
*
* @param networkID Network ID, default [[DefaultNetworkID]]
* @param blockchainID Blockchain ID, default undefined
* @param fromSigner The addresses being used to send and verify the funds from the UTXOs
* @param changeAddresses The addresses that can spend the change remaining from the spent UTXOs
* @param multisigAliasParams Parameters of MultisigAliasTx. multisigAliasParams.ID must be empty if it's the new alias
* @param fee Optional amount of fees to burn in its smallest denomination, represented as BN
* @param feeAssetID Optional asset ID of the fees being burned
* @param memo Optional contains arbitrary bytes, up to 256 bytes
* @param asOf Optional timestamp to verify the transaction against, as BN
* @param changeThreshold Optional number of signatures required to spend the funds in the resultant change UTXO
*
* @returns An unsigned MultisigAliasTx created from the passed-in parameters.
*/
buildMultisigAliasTx: (networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], multisigAliasParams: MultisigAliasParams, fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, changeThreshold?: number) => Promise<UnsignedTx>;
_feeCheck(fee: BN, feeAssetID: Buffer): boolean;
/**
* Build an unsigned [[AddDepositOfferTx]].
*
* @param networkID
* @param blockchainID
* @param fromSigner
* @param changeAddresses
* @param depositOffer
* @param depositOfferCreatorAddress
* @param depositOfferCreatorAuth
* @param fee
* @param feeAssetID
* @param memo
* @param asOf
* @param changeThreshold
*/
buildAddDepositOfferTx: (networkID: number, blockchainID: Buffer, fromSigner: FromSigner, changeAddresses: Buffer[], offer: Offer, depositOfferCreatorAddress: Buffer, depositOfferCreatorAuth?: [number, Buffer][], fee?: BN, feeAssetID?: Buffer, memo?: Buffer, asOf?: BN, changeThreshold?: number) => Promise<UnsignedTx>;
}
//# sourceMappingURL=builder.d.ts.map