I decided to bite the bullet and just move everything in notatrix/ over to TypeScript.
There are a lot of places where the annotations are pretty janky, but I thought it would be better to try to bring the annotations in line with the actual behavior, rather than trying to tweak the behavior to match some "better" types that I just invented on the spot. I'll note that I did change behavior in a few places where I was pretty sure the existing implementation was just buggy (e.g., forgetting to pass along the options everywhere). Let me know if you notice any regressions!
Also, there's definitely a lot of room for improvement on these APIs! I think we're in a much better position to do that now, though I think we should probably also type client/ and server/ (and maybe the tests?) before mucking around too much.
I decided to bite the bullet and just move everything in
notatrix/
over to TypeScript.There are a lot of places where the annotations are pretty janky, but I thought it would be better to try to bring the annotations in line with the actual behavior, rather than trying to tweak the behavior to match some "better" types that I just invented on the spot. I'll note that I did change behavior in a few places where I was pretty sure the existing implementation was just buggy (e.g., forgetting to pass along the
options
everywhere). Let me know if you notice any regressions!Also, there's definitely a lot of room for improvement on these APIs! I think we're in a much better position to do that now, though I think we should probably also type
client/
andserver/
(and maybe the tests?) before mucking around too much.