/**
  * @param HasNodeInterface|Node|null $parent
  * @param array                      $options
  *
  * @return Branch
  */
 public function getChildren($parent = null, array $options = [])
 {
     if ($parent instanceof HasNodeInterface) {
         $node = $this->publicNodeVersions->getNodeFor($parent);
     } elseif ($parent instanceof Category) {
         $node = $this->nodeRepository->find($parent->getNodeId());
     } elseif ($parent instanceof Node) {
         $node = $parent;
     } else {
         $node = null;
     }
     return $this->getNodeChildren(['parent' => $node] + $options);
 }