/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE  AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE:  you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import * as tslib_1 from "tslib";
import { Base, typeCast, markType } from "igniteui-webcomponents-core";
import { TextCellModel } from "./TextCellModel";
import { CanvasTextCell } from "./CanvasTextCell";
import { CanvasTextCellPresenter } from "./CanvasTextCellPresenter";
import { NumericCellModel } from "./NumericCellModel";
import { CanvasNumericCell } from "./CanvasNumericCell";
import { CanvasNumericCellPresenter } from "./CanvasNumericCellPresenter";
import { DateTimeCellModel } from "./DateTimeCellModel";
import { CanvasDateTimeCell } from "./CanvasDateTimeCell";
import { CanvasDateTimeCellPresenter } from "./CanvasDateTimeCellPresenter";
import { TextHeaderCellModel } from "./TextHeaderCellModel";
import { CanvasTextHeaderCell } from "./CanvasTextHeaderCell";
import { CanvasTextHeaderCellPresenter } from "./CanvasTextHeaderCellPresenter";
import { RowSeparatorModel } from "./RowSeparatorModel";
import { CanvasRowSeparatorCell } from "./CanvasRowSeparatorCell";
import { CanvasRowSeparatorCellPresenter } from "./CanvasRowSeparatorCellPresenter";
import { ImageCellModel } from "./ImageCellModel";
import { CanvasImageCell } from "./CanvasImageCell";
import { CanvasImageCellPresenter } from "./CanvasImageCellPresenter";
import { TemplateCellModel } from "./TemplateCellModel";
import { CanvasTemplateCell } from "./CanvasTemplateCell";
import { CanvasTemplateCellPresenter } from "./CanvasTemplateCellPresenter";
import { TemplateHeaderCellModel } from "./TemplateHeaderCellModel";
import { CanvasTemplateHeaderCell } from "./CanvasTemplateHeaderCell";
import { CanvasTemplateHeaderCellPresenter } from "./CanvasTemplateHeaderCellPresenter";
import { SectionHeaderCellModel } from "./SectionHeaderCellModel";
import { CanvasSectionHeaderCell } from "./CanvasSectionHeaderCell";
import { CanvasSectionHeaderCellPresenter } from "./CanvasSectionHeaderCellPresenter";
import { VerticalSeparatorCellModel } from "./VerticalSeparatorCellModel";
import { CanvasVerticalSeparatorCell } from "./CanvasVerticalSeparatorCell";
import { CanvasVerticalSeparatorCellPresenter } from "./CanvasVerticalSeparatorCellPresenter";
import { SummaryCellModel } from "./SummaryCellModel";
import { CanvasSummaryCell } from "./CanvasSummaryCell";
import { CanvasSummaryCellPresenter } from "./CanvasSummaryCellPresenter";
import { EditorCellModel } from "./EditorCellModel";
import { EditorCell } from "./EditorCell";
import { EditorCellPresenter } from "./EditorCellPresenter";
import { EditorRowCellModel } from "./EditorRowCellModel";
import { EditorRowCell } from "./EditorRowCell";
import { EditorRowCellPresenter } from "./EditorRowCellPresenter";
import { TextCell } from "./TextCell";
import { TextCellPresenter } from "./TextCellPresenter";
import { NumericCell } from "./NumericCell";
import { NumericCellPresenter } from "./NumericCellPresenter";
import { DateTimeCell } from "./DateTimeCell";
import { DateTimeCellPresenter } from "./DateTimeCellPresenter";
import { TextHeaderCell } from "./TextHeaderCell";
import { TextHeaderCellPresenter } from "./TextHeaderCellPresenter";
import { RowSeparatorCell } from "./RowSeparatorCell";
import { RowSeparatorCellPresenter } from "./RowSeparatorCellPresenter";
import { ImageCell } from "./ImageCell";
import { ImageCellPresenter } from "./ImageCellPresenter";
import { TemplateCell } from "./TemplateCell";
import { TemplateCellPresenter } from "./TemplateCellPresenter";
import { TemplateHeaderCell } from "./TemplateHeaderCell";
import { TemplateHeaderCellPresenter } from "./TemplateHeaderCellPresenter";
import { SectionHeaderCell } from "./SectionHeaderCell";
import { SectionHeaderCellPresenter } from "./SectionHeaderCellPresenter";
import { VerticalSeparatorCell } from "./VerticalSeparatorCell";
import { VerticalSeparatorCellPresenter } from "./VerticalSeparatorCellPresenter";
import { SummaryCell } from "./SummaryCell";
import { SummaryCellPresenter } from "./SummaryCellPresenter";
/**
 * @hidden
 */
var DataGridPresenterManager = /** @class */ /*@__PURE__*/ (function (_super) {
    tslib_1.__extends(DataGridPresenterManager, _super);
    function DataGridPresenterManager(a, b) {
        var _this = _super.call(this) || this;
        _this.a = null;
        _this.c = false;
        _this.a = a;
        _this.c = b;
        return _this;
    }
    DataGridPresenterManager.prototype.b = function (a, b) {
        if (b.r != null) {
            return b.r;
        }
        if (this.c) {
            if (typeCast(TextCellModel.$, b) !== null) {
                b.r = new CanvasTextCellPresenter(new CanvasTextCell(a));
            }
            if (typeCast(NumericCellModel.$, b) !== null) {
                b.r = new CanvasNumericCellPresenter(new CanvasNumericCell(a));
            }
            if (typeCast(DateTimeCellModel.$, b) !== null) {
                b.r = new CanvasDateTimeCellPresenter(new CanvasDateTimeCell(a));
            }
            if (typeCast(TextHeaderCellModel.$, b) !== null) {
                b.r = new CanvasTextHeaderCellPresenter(new CanvasTextHeaderCell(a));
            }
            if (typeCast(RowSeparatorModel.$, b) !== null) {
                b.r = new CanvasRowSeparatorCellPresenter(new CanvasRowSeparatorCell(a));
            }
            if (typeCast(ImageCellModel.$, b) !== null) {
                b.r = new CanvasImageCellPresenter(new CanvasImageCell(a));
            }
            if (typeCast(TemplateCellModel.$, b) !== null) {
                b.r = new CanvasTemplateCellPresenter(new CanvasTemplateCell(a), this.a);
            }
            if (typeCast(TemplateHeaderCellModel.$, b) !== null) {
                b.r = new CanvasTemplateHeaderCellPresenter(new CanvasTemplateHeaderCell(a), this.a);
            }
            if (typeCast(SectionHeaderCellModel.$, b) !== null) {
                b.r = new CanvasSectionHeaderCellPresenter(new CanvasSectionHeaderCell(a));
            }
            if (typeCast(VerticalSeparatorCellModel.$, b) !== null) {
                b.r = new CanvasVerticalSeparatorCellPresenter(new CanvasVerticalSeparatorCell(a));
            }
            if (typeCast(SummaryCellModel.$, b) !== null) {
                b.r = new CanvasSummaryCellPresenter(new CanvasSummaryCell(a));
            }
            if (typeCast(EditorCellModel.$, b) !== null) {
                b.r = new EditorCellPresenter(new EditorCell(a));
            }
            if (typeCast(EditorRowCellModel.$, b) !== null) {
                b.r = new EditorRowCellPresenter(new EditorRowCell(a));
            }
        }
        else {
            if (typeCast(TextCellModel.$, b) !== null) {
                b.r = new TextCellPresenter(new TextCell(a));
            }
            if (typeCast(NumericCellModel.$, b) !== null) {
                b.r = new NumericCellPresenter(new NumericCell(a));
            }
            if (typeCast(DateTimeCellModel.$, b) !== null) {
                b.r = new DateTimeCellPresenter(new DateTimeCell(a));
            }
            if (typeCast(TextHeaderCellModel.$, b) !== null) {
                b.r = new TextHeaderCellPresenter(new TextHeaderCell(a));
            }
            if (typeCast(RowSeparatorModel.$, b) !== null) {
                b.r = new RowSeparatorCellPresenter(new RowSeparatorCell(a));
            }
            if (typeCast(ImageCellModel.$, b) !== null) {
                b.r = new ImageCellPresenter(new ImageCell(a));
            }
            if (typeCast(TemplateCellModel.$, b) !== null) {
                b.r = new TemplateCellPresenter(new TemplateCell(a), this.a);
            }
            if (typeCast(TemplateHeaderCellModel.$, b) !== null) {
                b.r = new TemplateHeaderCellPresenter(new TemplateHeaderCell(a), this.a);
            }
            if (typeCast(SectionHeaderCellModel.$, b) !== null) {
                b.r = new SectionHeaderCellPresenter(new SectionHeaderCell(a));
            }
            if (typeCast(VerticalSeparatorCellModel.$, b) !== null) {
                b.r = new VerticalSeparatorCellPresenter(new VerticalSeparatorCell(a));
            }
            if (typeCast(SummaryCellModel.$, b) !== null) {
                b.r = new SummaryCellPresenter(new SummaryCell(a));
            }
            if (typeCast(EditorCellModel.$, b) !== null) {
                b.r = new EditorCellPresenter(new EditorCell(a));
            }
            if (typeCast(EditorRowCellModel.$, b) !== null) {
                b.r = new EditorRowCellPresenter(new EditorRowCell(a));
            }
        }
        return b.r;
    };
    DataGridPresenterManager.$t = markType(DataGridPresenterManager, 'DataGridPresenterManager');
    return DataGridPresenterManager;
}(Base));
export { DataGridPresenterManager };
//# sourceMappingURL=DataGridPresenterManager.js.map
