import { FlowNodeInstance, Model } from '@5minds/processcube_engine_sdk';
import { EventMiddlewareHandler, FlowNodeInstanceDatabaseAdapter } from '../../../Tools/index';
import { ProcessInstance } from '../../ProcessInstance';
import { FlowNodeHandlerFactory } from '../FlowNodeHandlerFactory';
import { GatewayHandler } from './GatewayHandler';
export declare class ExclusiveGatewayHandler extends GatewayHandler<Model.Gateways.ExclusiveGateway> {
    constructor(eventMiddlewareHandler: EventMiddlewareHandler, flowNodeHandlerFactory: FlowNodeHandlerFactory, flowNodeInstanceDatabaseAdapter: FlowNodeInstanceDatabaseAdapter, exclusiveGatewayModel: Model.Gateways.ExclusiveGateway, processInstance: ProcessInstance);
    private get exclusiveGateway();
    protected startExecution(): Promise<Array<Model.Base.FlowNode>>;
    protected resumeAfterExit(processFlowNodeInstances?: Array<FlowNodeInstance>): Promise<Array<Model.Base.FlowNode>>;
    protected executeHandler(): Promise<Array<Model.Base.FlowNode>>;
    private determineNextFlowNode;
    private getSequenceFlowsWithMatchingConditions;
}
