Skip to main content

Interface: StateSyncServiceContract

Defined in: src/services/StateSyncService.ts:56

Contract for renderer-facing state synchronization operations.

Remarksโ€‹

Provides guarded access to preload-managed IPC endpoints so callers do not touch the window.electronAPI global directly. Implementations must ensure the Electron bridge is ready before invoking any underlying channel.

Propertiesโ€‹

getSyncStatus()โ€‹

readonly getSyncStatus: () => Promise<{ lastSyncAt?: number | null; siteCount: number; source: "cache" | "database" | "frontend"; synchronized: boolean; }>

Defined in: src/services/StateSyncService.ts:58

Retrieves the latest synchronization status snapshot from the backend.

Returnsโ€‹

Promise<{ lastSyncAt?: number | null; siteCount: number; source: "cache" | "database" | "frontend"; synchronized: boolean; }>


initialize()โ€‹

readonly initialize: () => Promise<void>

Defined in: src/services/StateSyncService.ts:60

Ensures the preload bridge is available prior to IPC usage.

Returnsโ€‹

Promise<void>


onStateSyncEvent()โ€‹

readonly onStateSyncEvent: (callback: (event: StateSyncEventData) => void) => Promise<() => void>

Defined in: src/services/StateSyncService.ts:65

Registers a handler for incremental state sync events and returns a cleanup callback.

Parametersโ€‹

callbackโ€‹

(event: StateSyncEventData) => void

Returnsโ€‹

Promise<() => void>


requestFullSync()โ€‹

readonly requestFullSync: () => Promise<{ completedAt: number; siteCount: number; sites: Site[]; source: "cache" | "database" | "frontend"; synchronized: boolean; }>

Defined in: src/services/StateSyncService.ts:72

Requests a full synchronization cycle and returns the backend result payload.

Returnsโ€‹

Promise<{ completedAt: number; siteCount: number; sites: Site[]; source: "cache" | "database" | "frontend"; synchronized: boolean; }>