If checkForUpdates fails because of lack of the internet connection update-not-available won't run and the timer for checking updated won't be restarted. After this diff check for updates will be done continuously and only stopped between update-available and update-downloaded events (so the update won't downloaded multiple times).
Add some logging and check that checkForUpdates is called correctly, even in case of no network connection. Try updating to a new version.
How about the case where we detect that an update is available, we stop an interval and then downloading the update fails?
Is it beneficial to introduce a new term schedule? Maybe we can use interval?
I'm not sure if I suggested something similar previously, but () => f() could be replaced by just f
Note that this only works if autoUpdater.checkForUpdates is defined as an arrow function instead of a standard class function... otherwise this will be dropped unless you use bind