- Core API Reference
- Collection
- createCollection
- liveQueryCollectionOptions
- createLiveQueryCollection
- createOptimisticAction
- createTransaction
- Electric DB Collection
- electricCollectionOptions
- Query DB Collection
- queryCollectionOptions
- RxDB DB Collection
- rxdbCollectionOptions
- PowerSync Collection
- powerSyncCollectionOptions
- createIndexedDB
- indexedDBCollectionOptions
- React Hooks
- useLiveQuery
LiveQuerySnapshot
Defined in: packages/db/src/live-query-observer.ts:67
The canonical, adapter-agnostic view of a live query at a point in time.
getSnapshot() returns a stable object identity that only changes when the query changes, so useSyncExternalStore-style consumers can compare by reference. Each snapshot owns a captured view of state/data, so reading an older snapshot cannot expose rows from a later revision.
Type Parameters#
T#
T extends object
TKey#
TKey extends string | number
Properties#
collection#
collection:
| Collection<T, TKey, any, StandardSchemaV1<unknown, unknown>, T>
| undefined;Defined in: packages/db/src/live-query-observer.ts:76
The underlying collection, or undefined when disabled.
data#
data: T | readonly T[] | undefined;Defined in: packages/db/src/live-query-observer.ts:74
Ordered results (single row for findOne), or undefined when disabled.
isCleanedUp#
isCleanedUp: boolean;Defined in: packages/db/src/live-query-observer.ts:97
isEnabled#
isEnabled: boolean;Defined in: packages/db/src/live-query-observer.ts:98
isError#
isError: boolean;Defined in: packages/db/src/live-query-observer.ts:96
isIdle#
isIdle: boolean;Defined in: packages/db/src/live-query-observer.ts:95
isLoading#
isLoading: boolean;Defined in: packages/db/src/live-query-observer.ts:89
isPersistedReady#
isPersistedReady: boolean;Defined in: packages/db/src/live-query-observer.ts:93
isReady#
isReady: boolean;Defined in: packages/db/src/live-query-observer.ts:90
layoutRevision#
layoutRevision: number;Defined in: packages/db/src/live-query-observer.ts:87
Monotonic counter bumped whenever the visible layout (the ordered key sequence) changes — membership, ordering, or an order-only move. Lets consumers detect a reorder that changed no row value (which data/state identity alone can't express once row values are structurally shared).
It is NOT in lockstep with snapshot identity: a value-only update produces a new snapshot while layoutRevision stays put. A layoutRevision change always accompanies a new snapshot, but not vice versa.
persistedError#
persistedError: unknown;Defined in: packages/db/src/live-query-observer.ts:94
persistedStatus#
persistedStatus: LiveQueryPersistedStatus;Defined in: packages/db/src/live-query-observer.ts:92
Persisted restore is separate from upstream/Collection readiness.
state#
state: ReadonlyMap<TKey, T> | undefined;Defined in: packages/db/src/live-query-observer.ts:72
Keyed results, or undefined for a disabled query.
status#
status: CollectionStatus | "disabled";Defined in: packages/db/src/live-query-observer.ts:88