It depends - it's really good for things menus and tooltips. Interaction will still need to be coded manually, but I would imagine for an RTS, the built-in mouse handling would help immensely. For example; conceptually, not actual code:
// CREATE // ... after creating your ui container/etc. button = auto_button(button_sprite); container.add(button); // STEP if button.is_hovering() and mouse_button_clicked() -> // do thing
There are also signals and watchers where you can have something like a text element and connect it to a global or local variable, which will automatically update when the variable changes.
As far as how it interacts with non-UI game objects, the entire container and its children exists in a variable, so it can be as simple or complicated as you'd like it to be. Again, it really depends on what you're trying to do.
Happy to answer any specific questions you might have!