I'm thinking this is an impossible request.
Upon reading the requirements, I was thinking that you will need a unique CHM for each group. There is no way I'm aware of to force multiple Tables of Contents structures within a single CHM file and have them display based on a context sensitive call.
Certainly you can keep all information inside a single project, then use conditional build tags to govern which type of output you produce (admin/app level/etc.) and that may help by having it all in one project, but I'm really not seeing a way around the use of multiple outputs that allow changing what the end user sees. At least, not using a CHM.
If you could use WebHelp, you could create a merged WebHelp setup and control access at the folder level. I've seen that done. Then again, you are still working with multiple outputs to achieve it, albeit all of them being in sort of the same location. Additionally, it would also mean splitting up the project into smaller projects that would become child projects of a parent.
Not sure if this helps, but I tried... Rick
Helpful and Handy Links