<?php

declare(strict_types=1);

namespace App\Enum\Message;

use App\Enum\EnumMethodsTrait;

/**
 * Report Mail status.
 */
enum ReportMessageStatusEnum: string
{
    use EnumMethodsTrait;

    case DELIVERED = 'DELIVERED';
    case PRINTED = 'PRINTED';
    case DELIVERY_IN_PROGRESS = 'DELIVERY_IN_PROGRESS';
    case NOT_DELIVERED = 'NOT_DELIVERED';
    case INVALID = 'INVALID';
    case MISSING = 'MISSING';
    case WAITING = 'WAITING';
    case WAIT4DLVR = 'WAITING_DELIVERY';
    case SENT = 'SENT';
    case DLVRD = 'DLVRD';
    case TOOM4USER = 'TOO_MANY_SMS_FROM_USER';
    case TOOM4NUM = 'TOO_MANY_SMS_FOR_NUMBER';
    case ERROR = 'ERROR';
    case TIMEOUT = 'TIMEOUT';
    case UNKNRCPT = 'UNPARSABLE_RCPT';
    case UNKNPFX = 'UNKNOWN_PREFIX';
    case DEMO = 'SENT_IN_DEMO_MODE';
    case SCHEDULED = 'WAITING_DELAYED';
    case INVALIDDST = 'INVALID_DESTINATION';
    case BLACKLISTED = 'NUMBER_BLACKLISTED';
    case NUMBER_USER_BLACKLISTED = 'BLACKLISTED';
    case KO = 'SMSC_REJECTED';
    case INVALIDCONTENTS = 'INVALID_CONTENTS';
}
