import { AsyncEventEmitter, type EventListener } from '@prismamedia/async-event-emitter'; import * as core from '@prismamedia/graphql-platform'; import type { MariaDBBroker, MariaDBBrokerMutation, MariaDBBrokerSubscriptionsStateTable } from '../broker.js'; import { MariaDBSubscriptionDiagnosis } from './subscription/diagnosis.js'; export * from './subscription/diagnosis.js'; export * from './subscription/error.js'; export type MariaDBSubscriptionEvents = { assignments: ReadonlyArray; processing: MariaDBBrokerMutation; processed: MariaDBBrokerMutation; idle: undefined; }; export declare class MariaDBSubscription extends AsyncEventEmitter implements core.NodeChangeSubscriptionInterface { #private; readonly broker: MariaDBBroker; readonly subscription: core.ChangesSubscriptionStream; /** * The last mutation's id that has been visited by this subscription. */ lastVisitedMutationId?: bigint; readonly stateTable?: MariaDBBrokerSubscriptionsStateTable; constructor(broker: MariaDBBroker, subscription: core.ChangesSubscriptionStream); [Symbol.asyncDispose](): Promise; assign(): Promise; [Symbol.asyncIterator](): AsyncIterator; onIdle(listener: EventListener): void; waitForIdle(): Promise; diagnose(): Promise; } //# sourceMappingURL=subscription.d.ts.map