Defined in: packages/db/src/query/live/types.ts:49
Configuration interface for live query collection options
const config: LiveQueryCollectionConfig<any, any> = {
// id is optional - will auto-generate "live-query-1", "live-query-2", etc.
query: (q) => q
.from({ comment: commentsCollection })
.join(
{ user: usersCollection },
({ comment, user }) => eq(comment.user_id, user.id)
)
.where(({ comment }) => eq(comment.active, true))
.select(({ comment, user }) => ({
id: comment.id,
content: comment.content,
authorName: user.name,
})),
// getKey is optional - defaults to using stream key
getKey: (item) => item.id,
}
const config: LiveQueryCollectionConfig<any, any> = {
// id is optional - will auto-generate "live-query-1", "live-query-2", etc.
query: (q) => q
.from({ comment: commentsCollection })
.join(
{ user: usersCollection },
({ comment, user }) => eq(comment.user_id, user.id)
)
.where(({ comment }) => eq(comment.active, true))
.select(({ comment, user }) => ({
id: comment.id,
content: comment.content,
authorName: user.name,
})),
// getKey is optional - defaults to using stream key
getKey: (item) => item.id,
}
TContext extends Context
TResult extends object = GetResult<TContext> & object
optional gcTime: number;
optional gcTime: number;
Defined in: packages/db/src/query/live/types.ts:92
GC time for the collection
optional getKey: (item) => string | number;
optional getKey: (item) => string | number;
Defined in: packages/db/src/query/live/types.ts:70
Function to extract the key from result items If not provided, defaults to using the key from the D2 stream
TResult
string | number
optional id: string;
optional id: string;
Defined in: packages/db/src/query/live/types.ts:57
Unique identifier for the collection If not provided, defaults to live-query-${number} with auto-incrementing number
optional onDelete: DeleteMutationFn<TResult, string | number, UtilsRecord, any>;
optional onDelete: DeleteMutationFn<TResult, string | number, UtilsRecord, any>;
Defined in: packages/db/src/query/live/types.ts:82
optional onInsert: InsertMutationFn<TResult, string | number, UtilsRecord, any>;
optional onInsert: InsertMutationFn<TResult, string | number, UtilsRecord, any>;
Defined in: packages/db/src/query/live/types.ts:80
Optional mutation handlers
optional onUpdate: UpdateMutationFn<TResult, string | number, UtilsRecord, any>;
optional onUpdate: UpdateMutationFn<TResult, string | number, UtilsRecord, any>;
Defined in: packages/db/src/query/live/types.ts:81
query:
| QueryBuilder<TContext>
| (q) => QueryBuilder<TContext>;
query:
| QueryBuilder<TContext>
| (q) => QueryBuilder<TContext>;
Defined in: packages/db/src/query/live/types.ts:62
Query builder function that defines the live query
optional schema: undefined;
optional schema: undefined;
Defined in: packages/db/src/query/live/types.ts:75
Optional schema for validation
optional singleResult: true;
optional singleResult: true;
Defined in: packages/db/src/query/live/types.ts:97
If enabled the collection will return a single object instead of an array
optional startSync: boolean;
optional startSync: boolean;
Defined in: packages/db/src/query/live/types.ts:87
Start sync / the query immediately