import 'package:flutter/foundation.dart'; import 'package:cw_core/crypto_currency.dart'; import 'package:cake_wallet/exchange/trade_request.dart'; import 'package:cake_wallet/exchange/exchange_pair.dart'; import 'package:cake_wallet/exchange/limits.dart'; import 'package:cake_wallet/exchange/trade.dart'; import 'package:cake_wallet/exchange/exchange_provider_description.dart'; abstract class ExchangeProvider { ExchangeProvider({this.pairList}); String get title; List pairList; ExchangeProviderDescription description; bool get isAvailable; @override String toString() => title; Future fetchLimits( {CryptoCurrency from, CryptoCurrency to, bool isFixedRateMode}); Future createTrade({TradeRequest request, bool isFixedRateMode}); Future findTradeById({@required String id}); Future calculateAmount({CryptoCurrency from, CryptoCurrency to, double amount, bool isFixedRateMode, bool isReceiveAmount}); Future checkIsAvailable(); }