const { contextBridge, ipcRenderer } = require('electron'); contextBridge.exposeInMainWorld('electronAPI', { openFile: (options) => ipcRenderer.invoke('dialog:openFile', options), saveFile: (options) => ipcRenderer.invoke('dialog:saveFile', options), openProject: () => ipcRenderer.invoke('dialog:openProject'), saveProject: (options) => ipcRenderer.invoke('dialog:saveProject', options), getBackendUrl: () => ipcRenderer.invoke('get-backend-url'), ensureModel: (modelName) => ipcRenderer.invoke('backend:ensureModel', modelName), transcribe: (filePath, modelName, language) => ipcRenderer.invoke('backend:transcribe', { filePath, modelName, language }), encryptString: (data) => ipcRenderer.invoke('safe-storage:encrypt', data), decryptString: (encrypted) => ipcRenderer.invoke('safe-storage:decrypt', encrypted), readFile: (path) => ipcRenderer.invoke('fs:readFile', path), writeFile: (path, content) => ipcRenderer.invoke('fs:writeFile', path, content), });