<?php

declare(strict_types=1);

namespace Seka\Vzdelavanie\Dtos\Kniznica;

use Illuminate\Contracts\Support\Arrayable;

/**
 * Class NavigaciaDTO
 *
 * @package Seka\Vzdelavanie\Dtos\Kniznica
 */
final class NavigaciaDTO implements Arrayable
{
    /**
     * @var array|null
     */
    public ?array $predchadzajuca;

    /**
     * @var array|null
     */
    public ?array $rodic;

    /**
     * @var array|null
     */
    public ?array $nasledujuca;

    /**
     * NavigaciaDTO constructor.
     *
     * @param array $parameters
     */
    public function __construct(array $parameters = [])
    {
        $this->predchadzajuca = $parameters['predchadzajuca'] ?? null;
        $this->rodic = $parameters['rodic'] ?? null;
        $this->nasledujuca = $parameters['nasledujuca'] ?? null;
    }

    /**
     * @return array
     */
    public function toArray(): array
    {
        return [
            'predchadzajuca' => $this->predchadzajuca,
            'rodic' => $this->rodic,
            'nasledujuca' => $this->nasledujuca,
        ];
    }
}
