function RowState() {
		let oContext = null;
		let sType = RowType.Standard;
		let bContentHidden = false;
		let sTitle = "";
		let bExpanded = false;
		let bExpandable = false;
		let iLevel = 0;

		Object.defineProperties(this, {
			/** @type sap.ui.model.Context */
			context: {
				get: function() { return oContext; },
				set: function(_oContext) {
					oContext = _oContext || null;
				}
			},
			/** @type {Readonly<{GroupHeader: string, Summary: string, Standard: string}>} */
			Type: {
				get: function() { return RowType; }
			},
			/** @type string */
			type: {
				get: function() { return sType; },
				set: function(_sType) {
					if (!(_sType in RowType)) {
						throw Error("Is not a valid type for sap.ui.table.Row: " + _sType);
					}
					sType = _sType;
				}
			},
			/** @type boolean */
			empty: {
				get: function() { return this.context == null; }
			},
			/** @type boolean */
			contentHidden: {
				get: function() { return this.empty ? true : bContentHidden; },
				set: function(_bContentHidden) {
					bContentHidden = _bContentHidden === true;
				}
			},
			/** @type string */
			title: {
				get: function() { return this.empty ? "" : sTitle; },
				set: function(_sTitle) {
					sTitle = (typeof _sTitle === "string" ? _sTitle : "");
				}
			},
			/** @type boolean */
			expandable: {
				get: function() { return this.empty ? false : bExpandable; },
				set: function(_bExpandable) {
					bExpandable = _bExpandable === true;
				}
			},
			/** @type boolean */
			expanded: {
				get: function() { return this.expandable ? bExpanded : false; },
				set: function(_bExpanded) {
					bExpanded = _bExpanded === true;
				}
			},
			/** @type number */
			level: {
				get: function() { return this.empty ? 0 : iLevel; },
				set: function(_iLevel) {
					iLevel = (typeof _iLevel === "number" ? Math.max(1, _iLevel || 1) : 1);
				}
			},
			/** @type Function */
			reset: {
				value: function() {
					oContext = null;
					sType = RowType.Standard;
					bContentHidden = false;
					sTitle = "";
					bExpandable = false;
					bExpanded = false;
					iLevel = 1;
				}
			}
		});
	}
Constructor for an object that contains status information for a row.

@constructor
@alias sap.ui.table.Row.State
@private