import type { RuntimeMessage } from "../shared/types"; const worker = new Worker(chrome.runtime.getURL("inference.js"), { type: "module" }); chrome.runtime.onMessage.addListener((message: RuntimeMessage, _sender, sendResponse) => { if (message.type !== "OFFSCREEN_INFER") return false; const listener = (event: MessageEvent<{ results?: unknown; error?: string }>) => { worker.removeEventListener("message", listener); if (event.data.error) sendResponse({ error: event.data.error }); else sendResponse({ results: event.data.results }); }; worker.addEventListener("message", listener); worker.postMessage({ requests: message.requests }); return true; });