There's probably a simple way to do this with the built in Button Control app, but I've havent used it since week one with Hubitat.
I have my own app called ABC (Advanced Button Controller) that can do all of the above. This device does not support dim ramping up and down but you can have it increase/decrease brightness by a set value on each push.