data-transport
Version:
A simple and responsive transport
37 lines • 1.4 kB
TypeScript
import type { BrowserWindow, IpcMain, IpcRenderer } from 'electron';
import type { BaseInteraction, TransportOptions } from '../interface';
import { Transport } from '../transport';
interface ElectronTransportOptions extends Partial<TransportOptions> {
/**
* Specify a Electron channel name.
*/
channel?: string;
}
export interface ElectronMainTransportOptions extends ElectronTransportOptions {
/**
* Specify a browser windows created by the Electron main process.
*/
browserWindow: BrowserWindow;
/**
* Communicate asynchronously from the main process to renderer processes.
*/
ipcMain: IpcMain;
}
export interface ElectronRendererTransportOptions extends ElectronTransportOptions {
/**
* Communicate asynchronously from a renderer process to the main process.
*/
ipcRenderer: IpcRenderer;
}
export declare abstract class ElectronMainTransport<T extends BaseInteraction = any> extends Transport<T> {
constructor(_options: ElectronMainTransportOptions);
}
export declare abstract class ElectronRendererTransport<T extends BaseInteraction = any> extends Transport<T> {
constructor(_options: ElectronRendererTransportOptions);
}
export declare const ElectronTransport: {
Main: typeof ElectronMainTransport;
Renderer: typeof ElectronRendererTransport;
};
export {};
//# sourceMappingURL=electronTransport.d.ts.map