Any tools for reading *.ts files and generating Rust bindings?

I'm wondering if whatever magic was used to generate web_sys can also run on TypeScript projects.

In particular, I'd like something where:

input: *.ts project
output: rust structs, enums, bindings to *.ts project

Is there any tool designed for this ?

I just saw this:

It goes Rust => TypeScript, not TypeScript => Rust. I don't think the reverse would be possible considering TS featurefull weird type system (all the mapped types, type algorithmic, templates litteral types etc).