import { BaseError, 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 { EventHandler } from './EventHandler';
export declare class IntermediateMessageThrowEventHandler extends EventHandler<Model.Events.MessageIntermediateThrowEvent> {
    private customCorrelationId;
    private messageEventService;
    constructor(eventMiddlewareHandler: EventMiddlewareHandler, flowNodeHandlerFactory: FlowNodeHandlerFactory, flowNodeInstanceDatabaseAdapter: FlowNodeInstanceDatabaseAdapter, intermediateMessageThrowEventModel: Model.Events.MessageIntermediateThrowEvent, processInstance: ProcessInstance, messageEventService: MessageEventService);
    private get messageThrowEvent();
    protected persistOnExit(): Promise<void>;
    protected persistOnError(error: BaseError): Promise<void>;
    protected persistOnTerminate(): Promise<void>;
    protected startExecution(): Promise<Array<Model.Base.FlowNode>>;
    protected executeHandler(): Promise<Array<Model.Base.FlowNode>>;
    private validateMessage;
    private evaluateCustomCorrelationId;
    private getTokenPayloadFromInputValues;
}
