import React from "react";
import { IFlowElement } from "../Structure/IFlowElement";
import { IFlowStep } from "../Structure/IFlowStep";
import { FlowStepOutputInstructions } from "../Structure/FlowStepOutputInstructions";
import { FlowStepSequence } from "../Structure/FlowStepSequence";
import { MultiExecutableOutputDefinition } from "../../Common/Execution/MultiExecutable";
export declare const BasicStep: import("styled-components").StyledComponent<"div", any, {}, never>;
export declare abstract class BaseFlowStep extends React.Component implements IFlowElement, IFlowStep {
    _id: string;
    name?: string;
    description: string;
    sequence?: FlowStepSequence;
    isShowDescription: boolean;
    private _nonDefaultOutputInstructions;
    constructor();
    stepUpdate(): void;
    designerUpdate(): void;
    remove(): void;
    getOutcomeInstructions(): FlowStepOutputInstructions[];
    getAlternateOutcomeInstructions(): FlowStepOutputInstructions[];
    render(): JSX.Element;
    renderActionUI: () => JSX.Element;
    findOutputInstruction(name: string): FlowStepOutputInstructions;
    isCurrentOutcome(name: string): boolean;
    abstract renderEditUI(): JSX.Element | null;
    paths: string[];
    getOutcomes(): MultiExecutableOutputDefinition[];
    addNewPath(): void;
    get icon(): JSX.Element;
    get type(): any;
}
