import { contextBridge, ipcRenderer } from 'electron' function listener(channel, callback) { const handler = () => callback() ipcRenderer.on(channel, handler) return () => ipcRenderer.removeListener(channel, handler) } contextBridge.exposeInMainWorld('nativeVueHost', { onBack: (callback) => listener('native-vue:back', callback), onForward: (callback) => listener('native-vue:forward', callback), onMemoryPressure: (callback) => listener('native-vue:memory-pressure', callback), })