Skip to content

JSONSerializer

Defined in: packages/core/src/json-serializer.ts:394

ChangesSerializer provides serialization/deserialization methods for CRDT changes.

ChangesType

Type describing changes to a CRDT document. CRDT implementation dependent.

new JSONSerializer<ChangesType>(): JSONSerializer<ChangesType>

JSONSerializer<ChangesType>

createLoadRequestCompletionDetector(): LoadRequestCompletionDetector

Defined in: packages/core/src/json-serializer.ts:415

Create per-stream framing state for fragmented requests whose writer may remain open while waiting for a response.

LoadRequestCompletionDetector

LoadMessageSerializer.createLoadRequestCompletionDetector


decode(message): string

Defined in: packages/core/src/json-serializer.ts:467

Uint8Array

string


deserialize(message): unknown

Defined in: packages/core/src/json-serializer.ts:454

string

unknown


deserializeChanges(changes): ChangesType

Defined in: packages/core/src/json-serializer.ts:475

Uint8Array

ChangesType

ChangesSerializer.deserializeChanges


deserializeLoadRequest(message): CRDTLoadRequest

Defined in: packages/core/src/json-serializer.ts:522

Uint8Array

CRDTLoadRequest

LoadMessageSerializer.deserializeLoadRequest


deserializeSyncMessage(message): CRDTSyncMessage<ChangesType>

Defined in: packages/core/src/json-serializer.ts:494

Uint8Array

CRDTSyncMessage<ChangesType>

SyncMessageSerializer.deserializeSyncMessage


encode(message): Uint8Array

Defined in: packages/core/src/json-serializer.ts:463

string

Uint8Array


protected orderDecodedSyncFields(wire, decoded): CRDTSyncMessage<ChangesType>

Defined in: packages/core/src/json-serializer.ts:401

Keep authenticated JSON field order while dropping unknown wire fields.

Record<string, unknown>

CRDTSyncMessage<ChangesType>

CRDTSyncMessage<ChangesType>


serialize(message): string

Defined in: packages/core/src/json-serializer.ts:419

unknown

string


serializeChanges(changes): Uint8Array

Defined in: packages/core/src/json-serializer.ts:472

ChangesType

Uint8Array

ChangesSerializer.serializeChanges


serializeLoadRequest(message): Uint8Array

Defined in: packages/core/src/json-serializer.ts:513

CRDTLoadRequest

Uint8Array

LoadMessageSerializer.serializeLoadRequest


protected serializeNormalizedSyncWireValue(message): string

Defined in: packages/core/src/json-serializer.ts:434

Stack-safe writer for schema-normalized sync-message wire objects.

Keep this separate from the public generic serializer: JSON.stringify has observable cross-realm and boxed-primitive semantics that a focused protocol writer must not claim to reproduce for arbitrary caller values.

unknown

string


serializeSyncMessage(message): Uint8Array

Defined in: packages/core/src/json-serializer.ts:479

CRDTSyncMessage<ChangesType>

Uint8Array

SyncMessageSerializer.serializeSyncMessage