While I do agree with [USER] my argument why this shouldn't really be considered a bug would be on a much more fundamental level.
There is not much typescript can do about this without breaking it's [Non-Goal No 3]([URL]
[BLOCK QUOTE].
The only alternative would be treating properties that are known to be getters the same as function calls, which is not what you want in most cases, they are almost always supposed to be treated like regular properties. This kind of check is quite common check to prevent check if a value is not null so flagging it based on the signature alone would be annoying to most people that dont have such edge case uses as they'd have to do the non-null assertion even if it's not really needed.
So yes the only way you could detect it without troubling people when it mostly isn't necessary is by analyzing the flow in depth, which isn't worth it for such an edge case in my opinion but the issue above has more discussion on that.
On top of that a simple way to avoid this using modern ECMAScript features is `a.member?.do()`.