If a library chose a branch limitation for a collection code or shelving location then it should be hidden in the OPAC if using a custom URL or if you're logged in at a branch that shouldn't see the types.
I don't think that would work in every setting and should likely be configurable. At the moment the settings for branch limitations only reflect on the staff side, but we still assume libraries can search the complete catalog, so nothing is hidden there. What about floating items etc.?
I believe this is the way it works now already, although behaviour might be debatable. I cannot limit the collections/locations in order to help with catalging without limiting it to the users to that might be using multiple libraries.