* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/AFL-3.0 Academic Free License version 3.0 */ namespace PrestaShop\Module\Mbo\Tab; use ArrayAccess; use Countable; use IteratorAggregate; interface TabCollectionInterface extends ArrayAccess, IteratorAggregate, Countable { /** * Add a tab to this collection. * * @param TabInterface $tab * * @return self */ public function addTab(TabInterface $tab): TabCollectionInterface; /** * @param string $tabClassName * * @return TabInterface */ public function getTab($tabClassName): TabInterface; /** * @param mixed $offset * * @return TabInterface */ public function offsetGet($offset): TabInterface; /** * @return bool */ public function isEmpty(): bool; }