handler = (info) => {
    if (getService().checkAuth?.(info.url)) {
      // When onBeforeRequest occurs for initial requests intercepted by service worker,
      // info.tabId will be -1 on Chromium based browsers, use tabId instead.
      // tested on Chrome / Edge / Brave
      browser.tabs.remove(tabId);
      // If we unregister without setTimeout, API will ignore { cancel: true }
      setTimeout(unregister, 0);
      return { cancel: true };
    }
  }
@param {chrome.webRequest.WebResponseDetails} info
@returns {chrome.webRequest.BlockingResponse}