UNPKG

interprocess

Version:

A scalable and type-safe Electron IPC management tool with enhanced DX

12 lines (11 loc) 699 B
import type { API } from '../types'; export declare function createApiToGlobalWindowExposer<Handle, Invoke, Remove>(rendererHandle: Handle, rendererInvoke: Invoke, rendererRemove: Remove): <APIConfig extends API<Handle, Invoke, Remove, APIConfig>>(props?: APIConfig) => { key: APIConfig["apiKey"] extends string ? APIConfig["apiKey"] : "api"; api: (APIConfig["override"] extends Function ? ReturnType<APIConfig["override"]> : APIConfig["exposeAll"] extends true ? { invoke: Invoke; handle: Handle; remove: Remove; } : { invoke: Invoke; }) & ((APIConfig["append"] extends infer T ? { [K in keyof T]: APIConfig["append"][K]; } : never) | undefined); };