Need more detail here on what the promise should resolve to (an array with a label, undoFunction, context, args...). An @example would be nice too (see https://github.com/montagejs/montage/blob/master/ui/native/button.reel/button.js#L51 for the syntax)