from .protocol import TransactionalEmailClient def get_email_client() -> TransactionalEmailClient: from ...config import settings if settings.transactional_email_provider == "scaleway": from ..scaleway_tem.tem_client import ScalewayTEMClient return ScalewayTEMClient( secret_key=settings.scaleway_tem_secret_key, from_address=settings.scaleway_tem_from_address, project_id=settings.scaleway_tem_project_id, region=settings.scaleway_tem_region, ) if settings.transactional_email_provider == "stub": from .stub_client import StubEmailClient return StubEmailClient() raise ValueError( f"Unknown transactional_email_provider: {settings.transactional_email_provider!r}. " "Valid options: 'scaleway', 'stub'." )