/*
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 { DependencyObject } from "igniteui-angular-core";
import { INotifyPropertyChanged_$type, PropertyChangedEventArgs, delegateCombine, fromEnum, markType, markDep } from "igniteui-angular-core";
import { List$1 } from "igniteui-angular-core";
import { Series } from "./Series";
import { DependencyProperty } from "igniteui-angular-core";
import { PropertyUpdatedEventArgs } from "igniteui-angular-core";
import { PropertyMetadata } from "igniteui-angular-core";
/**
 * @hidden
 */
export class SizeScale extends DependencyObject {
    constructor() {
        super();
        this.l = null;
        this.propertyChanged = null;
        this.propertyUpdated = null;
        this.l = new List$1(Series.$, 0);
        this.propertyUpdated = delegateCombine(this.propertyUpdated, (a, b) => this.t(a, b.propertyName, b.oldValue, b.newValue));
    }
    u(a, b, c) {
        if (this.propertyChanged != null) {
            this.propertyChanged(this, new PropertyChangedEventArgs(a));
        }
        if (this.propertyUpdated != null) {
            this.propertyUpdated(this, new PropertyUpdatedEventArgs(a, b, c));
        }
    }
    t(a, b, c, d) {
        for (let e of fromEnum(this.l)) {
            e.jd(false);
            if (e.bs != null) {
                e.ik();
                e.ij();
            }
        }
    }
}
SizeScale.$t = markType(SizeScale, 'SizeScale', DependencyObject.$, [INotifyPropertyChanged_$type]);
SizeScale.$$p = markDep(DependencyProperty, PropertyMetadata, SizeScale, 'u', ['IsLogarithmic', [0, false], 'LogarithmBase', [1, 10], 'MaximumValue', [1, NaN], 'MinimumValue', [1, NaN]]);
//# sourceMappingURL=SizeScale.js.map