Is it possible to make a nested Search API query? I need to make a query in the following form:

SELECT * FROM {index}
...
AND (
  (field1 = value AND field2 = value) OR
  (field1 = other_value AND field2 = other_value)
)
...


But it doesn’t seem to be possible with the existing createFilter and condition methods, as there is no way to pass another filter to a condition for example. Am I missing something, or is this (basic functionality?) really not there?
The AND ((field1 = value AND field2 = value) OR (field1 = other_value AND field2 = other_Value)) IS possible with sub-filters. For anyone else who ends up here trying to sort this out (as I did before working out the correct solution) you can create the above like this:

$filter = $query-&gt;createFilter('OR');

$subfilter1 = $query-&gt;createFilter('AND');
$subfilter1-&gt;condition('field1',value);
$subfilter1-&gt;condition('field2',value);

// Add this subfilter to the main filter.
$filter-&gt;filter($subfilter1);

$subfilter2 = $query-&gt;createFilter('AND');
$subfilter2-&gt;condition('field1',other_value);
$subfilter2-&gt;condition('field2',other_value);

// Now add the second subfilter
$filter-&gt;filter($subfilter2);

// Apply the filter to the query.
$query-&gt;filter($filter);