const { contextBridge, ipcRenderer } = require("electron"); contextBridge.exposeInMainWorld("modelrouter", { win: { minimize: () => ipcRenderer.invoke("window:minimize"), toggleMaximize: () => ipcRenderer.invoke("window:toggleMaximize"), close: () => ipcRenderer.invoke("window:close"), isMaximized: () => ipcRenderer.invoke("window:isMaximized"), }, core: { state: () => ipcRenderer.invoke("core:state"), start: () => ipcRenderer.invoke("core:start"), stop: () => ipcRenderer.invoke("core:stop"), restart: () => ipcRenderer.invoke("core:restart"), probe: () => ipcRenderer.invoke("core:probe"), key: () => ipcRenderer.invoke("core:key"), onState: (cb) => ipcRenderer.on("core:state", (_e, d) => cb(d)), }, settings: { get: () => ipcRenderer.invoke("settings:get"), set: (patch) => ipcRenderer.invoke("settings:set", patch), logFile: () => ipcRenderer.invoke("settings:logFile"), }, shell: { openPath: (p) => ipcRenderer.invoke("shell:openPath", p), }, });