More than an internal API, unless the app is compiled in debug mode, don't you get compiled/name-mangled/tree-shaken code and symbols?
I would assume this might change on recompiles or at least library updates, never mind internal code changes. Do you find that it works in practice?