/*
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 { FilterExpressionDescription } from "./FilterExpressionDescription";
import { markType } from "./type";
/**
 * @hidden
 */
export let FunctionFilterExpressionDescription = /*@__PURE__*/ (() => {
    class FunctionFilterExpressionDescription extends FilterExpressionDescription {
        constructor() {
            super();
            this.m = null;
            this.i = null;
        }
        get_type() {
            return "FunctionFilterExpression";
        }
        get functionType() {
            return this.m;
        }
        set functionType(a) {
            this.m = a;
            this.e("FunctionType");
        }
        get functionArguments() {
            return this.i;
        }
        set functionArguments(a) {
            this.i = a;
            this.e("FunctionArguments");
        }
    }
    FunctionFilterExpressionDescription.$t = markType(FunctionFilterExpressionDescription, 'FunctionFilterExpressionDescription', FilterExpressionDescription.$);
    FunctionFilterExpressionDescription.__marshalByValue1 = true;
    FunctionFilterExpressionDescription.__marshalByValueAlias1 = "FunctionFilterExpression";
    return FunctionFilterExpressionDescription;
})();
