These events are emitted for every navigation request which isn't really efficient. Also upstream has removed the observers that provide these details as part of network servification https://chromium-review.googlesource.com/c/chromium/src/+/805008 and https://chromium-review.googlesource.com/c/chromium/src/+/786320. We are removing it as a part of chromium 66 upgrade.

Proposed alternative: Users can use the [webRequest](https://github.com/electron/electron/blob/master/docs/api/web-request.md) module which provides similar navigation details on a subscription basis.
atom/browser/api/atom_api_web_contents.cc
const content::WebContents* web_contents) {
  auto* context = web_contents->GetBrowserContext();
  auto* site_instance = web_contents->GetSiteInstance();
  if (!context || !site_instance)
    return nullptr;
  auto* storage_partition =
      content::BrowserContext::GetStoragePartition(context, site_instance);
  if (!storage_partition)
    return nullptr;
  return storage_partition->GetServiceWorkerContext();
}
void OnCapturePageDone(const base::Callback<void(const gfx::Image&)>& callback,
                       const SkBitmap& bitmap,
                       content::ReadbackResponse response) {
  
  
  const_cast<SkBitmap&>(bitmap).setAlphaType(kPremul_SkAlphaType);
  callback.Run(gfx::Image::CreateFrom1xBitmap(bitmap));
}
}  
struct WebContents::FrameDispatchHelper {
  WebContents* api_web_contents;
  content::RenderFrameHost* rfh;
  bool Send(IPC::Message* msg) { return rfh->Send(msg); }