Can I usea dimension as a filter?

I have two Cubes, Events and Creative, Creative -> hasMany -> Events

Events have a rate measure, interactionRate say, and Creatives have a target dimension

I want to filter all Creatives where the target has been his i.e. where interactionRate > target

I’m aware I can add a dimension to Creatives such as the below

    interactionRateExceededTarget: {
      sql: `${Events.interactionRate} > ${CUBE.target}`,
      type: 'boolean',
      subQuery: true,
    },

However there are many potential types of target so always linking target to interaction isn’t really possible, and creating a dimension for every possible event type target seems a bit silly when in theory it should be a simple as

"filters": [
    {
      "member": "Creatives.interactionRate",
      "operator": "gte",
      "values": [
        "Creatives.target"
      ]
    }
  ]

(technically the target can refer to one of many i.e. a creative might have been set an interactionRate target and another may have been set an enagementRate target which are denoted in another field, Creative.targetType which in the example above would equal interaction, but that’s probably a second problem/question to what i’m asking currently)