A hacker cannot decrypt your TLS traffic by hacking your router. The key is generated by the server on the TLS transaction, and it will never be transmitted anywhere.
I read that they use packet sniffers like Wireshark to decrypt HTTPS, is this true?
Yes, but only if they get the symmetric key first. To get that, you need to instruct your TLS client to write the TLS key somewhere, and you load that key on Wireshark. Unless you do so, Wireshark cannot decrypt anything.
the hacker needs to have physical access of your device(computer, smartphone...) to get the private key
Law #3 of Security: If a bad guy has unrestricted physical access to your computer, it’s not your computer anymore.
If anyone have physical access, they don't need to get your keys. They can just alter any software you have to send them the traffic before the encryption. No need to hack your router.
So if your router gets hacked is decryption of HTTPS possible and can the complete URL of sites that you visit be viewed?
No and no. The hacker can know the domain you are accessing (because of the SNI). Encrypted SNI could protect even the domain name, but it's not still in widespread use.