import { Context, ContextFactory } from "./context"; import { OperationsPriorityQueue } from "../lib/priorityQueue"; import { EmitterImpl } from "./emitter"; import { Plugin } from "./plugins/plugin"; import { Browser } from "./browser"; import { SentryWrapper } from "../lib/sentry"; export interface EventQueue { deliver(ctx: Context): Promise; } export declare class EventQueueImpl extends EmitterImpl implements EventQueue { private pQueue; private readonly plugins; private flushing; private readonly browser; private readonly contextFactory; private readonly sentry; constructor(plugins: Plugin[], pQueue: OperationsPriorityQueue, browser: Browser, sentry: SentryWrapper, contextFactory?: ContextFactory); private push; deliver(ctx: Context): Promise; private subscribeToDelivery; private flush; private attempt; private runPlugin; private handleFlushError; }