/** @class */ 'use strict'; function Base0() {} Base0.prototype = /** @lends Base0# */ { /** Description for {@link Base0#methodOfBaseCommon}. */ methodOfBaseCommon: function() {}, /** Description for {@link Base0#methodOfBase0}. */ methodOfBase0: function() {} }; /** @class */ function Base1() {} Base1.prototype = /** @lends Base1# */ { /** Description for {@link Base1#methodOfBaseCommon}. */ methodOfBaseCommon: function() {}, /** Description for {@link Base1#methodOfBase1}. */ methodOfBase1: function() {} }; /** * @class * @augments Base0 * @augments Base1 */ function Class() {} Class.prototype = Object.create(Base0.prototype); Object.getOwnPropertyNames(Base1.prototype).forEach(function (prop) { Object.defineProperty(Class.prototype, prop, Object.getOwnPropertyDescriptor(Base1.prototype, prop)); });