import { DynamoDBStreamEvent, EventBridgeEvent, S3Event, SNSEvent, SQSEvent } from 'aws-lambda';
import { IEvent, IEventFactory, StepFunctionsEvent } from '../interfaces';
import { EventBus } from './event-bus';
declare const EVENT_FACTORY: unique symbol;
export declare class EventService {
    private readonly eventBus;
    private readonly logger;
    private [EVENT_FACTORY];
    constructor(eventBus: EventBus);
    get eventFactory(): IEventFactory;
    set eventFactory(ef: IEventFactory);
    setDefaultEventFactory(): void;
    handleSnsEvent(raw: SNSEvent): Promise<any[][]>;
    handleSqsEvent(raw: SQSEvent): Promise<any[][]>;
    handleDynamoDBEvent(raw: DynamoDBStreamEvent): Promise<any[][]>;
    handleEventBridgeEvent(raw: EventBridgeEvent<any, any>): Promise<any[][]>;
    handleStepFunctionsEvent(raw: StepFunctionsEvent<any>): Promise<any[][]>;
    handleS3Event(raw: S3Event): Promise<any[][]>;
    protected execute(events: IEvent[]): Promise<any[][]>;
}
export {};
