DXN bytes (@bytes "...", base64 in text, raw binary in .dxnb).
Wraps a Uint8Array — needed because string is also representable
as raw bytes in JS (Buffer/TextEncoder round-trips), so a bare
Uint8Array on its own can't tell "UTF-8 text" and "raw bytes that
happen to be valid UTF-8" apart on re-encode any better than a bare
Elixir binary() can — mirrors Dextrin.Bytes exactly. No
conversion helper needed beyond direct field access: Uint8Array is
already the native binary type this class wraps.
DXN
bytes(@bytes "...", base64 in text, raw binary in.dxnb). Wraps aUint8Array— needed becausestringis also representable as raw bytes in JS (Buffer/TextEncoderround-trips), so a bareUint8Arrayon its own can't tell "UTF-8 text" and "raw bytes that happen to be valid UTF-8" apart on re-encode any better than a bare Elixirbinary()can — mirrorsDextrin.Bytesexactly. No conversion helper needed beyond direct field access:Uint8Arrayis already the native binary type this class wraps.