Introduce symbol transformer.
Introduce symbol transformer.

The current version of Typescript frontend traverses the ts AST to collect all types information. This strategy is fragile because:
 - new nodes are added each TS release. These new nodes are not supported by the generator and it can break.
 - a feature can be implemented in different ways and we need to understand all. (e.g. export of an entity). The code to handle one specific can be very complex.
 - types definition are open-ended and we cannot retrieve all informations in one pass.

Instead of traversing the ast, we are considering to loop on exported symbols and trandform them to our java model. Symbols contains all the information we need. We can collect everything in one pass, when we see a new symbol we visit it (@goktug we talked about this pattern few months ago).

Note that all the code relatedx to the visitors will be deleted in another CLs

PiperOrigin-RevId: 164480374

google/jsinterop-generator,google/jsinterop-generator,google/jsinterop-generator