@electron-toolkit/typed-ipc
Version:
Type-safe Electron IPC, best practices in TypeScript.
25 lines (23 loc) • 592 B
JavaScript
/**
* Typed emitter for Electron `ipcRenderer`.
*/
class IpcEmitter {
send(channel, ...args) {
window.electron.ipcRenderer.send(channel, ...args);
}
invoke(channel, ...args) {
return window.electron.ipcRenderer.invoke(channel, ...args);
}
}
/**
* Typed listener for Electron `ipcRenderer`.
*/
class IpcListener {
on(channel, listener) {
return window.electron.ipcRenderer.on(channel, listener);
}
once(channel, listener) {
return window.electron.ipcRenderer.once(channel, listener);
}
}
export { IpcEmitter, IpcListener };