So the answer to your question is yes. It is possible and kind of required to go the full nix route with NixOS. It might not always be super straightforward with large DEs, and for sure works much better with window managers that already utilize text configuration.
You can. I run sway and it is configured through nix:
https://github.com/pimeys/nixos/blob/main/desktop/sway/default.nix
Gnome design makes it a bit harder, but not impossible:
https://hoverbear.org/blog/declarative-gnome-configuration-in-nixos/
Somebody doing the same for KDE:
https://github.com/LunNova/nixos-configs/blob/dev/users/lun/on-nixos/kdeconfig.nix
So the answer to your question is yes. It is possible and kind of required to go the full nix route with NixOS. It might not always be super straightforward with large DEs, and for sure works much better with window managers that already utilize text configuration.