Complementarity in MOI wrappers

I’m writing a MathOptInterface wrapper for a solver, and have been trying to implement complementarity. How do I define the problem attribute for the optimizer? If I naively attempt e.g. :

comp::Vector{ConstraintInfo{MOI.VectorAffineFunction{Float64}, MOI.Complements{Int}}},

as an optimizer attribute in MOI I get a type error:
TypeError: in Type{...} expression, expected UnionAll, got Type{MathOptInterface.Complements}

What am I missing? Adding other constraint types seems not to lead to these type errors.

The struct is just MOI.Complements, with no type parameter:


The wrapper for PATH might be a good example to follow: