R
C

VersionVector

tested

Tracks the highest clock seen per site, assuming each site emits dense clocks (1, 2, 3, …). Used to deduplicate ops and to compute deltas during sync.

Signature

ts
class VersionVector

Methods

observe

Record that an op has been seen.

ts
observe(id: OpId): void
ParameterTypeDescription
idOpId
get

Highest clock seen for a site (0 if none).

ts
get(site: SiteId): number
ParameterTypeDescription
sitestring
Returnsnumber
has

Whether an op id has already been seen.

ts
has(id: OpId): boolean
ParameterTypeDescription
idOpId
Returnsboolean
toJSON

Plain-object snapshot for transport.

ts
toJSON(): Record<SiteId, number>
ReturnsRecord<string, number>
fromJSON
ts
static fromJSON(snapshot: Record<SiteId, number>): VersionVector
ParameterTypeDescription
snapshotRecord<string, number>
ReturnsVersionVector
clone
ts
clone(): VersionVector
ReturnsVersionVector