# packeta/trunk/deps/nette/component-model/src/ComponentModel/IComponent.php

Packeta, version trunk. 30 lines.

- Page: https://pluginprobe.com/plugins/packeta/trunk/code/deps/nette/component-model/src/ComponentModel/IComponent.php
- Raw: https://pluginprobe.com/plugins/packeta/trunk/raw/deps/nette/component-model/src/ComponentModel/IComponent.php
- Modified: 2025-03-10T10:47:38+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/packeta/trunk/code/deps/nette/component-model/src/ComponentModel/IComponent.php#L10-L20`.

```php
<?php

/**
 * This file is part of the Nette Framework (https://nette.org)
 * Copyright (c) 2004 David Grudl (https://davidgrudl.com)
 */
declare (strict_types=1);
namespace Packetery\Nette\ComponentModel;

/**
 * Provides functionality required by all components.
 */
interface IComponent
{
    /** Separator for component names in path concatenation. */
    public const NameSeparator = '-';
    /** @deprecated use IComponent::NameSeparator */
    public const NAME_SEPARATOR = self::NameSeparator;
    function getName() : ?string;
    /**
     * Returns the parent container if any.
     */
    function getParent() : ?IContainer;
    /**
     * Sets the parent of this component.
     * @return static
     */
    function setParent(?IContainer $parent, ?string $name = null);
}

```
