Skip to main content

Interface: SyncEvents

Defined in: contract.ts:123

@rasd/sync — the public entry point.

Two things ship here: the engine (createSyncEngine), which is transport agnostic and drives @rasd/storage's outbox, and the RSP v1 transport (createRspTransport), which is one implementation of the frozen SyncTransport port. A host talking to ODK Central, KoboToolbox or its own backend replaces the second without touching the first (docs/10-sync-protocol.md §10).

Nothing in this file has an implementation; every symbol is re-exported from the module that owns it, so the graph stays a DAG: contract → types → policy / backoff / classify → idempotency → rsp-transport → engine.

Properties​

datasetUpdated​

datasetUpdated: object;

Defined in: contract.ts:130

name​

name: string;

rows​

rows: number;

error​

error: object;

Defined in: contract.ts:126

code​

code: string;

message​

message: string;

retryable​

retryable: boolean;

formUpdated​

formUpdated: object;

Defined in: contract.ts:129

id​

id: string;

version​

version: string;

licenseRefreshed​

licenseRefreshed: object;

Defined in: contract.ts:141

docs/17 §7 documents this payload as { exp } and the engine has always emitted { token }. Both are here rather than one silently winning: the token is what a host forwards on, and exp is what a "licence renewed until…" line in a UI needs. exp is read out of the token's claims WITHOUT verifying it — this event is a notification, never an authorisation, and @rasd/license is the only thing that may decide a token is good.

exp?​

optional exp?: string;

token​

token: string;

progress​

progress: SyncProgress;

Defined in: contract.ts:124


rejected​

rejected: object;

Defined in: contract.ts:128

A submission the server refused; the enumerator must fix and re-finalize.

code​

code: string;

field?​

optional field?: string;

id​

id: string;

message​

message: string;

status​

status: SyncStatus;

Defined in: contract.ts:125


synced​

synced: object;

Defined in: contract.ts:142

attachments​

attachments: number;

submissions​

submissions: number;