import { NodeWorkerTransport } from "../internal/transports/node-worker/node.ts"; import { RpcPeer } from "../internal/ipc-node.ts"; import { mainContract, workerContract } from "./api.ts"; const mainRpc = new RpcPeer( { localContract: mainContract, remoteContract: workerContract, transport: new NodeWorkerTransport({ path: "worker.ts", basePath: import.meta.url, count: 10, }), }, { echo: (params) => { console.log("echo", params); return params; }, }, ); for (let i = 0; i < 10; i++) { const result = await mainRpc.call("add", { a: 1, b: 2 }); console.log("Result:", result); } const gen = await mainRpc.call("range", { start: 1, end: 5 }); for await (const value of gen) { console.log("Range value:", value); } console.log("Done"); process.exit(0);