public function getType (string $key) : ComponentType
    {
        if (!array_key_exists($key, $this->types))
        {
            throw new UnknownComponentTypeException($key, array_keys($this->types));
        }

        $type = $this->types[$key];

        return $type;
    }