import { Model } from '@5minds/processcube_engine_sdk';
import { EventMiddlewareHandler, FlowNodeInstanceDatabaseAdapter } from '../../../Tools/index';
import { MessageEventService } from '../../MessageEventService';
import { ProcessInstance } from '../../ProcessInstance';
import { FlowNodeHandlerFactory } from '../FlowNodeHandlerFactory';
import { EndEventHandler } from './EndEventHandler';
export declare class EndMessageEventHandler extends EndEventHandler {
    private messageAndSignalService;
    constructor(eventMiddlewareHandler: EventMiddlewareHandler, flowNodeHandlerFactory: FlowNodeHandlerFactory, flowNodeInstanceDatabaseAdapter: FlowNodeInstanceDatabaseAdapter, endEventModel: Model.Events.MessageEndEvent, processInstance: ProcessInstance, messageAndSignalService: MessageEventService);
    protected get messageEndEvent(): Model.Events.MessageEndEvent;
    protected persistOnExit(): Promise<void>;
    protected startExecution(): Promise<Array<Model.Base.FlowNode>>;
    protected executeHandler(): Promise<Array<Model.Base.FlowNode>>;
    private getFinalTokenPayload;
    private evaluateCustomCorrelationId;
    private sendMessage;
}
