UNPKG

narraleaf

Version:

Create your visual novel with Electron and React

21 lines (20 loc) 1.85 kB
import { IPC, IPCType, OnlyMessage, OnlyRequest } from "../../../core/ipc/ipc"; import { IpcEvents, RequestStatus } from "../../../core/ipc/events"; import { AppEventToken } from "../../../main/electron/app/app"; import { AppWindow } from "../../../main/electron/app/appWindow"; export declare class IPCHost extends IPC<IpcEvents, IPCType.Host> { private static handling; private static events; static handle<K extends keyof OnlyRequest<IpcEvents, IPCType.Host>>(namespace: string, win: AppWindow, listener: (data: IpcEvents[K]["data"], resolve: (response: Exclude<IpcEvents[K]["response"], never>) => void) => Promise<void>): AppEventToken; static off<K extends keyof OnlyMessage<IpcEvents, IPCType.Host>>(namespace: string, listener: (data: IpcEvents[K]["data"]) => void): void; static emitHandler<K extends keyof OnlyRequest<IpcEvents, IPCType.Host>>(win: AppWindow, namespace: string, data: IpcEvents[K]["data"]): Promise<IpcEvents[K]["response"]>; constructor(namespace: string); invoke<K extends keyof OnlyRequest<IpcEvents, IPCType.Host>>(win: AppWindow, key: K, data: IpcEvents[K]["data"]): Promise<Exclude<IpcEvents[K]["response"], never>>; send<K extends keyof OnlyMessage<IpcEvents, IPCType.Host>>(win: AppWindow, key: K, data: IpcEvents[K]["data"]): void; onMessage<K extends keyof OnlyMessage<IpcEvents, IPCType.Host>>(win: AppWindow, key: K, listener: (data: IpcEvents[K]["data"]) => void): AppEventToken; onRequest<K extends keyof OnlyRequest<IpcEvents, IPCType.Host>>(win: AppWindow, key: K, listener: (data: IpcEvents[K]["data"]) => Promise<Exclude<IpcEvents[K]["response"], never>>): AppEventToken; failed<T>(err: unknown): RequestStatus<T>; success<T>(data: T): RequestStatus<T>; success(): RequestStatus<void>; tryUse<T>(exec: () => T | Promise<T>): Promise<RequestStatus<T>>; }