How does Gutenberg render HTML with bindings?

Hello All,

I have a question regarding Gutenberg React. I'm familiar with React which is what leads me to not understanding how the process works.

React can only render JSX but Gutenberg seems to render HTML (presumably by setting inner html dangerously), however it also adds event listeners to the newly rendered "block". How does it do this?

Many Thanks,
Josh