import 'package:cw_core/transaction_priority.dart'; import 'package:cw_core/wallet_info.dart'; import 'package:cw_core/unspent_coins_info.dart'; import 'package:cw_core/wallet_service.dart'; import 'package:cw_core/receive_page_option.dart'; import 'package:cw_core/crypto_amount_format.dart'; import 'package:hive/hive.dart'; import 'package:mobx/mobx.dart'; import 'package:intl/intl.dart'; Lightning? lightning; abstract class Lightning { String formatterLightningAmountToString({required int amount}); double formatterLightningAmountToDouble({required int amount}); int formatterStringDoubleToLightningAmount(String amount); WalletService createLightningWalletService( Box walletInfoSource, Box unspentCoinSource); List getLightningReceivePageOptions(); String satsToLightningString(int sats); ReceivePageOption getOptionInvoice(); ReceivePageOption getOptionOnchain(); String bitcoinAmountToLightningString({required int amount}); int bitcoinAmountToLightningAmount({required int amount}); double bitcoinDoubleToLightningDouble({required double amount}); double lightningDoubleToBitcoinDouble({required double amount}); Map getIncomingPayments(Object wallet); void clearIncomingPayments(Object wallet); String lightningTransactionPriorityWithLabel(TransactionPriority priority, int rate, {int? customRate}); List getTransactionPriorities(); TransactionPriority getLightningTransactionPriorityCustom(); int getFeeRate(Object wallet, TransactionPriority priority); int getMaxCustomFeeRate(Object wallet); Future fetchFees(Object wallet); Future calculateEstimatedFeeAsync(Object wallet, TransactionPriority? priority, int? amount); Future getEstimatedFeeWithFeeRate(Object wallet, int feeRate, int? amount); TransactionPriority getDefaultTransactionPriority(); TransactionPriority deserializeLightningTransactionPriority({required int raw}); String getBreezApiKey(); }