/*
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 { Base, INotifyPropertyChanged_$type, PropertyChangedEventArgs, markType } from "igniteui-react-core/ES2015/type";
/**
 * @hidden
 */
export class TimeAxisBreak extends Base {
    constructor() {
        super(...arguments);
        this.b = new Date();
        this.a = new Date();
        this.h = (0);
        this.propertyChanged = null;
    }
    get d() {
        return this.b;
    }
    set d(a) {
        let b = this.d;
        if (+a != +b) {
            this.b = a;
            this.j("Start", b, this.d);
        }
    }
    get c() {
        return this.a;
    }
    set c(a) {
        let b = this.c;
        if (+a != +b) {
            this.a = a;
            this.j("End", b, this.c);
        }
    }
    get i() {
        return this.h;
    }
    set i(a) {
        let b = this.i;
        if (a != b) {
            this.h = a;
            this.j("Interval", b, this.i);
        }
    }
    j(a, b, c) {
        this.k(a, b, c);
        if (this.propertyChanged != null) {
            this.propertyChanged(this, new PropertyChangedEventArgs(a));
        }
    }
    k(a, b, c) {
    }
}
TimeAxisBreak.$t = markType(TimeAxisBreak, 'TimeAxisBreak', Base.$, [INotifyPropertyChanged_$type]);
