diff --git a/lib/features/push_notification/domain/model/fcm_subscription.dart b/lib/features/push_notification/domain/model/fcm_subscription.dart new file mode 100644 index 000000000..0a5840a15 --- /dev/null +++ b/lib/features/push_notification/domain/model/fcm_subscription.dart @@ -0,0 +1,16 @@ + +import 'package:equatable/equatable.dart'; + +class FCMSubscription with EquatableMixin { + + final String deviceId; + final String subscriptionId; + + FCMSubscription(this.deviceId, this.subscriptionId); + + @override + List get props => [ + deviceId, + subscriptionId + ]; +} \ No newline at end of file diff --git a/lib/features/push_notification/domain/repository/fcm_repository.dart b/lib/features/push_notification/domain/repository/fcm_repository.dart index 8aaa26bdf..1f9805629 100644 --- a/lib/features/push_notification/domain/repository/fcm_repository.dart +++ b/lib/features/push_notification/domain/repository/fcm_repository.dart @@ -2,6 +2,7 @@ import 'package:fcm/model/firebase_subscription.dart'; 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:tmail_ui_user/features/push_notification/domain/model/fcm_subscription.dart'; import 'package:tmail_ui_user/features/push_notification/domain/model/register_new_token_request.dart'; import 'package:tmail_ui_user/features/thread/domain/model/email_response.dart'; import 'package:jmap_dart_client/jmap/core/state.dart' as jmap; @@ -22,11 +23,9 @@ abstract class FCMRepository { Future deleteStateToRefresh(TypeName typeName); - Future storeDeviceId(String deviceId); + Future storeSubscription(FCMSubscription fcmSubscription); Future getFirebaseSubscriptionByDeviceId(String deviceId); Future registerNewToken(RegisterNewTokenRequest newTokenRequest); - - Future getDeviceId(); } \ No newline at end of file