Is there a way I can separate WordPress page content and use it in different locations?
E.g. defining a description element inside of WordPress, and having a header prop use it.
Or is there maybe a way to define slot locations inside WordPress content, so that you can create a React component then have it put inside the WordPress content.
I want to use WordPress to define the content e.g. text / low level styling, and then do things with that text in React separately. Is this possible, if so how would I do this?
Everything you can get from the REST API can be used in any way you want, even outside the standard way of handling it. Your only limitation is the way that WP is returning the data, which can be bypassed by modifying the REST API output with a WP plugin.
Frontity is nothing more than a frontend shell which handles JSON feeds from WordPress, which (with some exceptions) don’t contain any HTML or CSS.
So I guess that what you want to achieve is actually what Frontity is already doing.
But if you could give an example of what you want to do perhaps we can help you with some existing solutions or examples.