The problem is we don't have either:
- A way to guarantee that
$this->output is not null
- The ability to use PHP 8 null safe operator like
$this-output?->foo()
so ideally if we wanted this to be type safe we'd use getter methods on traits to access variables in a way that guarantees an object is returned and not null.
Originally posted by @KorvinSzanto in #22 (comment)