I wasn't able to find a way to make this work, but perhaps someone more creative can think of something. Normally something like 1..60 would give you a collection like an IntRange, but Hubitat wants that as a string and not an actual range. If it didn't , (1..60).add(255) would give you what you wanted.
So, I don't know. Maybe staff who know more about how that works on the inside can comment. Otherwise, just thought I'd throw out what I know...or don't, apparently.
The only way for this to work is to do the range check separately from the input. RM has to do this where it allows the use of a variable reference in what would otherwise be a number input. This needs to be on a dynamic page to work, and it needs someway to give UI feedback for a bad value. Unlike range: "0..60", it won't stop a bad input, just catches it.
I have the catch before it sets the param but no user feedback. I was trying to add the range so the user gets the feedback without me jumping through hoops. That didn't work out though lol.
What RM does is use a text input (so it can use %varName%). Then it tests the input, and if bad changes the setting to **Bad Value. Since it's a dynamic page, the user sees this displayed. That display is caused by a forced page refresh.
Ya thanks. Knew that..but not creating a list that long. Integer should enforce the range option and also that the number is an integer in my opinion anyway.