It appears a number of people have come to similar solutions. I’ve rewritten the Auth0 Login Vue 2 quickstart with Vue 3 Composition API + Typescript here:
This example is purist Composition API (no use of provide/inject) and requires useAuth()
to be called within consuming components.