export interface SQSProcessingResult {
    handled: boolean;
    success: boolean;
    error?: string;
    duplicated?: boolean;
}
export declare class SQSDispatcher {
    private sqsService;
    private config;
    private prometheus;
    private processSQSEventDataMessage;
    private startedQueues;
    private dispatchesPerMinute;
    private unhlandledDispatchesPerMinute;
    private errorDispatchesPerMinute;
    private duplicatedDispatchesPerMinute;
    private handledDispatchesPerMinute;
    constructor(sqsService: any, config: any, prometheus: any, processSQSEventDataMessage: any);
    reportStatsPerQueue(queueName: string): Promise<void>;
    reportStats(): void;
    resetQueueRateCounters(queueName: string): void;
    startConsumingSQSMessages(processIndex: number, queueName: string): Promise<void>;
    private handleSingleSQSMessage;
}
//# sourceMappingURL=sqs.dispatcher.d.ts.map