import { SqsSubscriber } from '../../infra/sqs/SqsSubscriber';
import { IntegrationEventBus } from './IntegrationEventBus';
import { SubscriberOptions } from './SubscriberOptions';
export declare class IntegrationEventSubscriber {
    private readonly sqsSubscriber;
    private readonly integrationEventBus;
    private initialized;
    private middlewares;
    constructor(sqsSubscriber: SqsSubscriber, integrationEventBus: IntegrationEventBus);
    use(func: (snsMessage: any, next: Function) => void): void;
    init(subscriberOptions: SubscriberOptions, onHandleError?: (error: Error) => void): void;
    run(): Promise<void>;
    private setMetadata;
    stop(): Promise<void>;
    readonly isRunning: boolean;
    private dispatch;
}
