<?php

declare(strict_types=1);

namespace App\Framework\Mail;

interface MailerInterface
{
    /**
     * Send an email message.
     */
    public function send(Message $message): bool;

    /**
     * Queue an email message for later sending.
     */
    public function queue(Message $message, int $maxRetries = 3, int $delaySeconds = 0): bool;

    /**
     * Send multiple email messages.
     */
    public function sendBatch(array $messages): array;
}
