@orbit/record-cache
Version:
Orbit base classes used to access and maintain a set of records.
27 lines (26 loc) • 1.9 kB
TypeScript
import { RequestOptions } from '@orbit/data';
import { RecordQuery, RecordQueryBuilder, RecordQueryResult, RecordSchema, RecordTransformBuilder } from '@orbit/records';
import { RecordCacheQueryOptions, RecordCacheTransformOptions } from '../record-cache';
import { SyncRecordCache } from '../sync-record-cache';
import { LiveQuery, LiveQuerySettings } from './live-query';
export interface SyncLiveQueryUpdateSettings<QO extends RequestOptions = RecordCacheQueryOptions, TO extends RequestOptions = RecordCacheTransformOptions, QB = RecordQueryBuilder, TB = RecordTransformBuilder> {
cache: SyncRecordCache<QO, TO, QB, TB>;
query: RecordQuery;
}
export declare class SyncLiveQueryUpdate<QO extends RequestOptions = RecordCacheQueryOptions, TO extends RequestOptions = RecordCacheTransformOptions, QB = RecordQueryBuilder, TB = RecordTransformBuilder> {
private _cache;
private _query;
constructor(settings: SyncLiveQueryUpdateSettings<QO, TO, QB, TB>);
query<Result extends RecordQueryResult = RecordQueryResult>(): Result;
}
export interface SyncLiveQuerySettings<QO extends RequestOptions = RecordCacheQueryOptions, TO extends RequestOptions = RecordCacheTransformOptions, QB = RecordQueryBuilder, TB = RecordTransformBuilder> extends LiveQuerySettings {
cache: SyncRecordCache<QO, TO, QB, TB>;
}
export declare class SyncLiveQuery<QO extends RequestOptions = RecordCacheQueryOptions, TO extends RequestOptions = RecordCacheTransformOptions, QB = RecordQueryBuilder, TB = RecordTransformBuilder> extends LiveQuery {
protected cache: SyncRecordCache<QO, TO, QB, TB>;
protected get schema(): RecordSchema;
private get _update();
constructor(settings: SyncLiveQuerySettings<QO, TO, QB, TB>);
query<Result extends RecordQueryResult = RecordQueryResult>(): Result;
subscribe(cb: (update: SyncLiveQueryUpdate<QO, TO, QB, TB>) => void): () => void;
}