import * as btc from '@scure/btc-signer'; import { P2TROut } from '@scure/btc-signer/payment'; import { UtxoWithTx } from '../api'; import { BitcoinNetwork } from '../constants'; import { SpendableByScriptTypes } from '../utils'; export declare const DEFAULT_RECLAIM_LOCK_TIME = 950; export declare const DEFAULT_MAX_SIGNER_FEE = 80000; export declare const UNSPENDABLE_PUB: Uint8Array; export declare function buildSbtcDepositScript(opts: { maxSignerFee: number; stacksAddress: string; signersPublicKey: string; }): Uint8Array; export declare function buildSbtcReclaimScript(opts: { reclaimLockTime: number; reclaimPublicKey: string; }): Uint8Array; export declare function buildSbtcDepositTr(opts: { network: BitcoinNetwork; stacksAddress: string; signersPublicKey: string; maxSignerFee: number; reclaimLockTime: number; reclaimPublicKey: string; }): { depositScript: string; reclaimScript: string; trOut: P2TROut; }; export declare function buildSbtcReclaimTx({ network, amountSats, bitcoinAddress, stacksAddress, signersPublicKey, maxSignerFee, reclaimLockTime, reclaimPublicKey, txid, vout, feeRate, }: { network?: BitcoinNetwork; amountSats: number | bigint; bitcoinAddress: string; stacksAddress: string; signersPublicKey: string; maxSignerFee?: number; reclaimLockTime?: number; reclaimPublicKey: string; txid: string; vout?: number; feeRate: number; }): btc.Transaction; export declare function buildSbtcDepositAddress({ network, stacksAddress, signersPublicKey, maxSignerFee, reclaimLockTime, reclaimPublicKey, }: { network: BitcoinNetwork; stacksAddress: string; signersPublicKey: string; maxSignerFee?: number; reclaimLockTime?: number; reclaimPublicKey: string; }): { depositScript: string; reclaimScript: string; trOut: P2TROut; address: string; }; export declare function buildSbtcDepositTx({ network, amountSats, stacksAddress, signersPublicKey, maxSignerFee, reclaimLockTime, reclaimPublicKey, }: { network: BitcoinNetwork; amountSats: number | bigint; stacksAddress: string; signersPublicKey: string; maxSignerFee: number; reclaimLockTime: number; reclaimPublicKey: string; }): { depositScript: string; reclaimScript: string; trOut: P2TROut; address: string; transaction: btc.Transaction; }; export declare function sbtcDepositHelper({ network, amountSats, stacksAddress, bitcoinChangeAddress, signersPublicKey, feeRate, utxos, utxoToSpendable, paymentPublicKey, reclaimPublicKey, maxSignerFee, reclaimLockTime, }: { network?: BitcoinNetwork; signersPublicKey: string; amountSats: number; stacksAddress: string; bitcoinChangeAddress: string; reclaimPublicKey: string; feeRate: number; utxos: UtxoWithTx[]; utxoToSpendable?: Partial; maxSignerFee?: number; reclaimLockTime?: number; paymentPublicKey?: string; }): Promise<{ depositScript: string; reclaimScript: string; trOut: P2TROut; address: string; transaction: btc.Transaction; }>;