@tanstack/offline-transactions
Version:
Offline-first transaction capabilities for TanStack DB
54 lines (43 loc) • 1.47 kB
text/typescript
// Main API
export { OfflineExecutor, startOfflineExecutor } from './OfflineExecutor'
// Types
export type {
OfflineTransaction,
OfflineConfig,
OfflineMode,
StorageAdapter,
StorageDiagnostic,
StorageDiagnosticCode,
RetryPolicy,
LeaderElection,
OnlineDetector,
CreateOfflineTransactionOptions,
CreateOfflineActionOptions,
SerializedError,
SerializedMutation,
} from './types'
export { NonRetriableError } from './types'
// Storage adapters
export { IndexedDBAdapter } from './storage/IndexedDBAdapter'
export { LocalStorageAdapter } from './storage/LocalStorageAdapter'
// Retry policies
export { DefaultRetryPolicy } from './retry/RetryPolicy'
export { BackoffCalculator } from './retry/BackoffCalculator'
// Coordination
export { WebLocksLeader } from './coordination/WebLocksLeader'
export { BroadcastChannelLeader } from './coordination/BroadcastChannelLeader'
// Connectivity
export {
WebOnlineDetector,
DefaultOnlineDetector,
} from './connectivity/OnlineDetector'
// API components
export { OfflineTransaction as OfflineTransactionAPI } from './api/OfflineTransaction'
export { createOfflineAction } from './api/OfflineAction'
// Outbox management
export { OutboxManager } from './outbox/OutboxManager'
export { TransactionSerializer } from './outbox/TransactionSerializer'
// Execution engine
export { KeyScheduler } from './executor/KeyScheduler'
export { TransactionExecutor } from './executor/TransactionExecutor'
// Replay