import { RawDraftContentState, RawDraftEntity } from "draft-js";
import { IDataDefinition } from "../../Common/Data/Definitions/IDataDefinition";
import { XExecutionData } from "../../Common/Data/ExecutionData/XExecutionData";
import { RuleExecutable } from "../../Common/Execution/RuleExecutable";
import { IConfigStorage } from "../../Common/IConfigStorage";
import { ITestingContext } from "../../Common/Testing/ITestingContext";
import { XTextMergeEditContext } from "./XTextMergeEditContext";
import { IDesignValidationProvider, ValidationIssue } from "../../Common/IDesignValidationProvider";
import { XTextMergeExportType } from "./TextMergeExportType";
export declare class XTextMergeDefinition extends RuleExecutable implements IConfigStorage, IDesignValidationProvider {
    editContext?: XTextMergeEditContext;
    _id: string;
    private _value;
    private _styleMap;
    constructor();
    get styleMap(): {
        [key: string]: object;
    };
    setValue(value: RawDraftContentState | string): void;
    set value(value: RawDraftContentState);
    get value(): RawDraftContentState;
    get executionResult(): IDataDefinition | (() => IDataDefinition);
    set executionResult(value: IDataDefinition | (() => IDataDefinition));
    private _outputType;
    set outputType(type: XTextMergeExportType);
    get outputType(): XTextMergeExportType;
    isValidField: (field: string) => boolean;
    run(data: XExecutionData, testContext?: ITestingContext): any;
    getEntityType(nodeName: string, element: HTMLElement): RawDraftEntity<{
        [key: string]: any;
    }> | undefined;
    getStorageData(): object;
    setStorageData(data: object): void;
    getDesignValidationIssues(): ValidationIssue[];
}
