Also somewhat related: #41470.
---
I find the idea of "local" types declared within the implementation body to leak outside extremely unpleasant and disturbing. This would also require additional new syntax for declaration files, which was not considered at all in this issue. I hardly see any benefit and a lot of complexity.
And unfortunately the issue template for feature requests was not filled out.