/// import EventEmitter from 'events'; import { SatShapeDataBegin, SatSubsDataBegin, SatSubsDataError, SatSubsReq, SatSubsResp, SatTransOp } from '../../_generated/protocol/satellite.js'; import { Relation, SatelliteErrorCode } from '../../util/index.js'; import type { TypeDecoder } from '../../util/encoders/index.js'; import { DbSchema } from '../../client/model/schema.js'; type SubscriptionId = string; type RequestId = string; type SubscriptionDataInternal = { subscriptionId: SubscriptionId; lsn: SatSubsDataBegin['lsn']; transaction: SatTransOp[]; shapeReqToUuid: Record; }; export declare class SubscriptionsDataCache extends EventEmitter { private decoder; requestedSubscriptions: Record>; remainingShapes: Set; currentShapeRequestId?: RequestId; inDelivery?: SubscriptionDataInternal; dbDescription: DbSchema; constructor(dbDescription: DbSchema, decoder: TypeDecoder); isDelivering(): boolean; subscriptionRequest(subsRequest: SatSubsReq): void; subscriptionResponse({ subscriptionId }: SatSubsResp): void; subscriptionDataBegin({ subscriptionId, lsn }: SatSubsDataBegin): void; subscriptionDataEnd(relations: Map): SubscriptionDataInternal; shapeDataBegin(shape: SatShapeDataBegin): void; shapeDataEnd(): void; transaction(ops: SatTransOp[]): void; internalError(code: SatelliteErrorCode, msg: string, subId?: SubscriptionId | undefined): never; subscriptionError(subId: SubscriptionId): void; subscriptionDataError(subId: SubscriptionId, msg: SatSubsDataError): never; reset(subscriptionId?: string): void; private processShapeDataOperations; } export {};