[web] Use safer type declarations instead of invariants
Summary:
Point is to use safer type declarations instead of invariants in Message Tooltip. More context here: phabricator link.
To solve this new type is needed: MessageStateType which will contain information that either user can not reply, or can and all needed props are provided.
Test Plan:
Checked flow types.
Tested text, media, and robotext messages to check if changes didn't affect current logic.
Reviewers: tomek, jacek, atul, abosh
Reviewed By: tomek, atul, abosh
Subscribers: ashoat, atul, abosh
Differential Revision: https://phab.comm.dev/D4925