TF-438 Add abstract for get/store/delete StateToRefresh and get email changes to push notification
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
|
||||
import 'package:fcm/model/type_name.dart';
|
||||
import 'package:model/fcm/fcm_token_dto.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/state.dart' as jmap;
|
||||
|
||||
abstract class FCMDatasource {
|
||||
Future<FCMTokenDto> getFCMToken(String accountId);
|
||||
@@ -7,4 +9,10 @@ abstract class FCMDatasource {
|
||||
Future<void> setFCMToken(FCMTokenDto fcmToken);
|
||||
|
||||
Future<void> deleteFCMToken(String accountId);
|
||||
|
||||
Future<bool> storeStateToRefresh(TypeName typeName, jmap.State newState);
|
||||
|
||||
Future<jmap.State> getStateToRefresh(TypeName typeName);
|
||||
|
||||
Future<bool> deleteStateToRefresh(TypeName typeName);
|
||||
}
|
||||
@@ -1,4 +1,9 @@
|
||||
import 'package:fcm/model/type_name.dart';
|
||||
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/properties/properties.dart';
|
||||
import 'package:model/fcm/fcm_token_dto.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/model/email_response.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/state.dart' as jmap;
|
||||
|
||||
abstract class FCMRepository {
|
||||
Future<FCMTokenDto> getFCMToken(String accountId);
|
||||
@@ -6,4 +11,19 @@ abstract class FCMRepository {
|
||||
Future<void> setFCMToken(FCMTokenDto fcmTokenDto);
|
||||
|
||||
Future<void> deleteFCMToken(String accountId);
|
||||
|
||||
Future<EmailsResponse> getEmailChangesToPushNotification(
|
||||
AccountId accountId,
|
||||
jmap.State currentState,
|
||||
{
|
||||
Properties? propertiesCreated,
|
||||
Properties? propertiesUpdated
|
||||
}
|
||||
);
|
||||
|
||||
Future<bool> storeStateToRefresh(TypeName typeName, jmap.State newState);
|
||||
|
||||
Future<jmap.State> getStateToRefresh(TypeName typeName);
|
||||
|
||||
Future<bool> deleteStateToRefresh(TypeName typeName);
|
||||
}
|
||||
Reference in New Issue
Block a user