*/ public function getElementsByTagName($name) {} /** * @param string $localName * @param string $value * @return JSLikeHTMLElement Officially, this can return false but PHPStan decided to ignore that: */ public function createElement($localName, $value = '') {} } class DOMNode { } class DOMElement extends DOMNode { /** * @param string $name * @return DOMNodeList */ public function getElementsByTagName($name) {} }