electron-event-flux
Version:
Redux store which synchronizes between instances in multiple process
35 lines • 1.38 kB
TypeScript
import { Log } from "./utils/loggerApply";
import IMainClientCallbacks from "./IMainClientCallbacks";
import { WebContents, BrowserWindow, Event } from 'electron';
import IMainClient from './IMainClient';
interface IClientInfo {
webContents: WebContents;
window: BrowserWindow;
clientId: string;
}
export default class ElectronMainClient implements IMainClient {
clientInfos: IClientInfo[];
clientMap: {
[key: string]: IClientInfo;
};
log: Log;
mainClientCallbacks: IMainClientCallbacks;
constructor(callbacks: IMainClientCallbacks, log: Log);
private handleUnregisterRenderer;
private handleRegister;
private handleRendererDispatch;
handleWinMessage: (event: Event, clientId: string, data: any) => void;
private checkWebContents;
private _sendForWebContents;
getForwardClients(): IClientInfo[];
dispatchToRenderer(client: IClientInfo, payload: any): void;
sendWinMsg(clientId: string, message: any): void;
getWindow(clientId: string): BrowserWindow | undefined;
getWebContents(clientId: string): WebContents | undefined;
changeClientAction(clientId: string, params: any): void;
isRegister(clientId: string): boolean;
whenRegister(clientId: string, callback: () => void): void;
isClose(clientId: string): boolean;
}
export {};
//# sourceMappingURL=ElectronMainClient.d.ts.map