UNPKG

@zlepper/rpc

Version:

Allows RPC from the main thread to a background worker thread (Of any kind), using ES6 classes.

30 lines (29 loc) 1.24 kB
import { WorkerClientConnection } from './client/worker-client-connection.js'; import { CrossInvocation, CrossInvocationResult } from './shared/cross-invocation.js'; import { WorkerServerConnection } from './worker/worker-server-connection.js'; declare class Pipe { private clientCallback?; private serverCallback?; sendToServer(message: CrossInvocation): void; sendToClient(message: CrossInvocationResult): void; registerClientCallback(callback: (message: CrossInvocationResult) => void): void; registerServerCallback(callback?: (message: CrossInvocation) => void): void; } export declare class TestClientConnection implements WorkerClientConnection { private pipe; constructor(pipe: Pipe); addListener(callback: (data: CrossInvocationResult) => void): void; send(message: CrossInvocation): void; } export declare class TestServerConnection implements WorkerServerConnection { private pipe; constructor(pipe: Pipe); addListener(callback: (data: CrossInvocation) => void): void; removeListener(): void; send(message: CrossInvocationResult): void; } export declare function createTestConnection(): { client: TestClientConnection; server: TestServerConnection; }; export {};