<?php

declare(strict_types=1);

namespace App\Domain\CookieProvider;

use App\Domain\CookieProvider\ValueObject\Purpose;
use App\Domain\Shared\ValueObject\Locale;

final class CookieProviderTranslation
{
    # autogenerated
    private string $id;

    private CookieProvider $cookieProvider;

    private Locale $locale;

    private Purpose $purpose;

    private function __construct() {}

    public static function create(CookieProvider $cookieProvider, Locale $locale, Purpose $purpose): self
    {
        $cookieProviderTranslation = new self();
        $cookieProviderTranslation->cookieProvider = $cookieProvider;
        $cookieProviderTranslation->locale = $locale;
        $cookieProviderTranslation->purpose = $purpose;

        return $cookieProviderTranslation;
    }

    public function cookieProvider(): CookieProvider
    {
        return $this->cookieProvider;
    }

    public function locale(): Locale
    {
        return $this->locale;
    }

    public function purpose(): Purpose
    {
        return $this->purpose;
    }

    public function setPurpose(Purpose $purpose): void
    {
        $this->purpose = $purpose;
    }
}
