Skip to content
Sheetwrite

Sheetwrite / Documentation

SyncCoordinatorEvent@sheetwrite/core

Queue, version, connection, or error transition emitted by synchronization.

Queue, version, connection, or error transition emitted by synchronization.

Variants 12

{ type: "state"; state: SyncStateSnapshot }
{ type: "restored"; pending: readonly SyncMutationRecord[] }
{ type: "persisting"; mutation: SyncMutationRecord }
{ type: "pending"; mutation: SyncMutationRecord }
{ type: "sending"; mutation: SyncMutationRecord }
{
type: "acknowledged";
clientMutationId: string;
version: number;
duplicate: boolean;
}
{
type: "conflict";
mutation: SyncMutationRecord;
response: Extract<PersistenceCommitResponse, { status: "conflict" }>;
}
{ type: "remote-applied"; operation: VersionedOperation }
{
type: "reload-required";
expectedVersion: number;
receivedVersion: number;
snapshot?: WorkbookSnapshot;
}
{
type: "reloaded";
serverVersion: number;
pending: readonly SyncMutationRecord[];
}
{
type: "storage-error";
error: unknown;
clientMutationId?: string;
}
{ type: "error"; error: unknown; clientMutationId?: string }

Declaration

View full TypeScript declaration
export type SyncCoordinatorEvent =
| {
type: "state";
state: SyncStateSnapshot;
}
| {
type: "restored";
pending: readonly SyncMutationRecord[];
}
| {
type: "persisting";
mutation: SyncMutationRecord;
}
| {
type: "pending";
mutation: SyncMutationRecord;
}
| {
type: "sending";
mutation: SyncMutationRecord;
}
| {
type: "acknowledged";
clientMutationId: string;
version: number;
duplicate: boolean;
}
| {
type: "conflict";
mutation: SyncMutationRecord;
response: Extract<
PersistenceCommitResponse,
{
status: "conflict";
}
>;
}
| {
type: "remote-applied";
operation: VersionedOperation;
}
| {
type: "reload-required";
expectedVersion: number;
receivedVersion: number;
snapshot?: WorkbookSnapshot;
}
| {
type: "reloaded";
serverVersion: number;
pending: readonly SyncMutationRecord[];
}
| {
type: "storage-error";
error: unknown;
clientMutationId?: string;
}
| {
type: "error";
error: unknown;
clientMutationId?: string;
};