import asyncio from typing import override from firebase_admin import messaging # type: ignore[import-untyped] from firebase_admin.messaging import Message, Notification # type: ignore[import-untyped] from template_project.application.common.notifications.service import NotificationService class FCMNotificationService(NotificationService): def __init__(self) -> None: pass @override async def send_notification(self, identifier: str, title: str, body: str) -> None: message = Message( token=identifier, notification=Notification(title=title, body=body), ) await asyncio.to_thread(messaging.send, message)