/** * Реализация менеджера Live queries (реактивных запросов) */ import { EventEmitter } from 'eventemitter3'; import { CSElement } from '../core/CSElement'; import { LiveQueryManager, LiveQuery, LiveQueryConfig, LiveQueryStats, LiveQueryBuilder, LiveQueryCallback, LiveQueryErrorCallback, LiveQueryFilter, LiveQueryTransform, LiveQuerySort, QueryOptions } from '../types/live-query-interfaces'; export declare class LiveQueryManagerImpl extends EventEmitter implements LiveQueryManager { private queries; private subscriptions; private stats; private debounceTimers; private updateBatches; private indexes; private CSElementClass; constructor(); setCSElementClass(cls: typeof CSElement): void; createLiveQuery(selector: string, options?: QueryOptions, config?: LiveQueryConfig): LiveQuery; start(queryId: string): void; stop(queryId: string): void; getLiveQuery(queryId: string): LiveQuery | undefined; getAllLiveQueries(): LiveQuery[]; removeLiveQuery(queryId: string): boolean; updateQuery(queryId: string): void; updateAllQueries(): void; addFilter(queryId: string, filter: LiveQueryFilter): void; removeFilter(queryId: string, filterIndex: number): void; addTransform(queryId: string, transform: LiveQueryTransform): void; setSort(queryId: string, sort: LiveQuerySort): void; subscribe(queryId: string, callback: LiveQueryCallback): string; unsubscribe(queryId: string, subscriptionId: string): boolean; getStats(): LiveQueryStats; clear(): void; notifyElementChange(element: CSElement, _changeType: 'create' | 'update' | 'delete'): void; notifyDataChange(element: CSElement, key: string, _newValue: any, _oldValue: any): void; private executeQuery; private performQuery; private setupQueryWatching; private stopQueryWatching; private findAffectedQueries; private findQueriesUsingDataKey; private queryAffectedByElement; private queryUsesDataKey; private notifySubscribers; private calculateChangeCount; private updateSelectorStats; private updateExecutionTimeStats; private updateStats; private calculateMemoryUsage; private createEmptyStats; private emitEvent; } export declare class LiveQueryBuilderImpl implements LiveQueryBuilder { private _selector; private _options; private _config; private _filters; private _transforms; private _sort?; private _onResults?; private _onError?; private manager; constructor(manager: LiveQueryManager); selector(selector: string): LiveQueryBuilder; options(options: QueryOptions): LiveQueryBuilder; config(config: LiveQueryConfig): LiveQueryBuilder; filter(filter: LiveQueryFilter): LiveQueryBuilder; transform(transform: LiveQueryTransform): LiveQueryBuilder; sort(sort: LiveQuerySort): LiveQueryBuilder; limit(limit: number): LiveQueryBuilder; debounce(ms: number): LiveQueryBuilder; cache(ttl?: number): LiveQueryBuilder; subscribe(callback: LiveQueryCallback): LiveQueryBuilder; onError(callback: LiveQueryErrorCallback): LiveQueryBuilder; start(): LiveQuery; build(): LiveQuery; } //# sourceMappingURL=LiveQueryManagerImpl.d.ts.map