Refactoring to make BLUEPRINT_SCHEMA useful outside of Home Assistant

Hi, I’m building a tool that works with blueprints outside of Home Assistant. To that end, it’d be super-useful if I could import e.g. homeassistant.components.blueprint.schemas in my Python-based tool. Unfortunately, that leads to an ImportError: cannot import name 'async_generate_entity_id' from partially initialized module 'homeassistant.helpers.entity' due to __init__.py relying an being run within a Home Assistant instance.

I have a branch for this at Sign in to GitHub · GitHub. At first I wanted to keep the exports from the original components/blueprint unchanged, but the linter didn’t agree with re-exports.

Would there be interest in a PR with a refactoring that decouples the actual component from the used datatypes? It’d be nice if any of the core-devs would have a comment on this; I’d hope that this wouldn’t necessarily change much (except for adventures folk like me who dare to put import homeassistant into their 3rd-party tools…