import 'package:hash_wallet/entities/hardware_wallet/hardware_wallet_device.dart'; import 'package:cw_core/hardware/hardware_wallet_service.dart'; import 'package:cw_core/wallet_base.dart'; import 'package:cw_core/wallet_info.dart'; import 'package:cw_core/wallet_type.dart'; abstract class HardwareWalletViewModel { HardwareWalletType get hardwareWalletType; bool get isConnected; bool get isBleEnabled; bool get hasBluetooth; Future updateBleState(); Stream scanForBleDevices(); Future> getAllUsbDevices(); Future stopScanning(); Future connectDevice(HardwareWalletDevice device, WalletType type); HardwareWalletService getHardwareWalletService(WalletType type); Future initWallet(WalletBase wallet); String? interpretErrorCode(String error) => null; }