// All of the Node.js APIs are available in the preload process. // It has the same sandbox as a Chrome extension. import { ipcRenderer } from "electron"; declare global { interface Window { ipcRenderer: typeof ipcRenderer; } } window.ipcRenderer = ipcRenderer; process.once("loaded", () => { window.addEventListener("message", event => { // do something with custom event const message = event.data; if (message.endpoint === "update-menu-bar") { ipcRenderer.send("update-menu-bar", message.content); } if (message.endpoint === "update-recorder") { ipcRenderer.send("update-recorder", message.content); } if (message.endpoint === "client-message") { ipcRenderer.send("client-message", message.content); } if (message.endpoint === "logout") { ipcRenderer.send("logout", message.content); } }); });