code: protected function getActionParams(\ReflectionMethod $method) : array
      {
          return Psi::it($method->getParameters())
              ->filter(new IsInstanceOf(\ReflectionParameter::class))
              ->map(function (\ReflectionParameter $p) {
                  return new ActionParamDefinition(
                      $p->getName(),
                      (string) $p->getType(),
                      $p->allowsNull() || $p->isOptional()
                  );
              })
              ->toArray();
      }
docs: @param \ReflectionMethod $method
  
  @return ActionParamDefinition[]