import { IgrSeries } from "./igr-series";
/**
 * Represents event arguments for chart's SeriesAdded and SeriesRemoved events
*/
export class IgrChartSeriesEventArgs {
    /**
     * @hidden
     */
    get i() {
        return this._implementation;
    }
    onImplementationCreated() {
    }
    constructor() {
        this.mounted = false;
    }
    _provideImplementation(i) {
        this._implementation = i;
        this._implementation.externalObject = this;
        this.onImplementationCreated();
        if (this._initializeAdapters) {
            this._initializeAdapters();
        }
    }
    /**
     * Gets the series.
    */
    get series() {
        const r = this.i.series;
        if (r == null) {
            return null;
        }
        if (!r.externalObject) {
            let e = IgrSeries._createFromInternal(r);
            if (e) {
                e._implementation = r;
            }
            r.externalObject = e;
        }
        return r.externalObject;
    }
    set series(v) {
        v == null ? this.i.series = null : this.i.series = v.i;
    }
}
