<?php

namespace AutoAdmin\Bundle\Content\Model;

use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;

/**
 * @method _tr(): ?TranslationInterface
 */
interface TranslatableInterface extends UnstranslatedInterface
{
    /**
     * @return ArrayCollection<TranslationInterface>
     */
    public function getTranslations(?string $locale = null): Collection;

    public function addTranslation(TranslationInterface $translation): void;

    public function removeTranslation(TranslationInterface $translation): void;

    public function setCurrentTranslation(TranslationInterface $translation): void;

    public function getCurrentTranslation(): ?TranslationInterface;
}
