/// <reference types="react" />
import { BaseFlowStep } from "../../Steps/BaseFlowStep";
import { FlowStepOutputInstructions } from "../../Structure/FlowStepOutputInstructions";
import { FlowStepSequence, FlowStepSequenceStrategy } from "../../Structure/FlowStepSequence";
import { BaseDisplayBehavior } from "./BaseDisplayBehavior";
import { FlowEditContext } from "../../FlowEditContext";
import { FlowConnection } from "../XFlowConfiguration";
import { ILine } from "./IFlowDisplayBehavior";
import { IFlowElement } from "../IFlowElement";
export declare class DiagramDisplayBehavior extends BaseDisplayBehavior {
    readonly sequenceOuterPadding: string;
    readonly candidateWidth: number;
    readonly candidateHeight: number;
    readonly candidatePadding: string;
    readonly candidateFontSize: number;
    isCollapsed(sequence: FlowStepSequence): boolean;
    setIsCollapsed(sequence: FlowStepSequence, isCollapsed: boolean): void;
    clearSelection(): void;
    onSetSelection(sequence: FlowStepSequence): void;
    renderSequenceActions(sequence: FlowStepSequence): JSX.Element | null;
    renderStepStrategy(): JSX.Element;
    renderSequenceTitle(sequence: FlowStepSequence): JSX.Element;
    onSelectStepStrategyConnect(element: HTMLElement, step: BaseFlowStep): void;
    addStepToSequence(sequence: FlowStepSequence, step: BaseFlowStep, index?: number): void;
    moveStepToSequence(step: BaseFlowStep, fromSeq: FlowStepSequence, toSeq: FlowStepSequence, index?: number): void;
    getLine(value: FlowConnection): ILine;
    renderSequenceContent(sequence: FlowStepSequence): JSX.Element;
    renderSequenceStrategy(sequence: FlowStepSequence): JSX.Element | null;
    readonly collapsedWidth: number;
    readonly collapsedHeight: number;
    readonly errorCollapsedWidth: number;
    readonly sequenceWidth: number;
    readonly emptyTextFontSize: number;
    getSequenceMainSize(sequence: FlowStepSequence): {
        width: number;
        height: number | undefined;
    };
    readonly defaultStackCollapsedBorderColor: string;
    getSequenceBorderColor(sequence: FlowStepSequence): string;
    getSequenceStepsForPaths(sequence: FlowStepSequence): readonly BaseFlowStep[];
    getPathsForStep(step: BaseFlowStep): FlowStepOutputInstructions[];
    getSequenceInstructions(sequence: FlowStepSequence): readonly FlowStepOutputInstructions[];
    getInitialSequenceStrategy(): FlowStepSequenceStrategy;
    readonly sequenceCandidateShift: number;
    setCandidateDesiredPositionForSequenceStrategy(inst: FlowStepOutputInstructions): void | null;
    setCandidateDesiredPositionForSeqeuence(sequence: FlowStepSequence): void;
    isShowStepConnection(step: BaseFlowStep): boolean;
    isEnabledPlaceholderWhileDrop(sequence: FlowStepSequence): boolean;
    renderExtraContents(editContext: FlowEditContext): JSX.Element | null;
    renderEditUI(elem: IFlowElement | undefined | null): JSX.Element | null;
}
