import { ensureBool } from "igniteui-webcomponents-core";
/**
 * Event arguments for the
 * userPromptDisplaying event.
*/
var IgcSpreadsheetUserPromptDisplayingEventArgs = /** @class */ /*@__PURE__*/ (function () {
    function IgcSpreadsheetUserPromptDisplayingEventArgs() {
    }
    Object.defineProperty(IgcSpreadsheetUserPromptDisplayingEventArgs.prototype, "i", {
        /**
         * @hidden
         */
        get: function () {
            return this._implementation;
        },
        enumerable: false,
        configurable: true
    });
    IgcSpreadsheetUserPromptDisplayingEventArgs.prototype.onImplementationCreated = function () {
    };
    IgcSpreadsheetUserPromptDisplayingEventArgs.prototype._provideImplementation = function (i) {
        this._implementation = i;
        this._implementation.externalObject = this;
        this.onImplementationCreated();
        if (this._initializeAdapters) {
            this._initializeAdapters();
        }
    };
    Object.defineProperty(IgcSpreadsheetUserPromptDisplayingEventArgs.prototype, "canCancel", {
        /**
         * Returns a boolean indicating if the operation that triggered the prompt can be cancelled.
        */
        get: function () {
            return this.i.canCancel;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgcSpreadsheetUserPromptDisplayingEventArgs.prototype, "cancel", {
        /**
         * Returns or sets a boolean indicating whether the operation that triggered the prompt should be cancelled.
         * This property is only used if the
         * canCancel is true, which indicates that the
         * operation supports being cancelled, and if
         * displayMessage is set to false. Otherwise if the
         * message is shown and the operation may be cancelled then whether the operation is cancelled will be based
         * upon the users response to the prompt.
        */
        get: function () {
            return this.i.cancel;
        },
        set: function (v) {
            this.i.cancel = ensureBool(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgcSpreadsheetUserPromptDisplayingEventArgs.prototype, "caption", {
        /**
         * Returns or sets the caption for the message dialog that will be displayed.
        */
        get: function () {
            return this.i.caption;
        },
        set: function (v) {
            this.i.caption = v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgcSpreadsheetUserPromptDisplayingEventArgs.prototype, "displayMessage", {
        /**
         * Returns or sets a boolean indicating if a message will be displayed to the end user.
        */
        get: function () {
            return this.i.displayMessage;
        },
        set: function (v) {
            this.i.displayMessage = ensureBool(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgcSpreadsheetUserPromptDisplayingEventArgs.prototype, "exception", {
        /**
         * Returns the exception for the error, if there was one.
        */
        get: function () {
            return this.i.exception;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgcSpreadsheetUserPromptDisplayingEventArgs.prototype, "message", {
        /**
         * Returns or sets the message that will be displayed.
        */
        get: function () {
            return this.i.message;
        },
        set: function (v) {
            this.i.message = v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgcSpreadsheetUserPromptDisplayingEventArgs.prototype, "trigger", {
        /**
         * Returns an enumeration indicating the action caused the prompt to be displayed.
        */
        get: function () {
            return this.i.trigger;
        },
        enumerable: false,
        configurable: true
    });
    return IgcSpreadsheetUserPromptDisplayingEventArgs;
}());
export { IgcSpreadsheetUserPromptDisplayingEventArgs };
