My understanding from reading the page was that flyweight translates trivial table access to SQL. For anything beyond that is seems to do exactly what you describe i.e. you write the query and it is creating a TypeScript API for the query. Which saves you the work of defining the interface and ensures some level of correctness of the mapping.
Note: sqldelight currently only supports generating classes for Kotlin.
With something like this existed for Golang!
Would this do? https://github.com/kyleconroy/sqlc
Yes, thank you!
For instance, you could have a SQL statement like getCardsForFight: select * from fights where cardId = ? and titleFight = ?, and it would generate a class that has a method getCardsForFight(cardId: number, titleFight: number).
[1]: https://github.com/cashapp/sqldelight