const { contextBridge, ipcRenderer } = require("electron"); contextBridge.exposeInMainWorld("appApi", { loadDashboard: (dateISO) => ipcRenderer.invoke("dashboard:load", dateISO), saveNote: (dateISO, content) => ipcRenderer.invoke("notes:save", { dateISO, content }), updateDailyNoteMetadata: (dateISO, metadata) => ipcRenderer.invoke("notes:updateMetadata", { dateISO, metadata }), createGeneralNote: (title) => ipcRenderer.invoke("generalNotes:create", title), readGeneralNote: (id) => ipcRenderer.invoke("generalNotes:read", id), saveGeneralNote: (id, content) => ipcRenderer.invoke("generalNotes:save", { id, content }), updateGeneralNoteMetadata: (id, metadata) => ipcRenderer.invoke("generalNotes:updateMetadata", { id, metadata }), addTask: (title, dueDate, tags, project) => ipcRenderer.invoke("tasks:add", { title, dueDate, tags, project }), toggleTask: (id, completed) => ipcRenderer.invoke("tasks:toggle", { id, completed }), updateTaskMetadata: (id, tags, project) => ipcRenderer.invoke("tasks:updateMetadata", { id, tags, project }), deleteTask: (id) => ipcRenderer.invoke("tasks:delete", id), updateSettings: (settings) => ipcRenderer.invoke("settings:update", settings), chooseVault: () => ipcRenderer.invoke("vault:choose"), openVault: () => ipcRenderer.invoke("vault:open"), refreshCalendar: (dateISOOrRange) => ipcRenderer.invoke("calendar:refresh", dateISOOrRange) });