<?php

namespace IO4\Container;

use Psr\Container\ContainerInterface;

interface ContainerCollectionInterface extends ContainerInterface
{
    public const CONTAINER_SPLIT = '.';
    public const THROW_ONERRROR = 0;
    public const NULL_ONERROR = 1;
    public const CALL_ID = 'call';

    public function setFinalFallbackContainer(ContainerInterface $container): ContainerCollectionInterface;

    public function hasFinalFallbackContainer(): bool;

    public function getKnownEntryNames(): array;

    public function addContainer(
        ContainerInterface &$container,
        string|int|null &$containerId = null,
    ): ContainerCollectionInterface;

    public function &getContainer(string|int|null $containerId = null);

    public function hasContainer(string|int|null $containerId = null): bool;
}__halt_compiler();----SIGNATURE:----K2IVOFNDmeNg8NppaRt3iB/8T/cWdBGYDOMfyn9au1FriW3JkUBdnvitIw8ul7hIAvJKKQ1562TWmwFqkp1xCazusvvDEIeLUU53k4oPdo9zy2OesiycRB46tS+FNrwKgvA2K3pJcOiKfjtYEUw51T/Eo2W6odxwk2/OX6B+gFOlAe6KzB6CvErBIJQzZxd5mIyDNQu+QgTgH1/YGQNcGvK/Jq8UgCBuB+/ZYqHEs6XzMKwmFlSO/1KNc1Ta78ET0F6uRunK8AWjsGbab21bX08e1SRclcdmUPXq2JuoD06oom6tMGHRnfws3he3NtRrvwsXNkZwsot2wVbqqlJc4/W+go5M0tOPymC09H+epFY8eWk3GG2zWgDYMWOordlT4bbBsnS5Q5oSSrCaqB+I6aNXFZubGolSX1xlErxI5SW0X6bCYLmMi1ABhiVju7MXSVsdxnTy/OXrddwmR78lHbJkhs2TGSscuO38E7sFZqpnWUbzloZCtdqIBLdPuJfWAehTOsSd98bjO9/UZ6cLDx3HVQhazKnxQRPxBqPSjc3U1HDpAtekUCJBJOR8UGmbeBouS47Ougxph2vgaiou4G+7n46K/xKP1rj6oJ+CSgWs3EGnmudp4QgL0YsIYgA8jbe2PXouxD1dnLeplhxbkX37qz+oEGpyRghsFbGabXs=----ATTACHMENT:----NTY2ODY0NTI2Njk3NjE4NiAyMTgxNDIwMzYwMzE2MDIyIDMzODE0MTA4Mjg0NTk1Mzg=