@triplit/client
Version:
25 lines (24 loc) • 1.18 kB
TypeScript
import type { SubscriptionSignalPayload, SubscriptionOptions } from './types';
import type { Models, SchemaQuery } from '@triplit/db';
export type EnabledSubscriptionOptions = SubscriptionOptions & {
/**
* If false, the subscription will return a disabled state.
*/
enabled?: boolean;
};
/**
* Returns the disabled state for a subscription when enabled = false
*/
export declare function getDisabledSubscriptionState<M extends Models<M>, Q extends SchemaQuery<M>>(): SubscriptionSignalPayload<M, Q>;
/**
* Returns the initial loading state for a subscription when enabled = true
*/
export declare function getInitialSubscriptionState<M extends Models<M>, Q extends SchemaQuery<M>>(): SubscriptionSignalPayload<M, Q>;
/**
* Checks if a subscription should be enabled based on options
*/
export declare function isSubscriptionEnabled(options?: Partial<EnabledSubscriptionOptions>): boolean;
/**
* Returns the appropriate initial state based on whether the subscription is enabled
*/
export declare function getInitialState<M extends Models<M>, Q extends SchemaQuery<M>>(options?: Partial<EnabledSubscriptionOptions>): SubscriptionSignalPayload<M, Q>;