import 'package:rxdart/rxdart.dart'; import 'package:cake_wallet/src/domain/common/sync_status.dart'; import 'package:cake_wallet/src/domain/common/transaction_history.dart'; import 'package:cake_wallet/src/domain/common/wallet_type.dart'; import 'package:cake_wallet/src/domain/common/transaction_creation_credentials.dart'; import 'package:cake_wallet/src/domain/common/pending_transaction.dart'; import 'package:cake_wallet/src/domain/common/balance.dart'; import 'package:cake_wallet/src/domain/common/node.dart'; abstract class Wallet { WalletType getType(); WalletType walletType; Observable onBalanceChange; Observable syncStatus; Observable get onNameChange; Observable get onAddressChange; String get name; String get address; Future updateInfo(); Future getFilename(); Future getName(); Future getAddress(); Future getSeed(); Future> getKeys(); Future getFullBalance(); Future getUnlockedBalance(); Future getCurrentHeight(); Future getNodeHeight(); Future isConnected(); Future close(); TransactionHistory getHistory(); Future connectToNode({Node node, bool useSSL = false, bool isLightWallet = false}); Future startSync(); Future createTransaction( TransactionCreationCredentials credentials); Future rescan({int restoreHeight = 0}); }