You just register callbacks for message lists / chat messages and notifications and you're all set.
This allows people to easily build full-featured clients for pretty much any platform and it makes it easy for everyone to keep up. Very smart platform design.
I'm very disappointed that something made to be more open like Signal completely failed in this aspect and has ended being a walled garden with poor quality clients.