mirror of
https://github.com/Mercantec-GHC/h4-projekt-gruppe-0-sm.git
synced 2025-04-28 00:34:06 +02:00
38 lines
842 B
Dart
38 lines
842 B
Dart
import 'package:mobile/models/cart_item.dart';
|
|
import 'package:mobile/models/product.dart';
|
|
import 'package:mobile/models/user.dart';
|
|
|
|
abstract class Server {
|
|
Future<Response<List<Product>>> allProducts();
|
|
|
|
Future<Response<Null>> register(
|
|
String name,
|
|
String email,
|
|
String password,
|
|
);
|
|
|
|
Future<Response<String>> login(
|
|
String email,
|
|
String password,
|
|
);
|
|
Future<Response<Null>> logout(String token);
|
|
|
|
Future<Response<User>> sessionUser(String token);
|
|
|
|
Future<Response<Null>> purchaseCart(String token, List<CartItem> cartItems);
|
|
|
|
Future<Response<Null>> addBalance(String token);
|
|
}
|
|
|
|
sealed class Response<Data> {}
|
|
|
|
class Success<Data> extends Response<Data> {
|
|
Data data;
|
|
Success({required this.data});
|
|
}
|
|
|
|
class Error<Data> extends Response<Data> {
|
|
String message;
|
|
Error({required this.message});
|
|
}
|