<?php

namespace Vonage\Messages\Channel\MMS;

use Vonage\Messages\Channel\BaseMessage;
use Vonage\Messages\MessageTraits\TtlTrait;

class MMSText extends BaseMessage
{
    use TtlTrait;

    protected string $channel = 'mms';
    protected string $subType = BaseMessage::MESSAGES_SUBTYPE_TEXT;
    protected bool $validatesE164 = true;
    protected string $text;

    public function __construct(
        string $to,
        string $from,
        string $text,
    ) {
        $this->to = $to;
        $this->from = $from;
        $this->text = $text;
    }

    public function validatesE164(): bool
    {
        return $this->validatesE164;
    }

    public function toArray(): array
    {
        $returnArray = $this->getBaseMessageUniversalOutputArray();
        $returnArray['text'] = $this->text;

        if (!is_null($this->ttl)) {
            $returnArray['ttl'] = $this->ttl;
        }

        return $returnArray;
    }
}
