Interface RealtimeResumableTransportOptions<TFeature>

interface RealtimeResumableTransportOptions<TFeature> {
    checkpointStore?: RealtimeCheckpointStore;
    context: RealtimeResumeContextV1;
    heartbeatTimeoutMs?: number;
    initialCheckpoint?: RealtimeDurableCheckpointV1;
    maxPendingEvents?: number;
    maxRecentEventIds?: number;
    now?: (() => number);
    onTelemetry?: ((telemetry: RealtimeResumableTransportTelemetry) => void);
    reconnect?: RealtimeReconnectPolicy;
    staleAfterMs?: number;
}

Type Parameters

  • TFeature = unknown

Properties

checkpointStore?: RealtimeCheckpointStore
heartbeatTimeoutMs?: number

No event (including heartbeats) within this window is treated as a transport-detected gap. Disabled when omitted.

initialCheckpoint?: RealtimeDurableCheckpointV1

Seed resume position for the very first connection, validated the same way a loaded checkpointStore checkpoint is (evaluateRealtimeCheckpoint). This is the only supported way to seed a resume position: subscribe()'s request.cursor / resumeFrom and similar fields are ignored by this wrapper so a stale or unscoped caller-supplied position can never bypass checkpoint compatibility validation.

maxPendingEvents?: number

Includes the currently applying event.

64
maxRecentEventIds?: number

Bounded event-id history persisted with each checkpoint.

256
now?: (() => number)
onTelemetry?: ((telemetry: RealtimeResumableTransportTelemetry) => void)
staleAfterMs?: number

Forwarded to deriveRealtimeContractAuthority for telemetry.