when I npm install m3api, and then I import it in a ts file, then it doesn't recognize the /browser.js import and typescript treats it as an error, because /browser.js has no attached type declaration
and if I import the root module, then it won't work in the browser because it's made for Node
So the pull request I put forwards uses "exports" to make it so that in Node, importing the package imports the node version, and otherwise, the browser version. And with typing associated with it as well.
However, doing that prevents people who install the package from importing any module that's not declared in "exports", so former imports of m3api/browser.js will break. You have ways around that but I think it's better to hike up the major version number to a clean solution (to be tested more thoroughly than I did locally).