Object mapping TF model <-> API JSON

I have a very complex resource data model with many fields, nesting, etc. I’ve modeled the TF structures and schema out using TF Framework SDK. This was done in a similar way to provider examples - struct fields are instances of types inside types.*.

What is the recommended approach for mapping that structure to/from JSON when interacting with the remote system’s API?

I cannot use encoding/json directly because types.int64, types.bool, etc. do not implement [Unmarshal/Marshal]JSON interfaces.

I really don’t want to write all of the extra boilerplate to define dedicated structs for the JSON model and then hand-write the mapping code between them.

Is the standard approach reflection? Generics? Code-gen?

Thanks in advance.