import { AddressTxsUtxo, Psbt } from '@saturnbtcio/psbt'; import { Collection, CollectionUtxo, Wallet } from '../../wallet/wallet.dto'; import { BitcoinData, BitcoinMessageRequest } from '../pool.dto'; export interface SplitUtxoResponse { /** * The PSBT of the split rune. */ tx: Psbt; /** * The total amount of the split rune. */ totalAmount: string; /** * The amount of the split rune to receive. */ amountToReceive: string; } export interface SplitRunePsbtRequest extends BitcoinData { paymentWallet: Wallet | undefined; collectionUtxos: Array; collection: Collection; amountIn: bigint; feeRate: bigint; runeToBtcTxVsize: number; } export interface RuneToBtcPsbtRequest extends BitcoinData { amountIn: bigint; amountOut: bigint; exactIn: boolean; feeRate: bigint; poolId: string; splitRunePsbt: string | undefined; } export interface RuneToBtcSwapMessageRequest extends BitcoinMessageRequest { feeRate: bigint; poolId: string; amountIn: bigint; amountOut: bigint; exactIn: boolean; signedPsbt: string; splitRunePsbt: string | undefined; }