import { SPSC, SPSCError } from './common.js'; export { SPSCError }; type Uint8ArrayLike = { buffer: ArrayBuffer; byteOffset?: number; byteLength?: number; }; interface _ReadOptions { nonblock: boolean; /** if set, read into this array buffer to omit allocation */ into: Uint8ArrayLike; } export interface ReadOptions extends Partial<_ReadOptions> { } export type ReadResult = { ok: false; error: SPSCError; } | { ok: true; bytesRead: number; data: Uint8Array; }; export declare class SPSCReader extends SPSC { #private; readonly notifier?: MessagePort | undefined; readonly notifierToken?: unknown | undefined; constructor(sab: SharedArrayBuffer, notifier?: MessagePort | undefined, notifierToken?: unknown | undefined); close(): void; read(nbytes: number, options?: ReadOptions): ReadResult; bytesAvailable(): number; pollRead(timeout?: number): boolean; }