"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var json_1 = require("./json"); var JsonableValue = (function () { function JsonableValue(value) { this.value = value; } Object.defineProperty(JsonableValue.prototype, "value", { get: function () { return this._value; }, set: function (value) { this._value = value; this._serialized = json_1.stringify(value); }, enumerable: true, configurable: true }); Object.defineProperty(JsonableValue.prototype, "serialized", { get: function () { return this._serialized; }, enumerable: true, configurable: true }); JsonableValue.prototype.valueOf = function () { return this._value; }; JsonableValue.prototype.toString = function () { return this._serialized; }; return JsonableValue; }()); exports.JsonableValue = JsonableValue;