How to combine filters when using the Lisk SDK StateStore?

If filters are provided as JSON objects, they will always be joined with an AND combinator. For instance, specifying filters as {name: 'Alpha', description_like: 'Bravo'} results in fetching all results which have a name equal to Alpha and description matching Bravo .

Specifying filters as an array of objects, e.g. [{name: 'Alpha'}, {description_like: 'Bravo'}] , will result in joining objects with OR combinator, i.e. fetching data which name equal to Alpha or description like Bravo .

It is even possible to combine AND and OR filters. The below example tries to find an object with the name Alpha and description Bravo or an object with the name Beta and description Bravo .

[
   {name: 'Alpha', description_like: 'Bravo'},
   {name: 'Beta', description_like: 'Bravo'},
]