import { jsx as _jsx } from "react/jsx-runtime";
import { BaseTestResultData } from "../../../Common/Testing/TestResultData";
import { TestResultDataType } from "../../../Common/Testing/TestResultDataType";
import { RuleTableDesigner } from "./Components/RuleTableDesigner";
import { RuleTableEditContext } from "./RuleTableEditContext";
export class RuleTableTestResult extends BaseTestResultData {
    constructor() {
        super(...arguments);
        this.type = TestResultDataType.RULE_TABLE;
    }
    set definition(definition) {
        this._definition = definition;
        if (this._definition) {
            this.editContext = new RuleTableEditContext(this._definition);
        }
    }
    get definition() {
        return this._definition;
    }
    render() {
        return this.definition && this.editContext ? (_jsx(RuleTableDesigner, { ruleDefinition: this.definition, editContext: this.editContext }, void 0)) : undefined;
    }
}
export class RuleTableRowTestResult extends BaseTestResultData {
    constructor() {
        super(...arguments);
        this.type = TestResultDataType.RULE_TABLE_ROW;
    }
}
export class RuleTableCellTestResult extends BaseTestResultData {
    constructor() {
        super(...arguments);
        this.type = TestResultDataType.RULE_TABLE_COLUMN;
    }
}
//# sourceMappingURL=RuleTableTestResult.js.map