PHPStorm: ¿PHPDoc correcto para una colección de objetos?

Estoy usando elPHPStorm IDE, y tener problemas cuando ejecuto la inspección de código.

Tengo un método que devuelve una colección de objetos. losCollection en sí mismo es un objeto, que tiene sus propios métodos, e implementa elAtravesable interfaz:

class Repository
{
    public function findByCustomer(Customer $user)
    {
        // ...
        return new Collection($orders);
    }
}

Si yo documentofindByUser() para devolver unCollection, la inspección de código entiende los métodos en este objeto, pero no entiende qué objetos contiene la colección:

/**
 * @return Collection
 */
public function findByCustomer() { ... }

Si yo documentofindByUser() para devolver una colección deOrder objetos, la inspección de código ahora entiende lo que está dentro de la colección, pero no los métodos en elCollection sí mismo:

/**
 * @return Order[]
 */
public function findByCustomer() { ... }

¿Hay alguna manera de especificar ambos al mismo tiempo, algo así como la sintaxis de Java?

/**
 * @return Collection<Order>
 */
public function findByCustomer() { ... }

Respuestas a la pregunta(1)

Su respuesta a la pregunta