UNPKG

@instantdb/core

Version:
26 lines 1.5 kB
import { type InstantCoreDatabase, type ValidQuery } from './index.ts'; import { InstaQLResponse, InstaQLOptions } from './queryTypes.ts'; import { InstantSchemaDef } from './schemaTypes.ts'; export type ChunkStatus = 'pre-bootstrap' | 'bootstrapping' | 'frozen'; export interface InfiniteQuerySubscription { unsubscribe: () => void; loadNextPage: () => void; } export type InfiniteQueryCallbackResponse<Schema extends InstantSchemaDef<any, any, any>, Query extends Record<string, any>, UseDatesLocal extends boolean> = { error: { message: string; }; data: undefined; canLoadNextPage: boolean; } | { error: undefined; data: InstaQLResponse<Schema, Query, UseDatesLocal>; canLoadNextPage: boolean; }; export declare const subscribeInfiniteQuery: <Schema extends InstantSchemaDef<any, any, any>, Q extends ValidQuery<Q, Schema>, UseDates extends boolean>(db: InstantCoreDatabase<Schema, UseDates>, fullQuery: Q, cb: (resp: InfiniteQueryCallbackResponse<Schema, Q, UseDates>) => void, opts?: InstaQLOptions) => InfiniteQuerySubscription; export declare const getInfiniteQueryInitialSnapshot: <Schema extends InstantSchemaDef<any, any, any>, Q extends ValidQuery<Q, Schema>, UseDates extends boolean>(db: InstantCoreDatabase<Schema, UseDates>, fullQuery: Q | null, opts?: InstaQLOptions) => InfiniteQueryCallbackResponse<Schema, Q, UseDates> | { canLoadNextPage: false; data: undefined; error: undefined; }; //# sourceMappingURL=infiniteQuery.d.ts.map