and MailerInterface is totally different. a mailer is not a value object but a service. Having an interface for the service is the expected way