Simply removing the brackets is a bad idea, as this is not a valid JavaScript object anymore. Each key can only hold one value, for multiple values you’ll need the array.
This descriptor works fine:
{
"_obj": "applyImageEvent",
"with": {
"_obj": "calculation",
"to": {
"_ref": [
{
"_ref": "channel",
"_enum": "channel",
"_value": "RGB"
},
{
"_ref": "layer",
"_enum": "ordinal",
"_value": "merged"
}
]
},
"calculation": {
"_enum": "calculationType",
"_value": "subtract"
},
"scale": 2,
"offset": 128
},
}