import type { IChannelWrapper, IHandlerWrapper } from '../../interface';
import { AutoAckEnum, DefaultedRetryOptions, ExchangeOptions } from '../../interface';
import { RetryStrategies } from '../../provider';
import { AbstractHandleWrapperStrategy } from './AbstractHandleWrapperStrategy';
export declare class AutoRetryStrategy extends AbstractHandleWrapperStrategy {
    private readonly retryStrategies;
    private readonly rootRetryOptions;
    protected readonly assertExchangeOptions: ExchangeOptions;
    readonly strategy = AutoAckEnum.AUTO_RETRY;
    constructor(retryStrategies: RetryStrategies, rootRetryOptions: DefaultedRetryOptions, assertExchangeOptions: ExchangeOptions);
    process(handlerWrapper: IHandlerWrapper, channelWrapper: IChannelWrapper): void;
}
