UNPKG

@muirglacier/jellyfish-transaction-builder

Version:

A collection of TypeScript + JavaScript tools and libraries for DeFi Blockchain developers to build decentralized finance for Bitcoin

117 lines 5.71 kB
import { Script, TransactionSegWit, SetLoanScheme, DestroyLoanScheme, SetDefaultLoanScheme, SetCollateralToken, SetLoanToken, UpdateLoanToken, CreateVault, UpdateVault, DepositToVault, WithdrawFromVault, CloseVault, TakeLoan, PaybackLoan, PlaceAuctionBid } from '@muirglacier/jellyfish-transaction'; import { P2WPKHTxnBuilder } from './txn_builder'; export declare class TxnBuilderLoans extends P2WPKHTxnBuilder { /** * Create or update a loan scheme. Currently requires Foundation Authorization. * * @param {SetLoanScheme} setLoanScheme txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ setLoanScheme(setLoanScheme: SetLoanScheme, changeScript: Script): Promise<TransactionSegWit>; /** * Destroy a loan scheme. Currently requires Foundation Authorization. * * @param {DestroyLoanScheme} destroyLoanScheme txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ destroyLoanScheme(destroyLoanScheme: DestroyLoanScheme, changeScript: Script): Promise<TransactionSegWit>; /** * Set default loan scheme. Currently requires Foundation Authorization. * * @param {SetDefaultLoanScheme} setDefaultLoanScheme txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ setDefaultLoanScheme(setDefaultLoanScheme: SetDefaultLoanScheme, changeScript: Script): Promise<TransactionSegWit>; /** * Set a collateral token. Currently requires Foundation Authorization. * * @param {SetCollateralToken} setCollateralToken txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ setCollateralToken(setCollateralToken: SetCollateralToken, changeScript: Script): Promise<TransactionSegWit>; /** * Set loan token. Currently requires Foundation Authorization. * * @param {SetLoanToken} setLoanToken txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ setLoanToken(setLoanToken: SetLoanToken, changeScript: Script): Promise<TransactionSegWit>; /** * Update loan token. Currently requires Foundation Authorization. * * @param {UpdateLoanToken} updateLoanToken txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ updateLoanToken(updateLoanToken: UpdateLoanToken, changeScript: Script): Promise<TransactionSegWit>; /** * Creates vault transaction. * * @param {CreateVault} createVault txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ createVault(createVault: CreateVault, changeScript: Script): Promise<TransactionSegWit>; /** * Create update vault transaction. * * @param {UpdateVault} updateVault txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ updateVault(updateVault: UpdateVault, changeScript: Script): Promise<TransactionSegWit>; /** * Deposit to vault transaction. * * @param {DepositToVault} depositToVault txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ depositToVault(depositToVault: DepositToVault, changeScript: Script): Promise<TransactionSegWit>; /** * Withdraw from vault transaction. * * @param {withdrawFromVault} withdrawFromVault txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ withdrawFromVault(withdrawFromVault: WithdrawFromVault, changeScript: Script): Promise<TransactionSegWit>; /** * Close a vault. * * @param {CloseVault} closeVault txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ closeVault(closeVault: CloseVault, changeScript: Script): Promise<TransactionSegWit>; /** * Take loan transaction. * * @param {TakeLoan} takeLoan txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ takeLoan(takeLoan: TakeLoan, changeScript: Script): Promise<TransactionSegWit>; /** * PaybackLoan to vault transaction. * * @param {PaybackLoan} paybackLoan txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ paybackLoan(paybackLoan: PaybackLoan, changeScript: Script): Promise<TransactionSegWit>; /** * placeAuctionBid transaction. * * @param {PlaceAuctionBid} placeAuctionBid txn to create * @param {Script} changeScript to send unspent to after deducting the (converted + fees) * @returns {Promise<TransactionSegWit>} */ placeAuctionBid(placeAuctionBid: PlaceAuctionBid, changeScript: Script): Promise<TransactionSegWit>; } //# sourceMappingURL=txn_builder_loans.d.ts.map