package port import "context" // EmailSender sends emails for authentication flows (OTP, magic link, password reset, etc.). type EmailSender interface { // SendAuthCode sends an authentication code to the given email. // purpose identifies the flow (e.g. "login_otp", "magic_link", "password_reset", "email_verify"). // code is the token or OTP to include in the email. SendAuthCode(ctx context.Context, email, code, purpose string) error }