import { IntegrationSettingsService } from './integration-settings.service';
import { OutboxNotifier } from './outbox.notifier';
import { OutboxProcessor } from './outbox.processor';
/**
 * Hybrid polling coordinator
 * Manages the adaptive polling strategy: immediate reactions + periodic checks
 * Uses in-memory notifications for immediate wakeup + configurable polling intervals
 */
export declare class OutboxPollingCoordinator {
    private readonly processor;
    private readonly notifier;
    private readonly integrationSettingsService;
    private readonly logger;
    private processingLoopRunning;
    private processingLoopPromise;
    private immediateWakeupTriggered;
    private shouldStopLoop;
    constructor(processor: OutboxProcessor, notifier: OutboxNotifier, integrationSettingsService: IntegrationSettingsService);
    /**
     * Start the hybrid processing loop
     * Reacts to notifications immediately, polls periodically
     */
    startProcessingLoop(): Promise<void>;
    /**
     * Stop the processing loop gracefully
     */
    stopProcessingLoop(): Promise<void>;
    /**
     * Trigger immediate processing from notifier
     */
    triggerImmediateProcessing(): void;
    /**
     * Check if loop is currently running
     */
    isRunning(): boolean;
    /**
     * Main processing loop - runs continuously
     */
    private runProcessingLoop;
    /**
     * Utility: delay with cancellation support
     */
    private delay;
}
//# sourceMappingURL=outbox-polling.coordinator.d.ts.map