import React from 'react';
import type { Application } from '../../../application/application.model';
import type { IExecution, IExecutionStageSummary } from '../../../domain';
import './executionMarker.less';
export interface IExecutionMarkerProps {
    active?: boolean;
    application: Application;
    execution: IExecution;
    onClick: (stageIndex: number) => void;
    previousStageActive?: boolean;
    stage: IExecutionStageSummary;
    width: string;
}
export interface IExecutionMarkerState {
    duration: string;
    hydrated: boolean;
    showingExecutionMarkerInformationModal: boolean;
}
export declare class ExecutionMarker extends React.Component<IExecutionMarkerProps, IExecutionMarkerState> {
    private runningTime;
    constructor(props: IExecutionMarkerProps);
    componentDidMount(): void;
    componentWillReceiveProps(nextProps: IExecutionMarkerProps): void;
    componentWillUnmount(): void;
    private handleStageClick;
    private handleStageInformationClick;
    private showExecutionMarkerInformationModal;
    private hideExecutionMarkerInformationModal;
    private stageStatus;
    render(): JSX.Element;
}
