/** * @blockcast/fec-worker — Shred (Reed-Solomon) Worker Entry Point * * Runs inside a DedicatedWorkerGlobalScope. Owns the batch-drain: reads raw * shred frames (either from a transferred `ReadableStream` or via `feedShred`), * parses the wire header, drives the `ShredFecBuffer` WASM decoder, and posts * only recovered FEC sets (plus a coalesced stats heartbeat) back to the main * thread. This moves the datagram read loop + wire parse + WASM FEC entirely * off the main thread, so the page does no `read()`-per-packet work. * * WASM bindings resolve via: * 1. (self as any).__SHRED_WASM_BINDINGS__ — injected by a loader/importmap * or by tests (mirrors the RaptorQ worker's __MMT_WASM_BINDINGS__ contract) * 2. dynamic import of config.wasmUrl (wasm-bindgen ESM: `await default()` * then `new ShredFecBuffer(...)`) * * This file must NOT import DOM globals incompatible with Worker scope. */ export {}; //# sourceMappingURL=shred-fec-worker.d.ts.map