import 'package:cake_wallet/buy/buy_amount.dart'; import 'package:cake_wallet/buy/buy_provider_description.dart'; import 'package:cake_wallet/buy/order.dart'; import 'package:cw_core/wallet_base.dart'; import 'package:cw_core/wallet_type.dart'; abstract class BuyProvider { BuyProvider({this.wallet, this.isTestEnvironment}); final WalletBase wallet; final bool isTestEnvironment; String get title; BuyProviderDescription get description; String get trackUrl; WalletType get walletType => wallet.type; String get walletAddress => wallet.walletAddresses.address; String get walletId => wallet.id; @override String toString() => title; Future requestUrl(String amount, String sourceCurrency); Future findOrderById(String id); Future calculateAmount(String amount, String sourceCurrency); }