Holy shit, this is exactly what I needed for a major client. The track changes specifically, and being able to do it from Typescript. You have no idea how happy you just made me.
Edit: Did you just make this repo public? Last week I was scouring the internet for something like this and couldn't find it.