The AST is different, yet they seemed to add the [deparser](https://github.com/pganalyze/libpg_query/blob/13-latest/src/pg_query_deparse.c) AND [protobuf](https://github.com/pganalyze/libpg_query/blob/13-latest/protobuf/pg_query.proto) specifying the API. So! What we can do is to - generate scala `case class`es with [scalapb/ScalaPB](https://github.com/scalapb/ScalaPB) - make sure to make the `Node` a [sealed oneOf](https://scalapb.github.io/docs/sealed-oneofs/) - use the deparse functionality to convert the AST to SQL
The AST is different, yet they seemed to add the deparser AND protobuf specifying the API.
So! What we can do is to
case classes with scalapb/ScalaPBNodea sealed oneOf