import 'account.dart'; class LoginResult { const LoginResult({required this.token, required this.account}); final String token; final Account account; factory LoginResult.fromJson(Map json) { final token = json['token']; final account = json['account']; if (token is! String || token.isEmpty || account is! Map) { throw const FormatException('Unexpected login payload'); } return LoginResult( token: token, account: Account.fromJson(Map.from(account)), ); } }