import type { IdbqlEventPayload } from './statorAdapter'; type EventType = "add" | "put" | "update" | "updateWhere" | "delete" | "deleteWhere" | "set" | "batchAdd" | "batchPut"; interface EventData { collection: string; data: T; keyPath: string; whereClause?: any; count?: number; } declare class IdbqlStateEventBase { dataState: Record; private _adapter; private _adapters; registerAdapters(adapters: Array<{ applyEvent?: (event: IdbqlEventPayload) => void; }> | null): void; constructor(); registerAdapter(adapter: { applyEvent?: (event: IdbqlEventPayload) => void; } | null): void; registerEvent(event: EventType, eventData: EventData): void; } declare class IdbqlStateEvent extends IdbqlStateEventBase { dataState: Record; } export declare function createIdbqlEvent(): IdbqlStateEventBase; export declare function getIdbqlEvent(): IdbqlStateEventBase | IdbqlStateEvent; export declare const idbqlEvent: IdbqlStateEvent; export {};