WTS is currently sync. It would be useful to refactor this to allow for async components of WTS.
In particular:
- serializing images might need to do an imageinfo query (we work around this at the moment by leaning on data-file-width and data-file-height attributes in the input HTML).
- TemplateData might need to be consulted when serializing template attributes (T104599)
There are also a few internal interfaces to Parsoid which we wanted to make return Promises, but had to add evil sync backdoors specifically for the use of WTS. It would be good to get rid of these.