<?php declare(strict_types=1);

namespace App\Engine\Fields;

class ImagesField implements \Serializable, \JsonSerializable
{

    private array $images = [];

    public function __construct()
    {
    }

    public function serialize(): string
    {
        return json_encode($this->jsonSerialize());
    }

    public function jsonSerialize(): array
    {
        return [
            "images" => $this->images,
        ];
    }

    public function unserialize(string $data): self
    {
        if (!$data) {
            return $this;
        }

        $data = json_decode($data, true);
        $this->images = $data["images"];
        return $this;
    }

    public function getImages(): array
    {
        return $this->images;
    }

    public function setImages(array $images): ImagesField
    {
        $this->images = $images;
        return $this;
    }
}
