Filter strictly by tags

We are using Algolia for data retrieval, and we are looking to create a strict filter on an array facets.

Right now, we have records of books in an index, with have a tags array which contains various tags.
We would like to be able to filters results based on a given array of tags.

For example, assuming we have the following records:

Book A: tags=[“foo”, “bar”];
Book B: tags=[“will”, “name”];
Book C: tags=[“test”, “bar”];
Book D: tags=[“foo”];

We would like to retrieve books where tags only contains the expected tags and no other ones.
For example, assuming we are looking for [“foo”'], only the D book would be retrieved.
If we are looking for [“foo”, “bar”], we would like books with only (“foo”) or (“BAR”) or (“foo” and “bar”), which would mean Book A but not Book C.

Is there any way to achieve this right now with Algolia ?

Thanks for your answer,