Conditional relationship between nodes

Problem statement:

C cannot happen without ( A & B happening together) or D or E happening.

C is dependent on [ A and B] or on C or on D.

There are a lot of such relationship so i cannot use application level logic.

Let's name the edge "depends", so task is to create a conditional edge between C and [A & B] , [D], [E].

It's somewhat similar to "filters" in API where we need a mix of "AND" and "OR".

So, how to add such relationship in Neo4j where one edge is not totally active unless other edge(s) is present.