<?php

namespace AutoAdmin\Bundle\Content\Hierarchy\Model\Interfaces;

use Doctrine\Common\Collections\Collection;

interface SelfHierarchyInterface
{
    public function getParent(): ?SelfHierarchyInterface;

    public function setParent(?SelfHierarchyInterface $parent): SelfHierarchyInterface;

    public function getChildren(): Collection;

    public function setChildren(Collection $children): SelfHierarchyInterface;

    public function addChild(SelfHierarchyInterface $child): SelfHierarchyInterface;

    public function removeChild(SelfHierarchyInterface $child): SelfHierarchyInterface;
}
