Typescript and Rust may be more similar in this regard than you think. Both languages are born out of the desire to make coding simpler by making a stronger, more expressive type system. Sure, the details differ: Rust has lifetimes and about 8 number types, Typescript is garbage collected and has about one number type. But the spirit is similar. Both the typescript ecosystem and the rust ecosystem love the idea of taking types and function signatures and providing them for downstream consumers.
While I haven't gone too deep down this particular rabbit hole, if you build a Rust backend you can use function signatures and annotations to automatically build an OpenAPI specification for it. You can then consume that specification to automatically build a typescript client library, giving you an automatically updating Typescript interface to your Rust backend.
Similarly, there are multiple projects to automatically provide python type hints for your Rust python extensions. None of them really production-ready yet, but this is something people are actively working on for quite a while