@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
TypeScript
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 {};