I really like this proposal and think it would be a nice addition to Dash. Perhaps it could be made available as one of the “Flexible Callback Signatures”
As mentioned previously, the current way of writing callbacks is unique to Dash. Once you “get it”, I think it’s harder to see why a different way might be better. But the learning curve can be steep for people new to Dash - as this infamous post summarized 
I think there are advantages to having the Dash callback structure similar to how it’s done with annotations, because the annotations are part of the standard Python library - even if it’s not well known.
I also agree that this proposed way is great for when there are lots of inputs and output.
It would also make it easier in the case when an input just triggers the callback and is not used in the callback function - like is common with dcc.Interval. It would be clear that you still need a variable name, even if it’s not used in the callback function.