/// <reference types="react" />
import { BaseFlowStep } from "../Steps/BaseFlowStep";
import { IFlowStepSequence } from "./IFlowStepSequence";
import { XFlowConfiguration } from "./XFlowConfiguration";
import { FlowStepOutputInstructions } from "./FlowStepOutputInstructions";
import { SequenceEndStep } from "../Steps/General/SequenceEndStep";
import { HTMLShapeGeometry } from "../../CommonUI/HTMLUtilities";
import { IColorElem } from "../../CommonUI/BuildUI/ColorPicker";
export declare enum FlowStepSequenceStrategy {
    ENDFLOW = "endflow",
    ENDFLOWINERROR = "endflowinerror",
    LINK = "link"
}
export declare class FlowStepSequence implements IFlowStepSequence, IColorElem {
    readonly sequenceType = "standard";
    flow?: XFlowConfiguration;
    _id: string;
    name?: string;
    private _x;
    private _y;
    private _desiredY;
    private _desiredX;
    private _height;
    private _stackColor;
    private _canDelete;
    private _isCollapsed;
    private _canCopy;
    private _steps;
    private _hiddenStep;
    private _strategy;
    errorMessage: string;
    linkToSequence?: string;
    constructor(color?: string);
    getElementId(): string;
    get geometry(): HTMLShapeGeometry | undefined;
    get designerGeometry(): HTMLShapeGeometry | undefined;
    get x(): number;
    set x(value: number);
    get y(): number;
    set y(value: number);
    get desiredY(): number;
    set desiredY(value: number);
    get desiredX(): number;
    set desiredX(value: number);
    get width(): number;
    get height(): number;
    set height(value: number);
    set strategy(value: FlowStepSequenceStrategy);
    get strategy(): FlowStepSequenceStrategy;
    reset(): void;
    get steps(): readonly BaseFlowStep[];
    get instructions(): readonly FlowStepOutputInstructions[];
    get canDelete(): boolean;
    set canDelete(d: boolean);
    get canCopy(): boolean;
    set canCopy(c: boolean);
    get isCollapsed(): boolean;
    set isCollapsed(collapsed: boolean);
    get color(): string;
    set color(color: string);
    removeStep(step: BaseFlowStep): void;
    find(stepId: string): BaseFlowStep | null;
    get hiddenStep(): SequenceEndStep;
    addStep(step: BaseFlowStep, index?: number): void;
    moveStep(step: BaseFlowStep, index: number): void;
    toggleShowDescriptionForSteps(show: boolean): void;
    renderEditUI(): JSX.Element | null;
    get isError(): boolean;
    get isEnd(): boolean;
    get isPrimary(): boolean;
    get isNormal(): boolean;
    get isDragOver(): boolean;
    get editContext(): import("../FlowEditContext").FlowEditContext | undefined;
    get isOneStep(): boolean;
}
