While the modding API can query and set filters on the quickbar (LuaPlayer::get_quick_bar_slot and LuaPlayer::set_quick_bar_slot), it has a few major limitations:
- If an item in the quickbar is a blueprint/book/decon planner/item-with-tags, a mod cannot determine which blueprint or book it is. *]If an item in the quickbar is a reference to the blueprint library, it appears empty. There is no way to determine it was a blueprint, much less its contents.
- I do not think there is a way to assign a specific blueprint (or similar) to a quickbar slot. (Though I just now noticed the function accepts an itemstack so maybe there is.)
- Have LuaPlayer::get_quick_bar_slot return a second value consisting of either the blueprint string or a Lua table corresponding to the pre-deflate/base64 version thereof. (And likewise for similar items), or the itemstack of the associated item (if one exists)
- Add an optional third parameter to LuaPlayer::set_quick_bar_slot to specify a counterpart to the above, to assign a quickbar slot to a specific blueprint.
- Add some way to see the blueprint being linked in the blueprint library, or at least know the slot is not empty.