title: ag-grid set filter with async options that are complex objects
body: <p>I am using the infinite rowModelType and am clearing and loaded new data every time the user changes a filter.</p>
  
  <p>I have a field in my data which is a complex object called status with id and name properties. I am trying to load in async properties for the set filter but am getting some weird results. This is my coldef:</p>
  
  <pre><code>{
      headerName: 'Status',
      field: 'status',
      cellRenderer: (params) =&gt; params.value.name,
      keyCreator: (params) =&gt; params.value.id,
      filter: 'agSetColumnFilter',
      filterParams: {
          newRowsAction: 'keep',
          values: (params) =&gt; this.statusApiService.getList().pipe(map(response =&gt; response.data)).subscribe(data =&gt; params.success(data)),
          cellRenderer: (params) =&gt; params.value.name
      }
  }
  </code></pre>
  
  <p>The set filter is displaying correctly and so is the column e.g. the status names are showing both but when I click to deselect one of the items in the filter it deselects all.</p>
  
  <p>Am I understanding the set filter. Can i use it and do my filtering server side? I don't want to do any client side comparators etc.</p>