<?php

namespace AsyncAws\Ses\Enum;

/**
 * The reason that the address was added to the suppression list for your account or for a specific tenant. The value
 * can be one of the following:
 *
 * - `COMPLAINT` – Amazon SES added an email address to the suppression list for your account or for a specific tenant
 *   because a message sent to that address results in a complaint.
 * - `BOUNCE` – Amazon SES added an email address to the suppression list for your account or for a specific tenant
 *   because a message sent to that address results in a hard bounce.
 */
final class SuppressionListReason
{
    public const BOUNCE = 'BOUNCE';
    public const COMPLAINT = 'COMPLAINT';
    public const UNKNOWN_TO_SDK = 'UNKNOWN_TO_SDK';

    /**
     * @psalm-assert-if-true self::* $value
     */
    public static function exists(string $value): bool
    {
        return isset([
            self::BOUNCE => true,
            self::COMPLAINT => true,
        ][$value]);
    }
}
