use thiserror::Error;
#[derive(Debug, Error)]
pub enum MailError {
#[error("mail not configured — add MailLayer to your router")]
NotConfigured,
#[error("unknown mail driver '{0}' — supported: log, smtp, postmark, resend")]
UnknownDriver(String),
#[error("SMTP driver requires MAIL_SMTP_HOST to be set")]
MissingSmtpHost,
#[error("SMTP error: {0}")]
Smtp(String),
#[error("HTTP request failed: {0}")]
Http(String),
#[error("missing API key for driver '{0}'")]
MissingApiKey(String),
}