import { ProvideCalculatorEventArgs as ProvideCalculatorEventArgs_internal } from "./ProvideCalculatorEventArgs";
/**
 * Event arguments for the ProvideCalculator event.
*/
export class IgrProvideCalculatorEventArgs {
    createImplementation() {
        return new ProvideCalculatorEventArgs_internal();
    }
    /**
     * @hidden
     */
    get i() {
        return this._implementation;
    }
    onImplementationCreated() {
    }
    constructor() {
        this._implementation = this.createImplementation();
        this._implementation.externalObject = this;
        this.onImplementationCreated();
        if (this._initializeAdapters) {
            this._initializeAdapters();
        }
    }
    _provideImplementation(i) {
        this._implementation = i;
        this._implementation.externalObject = this;
        this.onImplementationCreated();
        if (this._initializeAdapters) {
            this._initializeAdapters();
        }
    }
    /**
     * Gets or sets the summary calculator to use for this summary.
    */
    get calculator() {
        return this.i.a;
    }
    set calculator(v) {
        this.i.a = v;
    }
}
