<?php

declare(strict_types=1);

namespace App\Scolarite\Application\Port;

use App\Shared\Domain\Tenant\TenantId;
use DateTimeImmutable;

/**
 * Port pour vérifier les règles de devoirs configurées par l'établissement.
 *
 * L'implémentation consulte la configuration des règles du tenant
 * et retourne le résultat de validation.
 */
interface HomeworkRulesChecker
{
    public function verifier(
        TenantId $tenantId,
        DateTimeImmutable $dueDate,
        DateTimeImmutable $creationDate,
    ): HomeworkRulesCheckResult;
}
