I want something like this too, but it doesn't seem like there's a good solution for it ATM, as others have already pointed out.
Best solution for me that I could figure out was to use a short timeout for Settings -> Network and internet -> Internet -> Network preferences -> Turn off Wi-Fi automatically
to turn off my wifi when I'm not connected to a network, and https://f-droid.org/en/packages/de.j4velin.wifiAutoOff/ to turn on my wifi every so often.
That way my wifi is only on for short periods, and will automatically connect to the networks I want in that time if they're available. This solution uses as much built in GrapheneOS functionality as possible, and doesn't require location permissions + having my location services constantly enabled as I would if I used Tasker / Easer / any other automation app I know of.
I've opted to just turn mobile data on/off manually, since any solution to toggle that would require root. However, it seems like turning off Settings -> System -> Developer options -> Mobile data always active
might help to save some battery / mobile data allowance in the event I forget to turn off mobile data.
Not sure how much of an impact all this is really going to have on battery life though, since I'm mostly at home and connected to my home wifi. I suppose I could just leave my wifi on all the time and it wouldn't make much of a difference.
Probably not the best approach for privacy either. The best option there for now would be to just get better at managing stuff manually, at least until there is some kind of network location service implemented in GrapheneOS to make the built in wifi automation work properly. But I'm willing to make the trade for convenience in that regard.