import { __decorate, __metadata } from "tslib";
import { LayoutPropertyDescription, LayoutPropertyName, LayoutPropertyType } from '@anglr/dynamic/layout-editor';
import { mapValuesToThis } from '@jscrpt/common';
/**
 * Stack panel model for properties editor
 */
export class StackPanelModel {
    //######################### constructor #########################
    constructor(value) {
        //######################### public properties #########################
        /**
         * @inheritdoc
         */
        this.horizontal = false;
        /**
         * @inheritdoc
         */
        this.wrap = false;
        mapValuesToThis.bind(this)(value);
    }
}
__decorate([
    LayoutPropertyName('Horizontal'),
    LayoutPropertyDescription('Indication whether display stacked elements horizontally'),
    LayoutPropertyType('inputBoolean'),
    __metadata("design:type", Object)
], StackPanelModel.prototype, "horizontal", void 0);
__decorate([
    LayoutPropertyName('Wrap'),
    LayoutPropertyDescription('Indication whether wrap children if there is not enough space'),
    LayoutPropertyType('inputBoolean'),
    __metadata("design:type", Object)
], StackPanelModel.prototype, "wrap", void 0);
/**
 * Stack panel flex extension model for properties editor
 */
export class StackPanelFlexExtensionModel {
    //######################### constructor #########################
    constructor(value) {
        //######################### public properties #########################
        /**
         * @inheritdoc
         */
        this.flex = null;
        mapValuesToThis.bind(this)(value);
    }
}
__decorate([
    LayoutPropertyName('Flex'),
    LayoutPropertyDescription('Definition of flex behavior'),
    LayoutPropertyType('inputString'),
    __metadata("design:type", Object)
], StackPanelFlexExtensionModel.prototype, "flex", void 0);
//# sourceMappingURL=stackPanel.model.js.map