While I've heard of Ink and understand the basics, I'm not very familiar with the backend javascript runtime and what parts are exactly exposed.
There's probably two general strategies to go for - either Hype code controlling Ink or Ink code controlling Hype that would have very different technical solutions to setting up integration. My instinct would be to go for a strategy where Ink controls Hype. To this end, I'd probably use scenes to setup "templates" that could be filled in by data that is placed in an Ink script. The Hype scene as a template could set classes on elements (via the Identity Inspector) that would end up being replaced. You'd probably need some sorts of shared or naming conventions. The Hype API and HTML DOM APIs can do the work of replacing images or inner HTML in the elements.
Ultimately I don't think there probably could be great answers to a lot of this until someone's tried an implementation and figured out best practices for getting data back and forth (and some may be dependent on the story!). Regardless, it will be a javascript-heavy endeavor.
There was some previous discussion about a similar environment called Twine:
And @MaxZieb even made an extension to work with that! See:
So perhaps that project can provide some direction/inspiration.
(In some alternate universe where there's more time I'd love to work on this project, but that's not in the cards for now...)