Example: useButton hooks takes in a multitude of parameters - many of which are optional.
This makes code much harder to read and reason about.
This issue suggests supporting a table of named parameter being passed to hooks such as useButton, instead.
For example:
useButton({
onClick = ...,
onMouseEnter = ...,
})