1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
|
//// [declFileGenericType2.ts]
declare module templa.mvc {
interface IModel {
}
}
declare module templa.mvc {
interface IController<ModelType extends templa.mvc.IModel> {
}
}
declare module templa.mvc {
class AbstractController<ModelType extends templa.mvc.IModel> implements mvc.IController<ModelType> {
}
}
declare module templa.mvc.composite {
interface ICompositeControllerModel extends mvc.IModel {
getControllers(): mvc.IController<mvc.IModel>[];
}
}
module templa.dom.mvc {
export interface IElementController<ModelType extends templa.mvc.IModel> extends templa.mvc.IController<ModelType> {
}
}
// Module
module templa.dom.mvc {
export class AbstractElementController<ModelType extends templa.mvc.IModel> extends templa.mvc.AbstractController<ModelType> implements IElementController<ModelType> {
constructor() {
super();
}
}
}
// Module
module templa.dom.mvc.composite {
export class AbstractCompositeElementController<ModelType extends templa.mvc.composite.ICompositeControllerModel> extends templa.dom.mvc.AbstractElementController<ModelType> {
public _controllers: templa.mvc.IController<templa.mvc.IModel>[];
constructor() {
super();
this._controllers = [];
}
}
}
//// [declFileGenericType2.js]
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
// Module
var templa;
(function (templa) {
var dom;
(function (dom) {
var mvc;
(function (mvc) {
var AbstractElementController = /** @class */ (function (_super) {
__extends(AbstractElementController, _super);
function AbstractElementController() {
return _super.call(this) || this;
}
return AbstractElementController;
}(templa.mvc.AbstractController));
mvc.AbstractElementController = AbstractElementController;
})(mvc = dom.mvc || (dom.mvc = {}));
})(dom = templa.dom || (templa.dom = {}));
})(templa || (templa = {}));
// Module
(function (templa) {
var dom;
(function (dom) {
var mvc;
(function (mvc) {
var composite;
(function (composite) {
var AbstractCompositeElementController = /** @class */ (function (_super) {
__extends(AbstractCompositeElementController, _super);
function AbstractCompositeElementController() {
var _this = _super.call(this) || this;
_this._controllers = [];
return _this;
}
return AbstractCompositeElementController;
}(templa.dom.mvc.AbstractElementController));
composite.AbstractCompositeElementController = AbstractCompositeElementController;
})(composite = mvc.composite || (mvc.composite = {}));
})(mvc = dom.mvc || (dom.mvc = {}));
})(dom = templa.dom || (templa.dom = {}));
})(templa || (templa = {}));
//// [declFileGenericType2.d.ts]
declare module templa.mvc {
interface IModel {
}
}
declare module templa.mvc {
interface IController<ModelType extends templa.mvc.IModel> {
}
}
declare module templa.mvc {
class AbstractController<ModelType extends templa.mvc.IModel> implements mvc.IController<ModelType> {
}
}
declare module templa.mvc.composite {
interface ICompositeControllerModel extends mvc.IModel {
getControllers(): mvc.IController<mvc.IModel>[];
}
}
declare module templa.dom.mvc {
interface IElementController<ModelType extends templa.mvc.IModel> extends templa.mvc.IController<ModelType> {
}
}
declare module templa.dom.mvc {
class AbstractElementController<ModelType extends templa.mvc.IModel> extends templa.mvc.AbstractController<ModelType> implements IElementController<ModelType> {
constructor();
}
}
declare module templa.dom.mvc.composite {
class AbstractCompositeElementController<ModelType extends templa.mvc.composite.ICompositeControllerModel> extends templa.dom.mvc.AbstractElementController<ModelType> {
_controllers: templa.mvc.IController<templa.mvc.IModel>[];
constructor();
}
}
|