TYP: Type hints in merge incorrect for ``on`` 
The type hints for merge 
```
    on: IndexLabel | None = None,
    left_on: IndexLabel | None = None,
    right_on: IndexLabel | None = None,
```

imply that we pass keys here. 

We have tests, which pass arrays as on argument, for example

``test_handle_join_key_pass_array``

Not sure if this is tested well...

related: #42844