import type { SentryEvent } from '../types'; import { EventBus } from './EventBus'; export declare class EventQueue { private queue; private maxSize; private flushInterval; private timer; private eventBus; private flushCallback; private syncFlushCallback; private lastFlushTime; private isFlushing; private onVisibilityChange?; private onBeforeUnload?; private onPagehide?; private dedupeMap; private pendingCounts; private errorRateWindow; private paused; private pauseTimer; constructor(maxSize: number, flushInterval: number, eventBus: EventBus, flushCallback: (events: SentryEvent[]) => Promise, syncFlushCallback: (events: SentryEvent[]) => void); start(): void; private startTimer; private setupVisibilityListener; private checkInfiniteLoop; enqueue(event: SentryEvent): void; private cleanupExpiredDedupeEntries; private buildCountEvents; private getDedupeKey; flush(): Promise; flushSync(): void; size(): number; destroy(): void; }