Should we raise a ``TypeError`` if this gets something other than bytes?