import { ReselectSpendableUTXOsFn } from '../bitcoinUtils/prepareTransaction.mjs';
import { ChainId, TokenId, SDKNumber } from './types.mjs';
import { S as SDKGlobalContext } from '../types.internal-8d3OI2Qm.mjs';
import '../bitcoinUtils/bitcoinHelpers.mjs';
import '@c4/btc-utils';
import '../bitcoinUtils/createTransaction.mjs';
import '@scure/btc-signer';
import '../utils/BigNumber.mjs';
import 'big.js';
import '../utils/typeHelpers.mjs';
import 'viem';
import '../evmUtils/evmContractAddresses.mjs';
import '../utils/types/knownIds.mjs';

interface EstimateBridgeTransactionFromBitcoinInput {
    fromChain: ChainId;
    toChain: ChainId;
    fromToken: TokenId;
    toToken: TokenId;
    fromAddress: string;
    fromAddressScriptPubKey: Uint8Array;
    toAddress: string;
    amount: SDKNumber;
    networkFeeRate: bigint;
    reselectSpendableUTXOs: ReselectSpendableUTXOsFn;
}
interface EstimateBridgeTransactionFromBitcoinOutput {
    fee: SDKNumber;
    estimatedVSize: SDKNumber;
}
declare function estimateBridgeTransactionFromBitcoin(ctx: SDKGlobalContext, info: EstimateBridgeTransactionFromBitcoinInput): Promise<EstimateBridgeTransactionFromBitcoinOutput>;

export { type EstimateBridgeTransactionFromBitcoinInput, type EstimateBridgeTransactionFromBitcoinOutput, estimateBridgeTransactionFromBitcoin };
