I even went as far as trying to set up my own code generator using the OpenAPI generator toolkit. It is not my favourite code. Everything is deeply nested inheritance hierarchies with humptyjillion methods that do oddly specific stuff. I eventually gave up on it.
Now I am at the point where, to map the generated types to the same types described in the original OpenAPI YAML, I have about 50 goofy lines of string juggling and chasing data structures through 4 or 5 levels of nullable references.
I don't know how we wound up here but I wish we hadn't.