For QWidgets. If you want to use QtQuick, you're basically using javascript and/or C++ (I'm not personally complaining, I'm comfortable enough in C++). EDIT: seems there's rust bindings for QtQuick too.
You can use QML with PyQt5, instead of using C++ you use Python.
Yes you still write QML.
I stand corrected. Thanks for letting me know!
There are Rust, Go and D bindings to QtQuick afaik.