public static function parse(Composer $composer, $webPath, $path, array $jsonData)
    {
        $name = $jsonData['name'];
        $class = self::parseClass($jsonData);
        $constraint = self::parseConstraint($jsonData);
        $valid = self::parseValid($composer, $class, $constraint);

        return new self($name, $class, $path, $webPath, $constraint, $valid);
    }