protoDelimited: {
    dec<T>(type, bytes, options?) => T;
    decStream<T_1>(type, iterable) => AsyncGenerator<T_1, void, unknown>;
    enc(message, options?) => Uint8Array;
    peekSize(data) => {
        eof: false;
        offset: number;
        size: number;
    } | {
        eof: true;
        offset: null;
        size: null;
    };
}

protoDelimited provides functions to serialize and parse size-delimited messages.

A size-delimited message is a varint size in bytes, followed by exactly that many bytes of a message serialized with the binary format.

This size-delimited format is compatible with other implementations. For details, see https://github.com/protocolbuffers/protobuf/issues/10229

Type declaration

  • dec:function
    • Parse a size-delimited message, ignoring extra bytes.

      Type Parameters

      Parameters

      Returns T

  • decStream:function
    • Parse a stream of size-delimited messages.

      Type Parameters

      Parameters

      • type: MessageType<T_1>
      • iterable: AsyncIterable<Uint8Array>

      Returns AsyncGenerator<T_1, void, unknown>

  • enc:function
    • Serialize a message, prefixing it with its size.

      Parameters

      Returns Uint8Array

  • peekSize:function
    • Decodes the size from the given size-delimited message, which may be incomplete.

      Returns an object with the following properties:

      • size: The size of the delimited message in bytes
      • offset: The offset in the given byte array where the message starts
      • eof: true

      If the size-delimited data does not include all bytes of the varint size, the following object is returned:

      • size: null
      • offset: null
      • eof: false

      This function can be used to implement parsing of size-delimited messages from a stream.

      Parameters

      • data: Uint8Array

      Returns {
          eof: false;
          offset: number;
          size: number;
      } | {
          eof: true;
          offset: null;
          size: null;
      }

Generated using TypeDoc