The SmartThings documentation only mentions overwrite: as a valid option in the map and data: is not listed. lists [data: ...] as a valid option key. Presumably, Hubitat should allow it to be used as well.
If a data: map cannot be passed on, since runOnce is executed independently, the only way I can think of to pass arguments is to use state objects, or a single state object to store a map of all of those arguments you are trying to pass.
Executes the handlerMethod once at the specified date and time.
void runOnce(dateTime, handlerMethod [, options])
dateTime - When to execute the handlerMethod . Can be either a Date object or an ISO-8601 date string. For example, new Date() + 1 would run at the current time tomorrow, and "2017-07-04T12:00:00.000Z" would run at noon GMT on July 4th, 2017.
handlerMethod - The method to execute at the specified dateTime . This can be a reference to the method, or the method name as a string.
options(optional) - A map of parameters, with the following keys supported:
true or false
Specify [overwrite: false] to not overwrite any existing pending schedule handler for the given method (the default behavior is to overwrite the pending schedule). Specifying [overwrite: false] can lead to multiple different schedules for the same handler method, so be sure your handler method can handle this.
A map of data
A map of data that will be passed to the handler method.