import { CloudDBZoneSnapshot } from '../CloudDBZoneSnapshot'; import { State } from '../struct/Monitor'; import { ObjectWrapper } from '../sync/ObjectWrapper'; import { ServerPushOperationType } from '../sync/utils/MessageType'; import { CloudDBZoneQuery } from '../CloudDBZoneQuery'; import { ErrorCode } from '../utils/ErrorCode'; import { NaturalBaseRef } from '../base/NaturalBaseRef'; export declare class SnapshotGenerator { private readonly snapshotVersionIds; private readonly upsertedVersionIds; private readonly deletedVersionIds; private readonly naturalBaseRef; private snapshotCache; private version; private clz; private cloudDBZoneQuery; private taskQueue; constructor(clz: new () => T, cloudDBZoneQuery: CloudDBZoneQuery, naturalBaseRef: NaturalBaseRef); initialize(primaryKeys: string[]): void; getVersion(): State; increaseVersion(): void; cacheSnapshotObjects(pushedData: unknown[], errorCode: ErrorCode, operationType?: ServerPushOperationType): void; private processPushData; private handleIncrementalData; private handlePushAllData; private clearSnapshotVersionIds; generateSnapshot(clz: new () => T, isFirstSnapshot: boolean): CloudDBZoneSnapshot; private buildSnapshotObjects; getSnapshotCache(): ObjectWrapper[]; getSnapshotCacheVersionIds(): Map; private generateRecord; }