Clean up EntityMetaData and fix incorrect release tags
Part of https://github.com/iTwin/itwinjs-backlog/issues/1103.
This was one of the very first APIs ever created for iTwin.js and boy does it show.
Despite still being tagged as @beta after all these years, it has always been de facto part of the @public API due to its use in @public methods like Entity.forEachProperty and Element.getClassMetaData. (api-extractor does not check ae-incompatible-release-tags across package boundaries).
I tried to do minimal cleanup without introducing breaking changes and add/clarify documentation. Mostly I preferred to link to the learning articles in docs/bis/ec; those need some separate cleanup, though.
@khanaffan @ColinKerr @diegoalexdiaz please fact-check my documentation.
Can we take a look at how this stuff is actually used before we promote to public?
Can we take a look at how this stuff is actually used before we promote to public?
We can, but I want to reiterate: it is already public and has been for years, beta tag notwithstanding. Booster's usage.
This pull request is now in conflicts. Could you fix it @pmconne? 🙏 To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/