I really like this practice. We currently use OpenAPI in our projects which generates services and types on our frontend with the running of a simple script. This then generates everything in one place. Any update on the backend then you can just run the script again. Its beautiful for keeping the backend in sync with the frontend.