const {contextBridge, ipcRenderer} = require('electron') contextBridge.exposeInMainWorld('vikunjaDesktop', { startOAuthLogin: (apiUrl) => ipcRenderer.invoke('oauth:start-login', apiUrl), onOAuthTokens: (callback) => { ipcRenderer.removeAllListeners('oauth:tokens') ipcRenderer.on('oauth:tokens', (_event, tokens) => callback(tokens)) }, onOAuthError: (callback) => { ipcRenderer.removeAllListeners('oauth:error') ipcRenderer.on('oauth:error', (_event, error) => callback(error)) }, refreshToken: (apiUrl, refreshToken) => ipcRenderer.invoke('oauth:refresh-token', apiUrl, refreshToken), updateQuickEntryShortcut: (shortcut) => ipcRenderer.send('desktop:update-quick-entry-shortcut', shortcut), isDesktop: true, })