TypeScript/tests/baselines/reference/extendingClassFromAliasAndUsageInIndexer.types

81 lines
2.6 KiB
Plaintext
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== tests/cases/compiler/extendingClassFromAliasAndUsageInIndexer_main.ts ===
import Backbone = require("extendingClassFromAliasAndUsageInIndexer_backbone");
2014-08-28 21:40:58 +02:00
>Backbone : typeof Backbone
2014-08-15 23:33:16 +02:00
import moduleA = require("extendingClassFromAliasAndUsageInIndexer_moduleA");
2014-08-28 21:40:58 +02:00
>moduleA : typeof moduleA
2014-08-15 23:33:16 +02:00
import moduleB = require("extendingClassFromAliasAndUsageInIndexer_moduleB");
2014-08-28 21:40:58 +02:00
>moduleB : typeof moduleB
2014-08-15 23:33:16 +02:00
interface IHasVisualizationModel {
>IHasVisualizationModel : IHasVisualizationModel
VisualizationModel: typeof Backbone.Model;
2014-08-25 19:36:12 +02:00
>VisualizationModel : typeof Backbone.Model
>Backbone : typeof Backbone
>Model : typeof Backbone.Model
2014-08-15 23:33:16 +02:00
}
var moduleATyped: IHasVisualizationModel = moduleA;
>moduleATyped : IHasVisualizationModel
>IHasVisualizationModel : IHasVisualizationModel
2014-08-25 19:36:12 +02:00
>moduleA : typeof moduleA
2014-08-15 23:33:16 +02:00
var moduleMap: { [key: string]: IHasVisualizationModel } = {
>moduleMap : { [key: string]: IHasVisualizationModel; }
2014-08-15 23:33:16 +02:00
>key : string
>IHasVisualizationModel : IHasVisualizationModel
2014-10-13 15:56:58 +02:00
>{ "moduleA": moduleA, "moduleB": moduleB} : { [x: string]: typeof moduleA; "moduleA": typeof moduleA; "moduleB": typeof moduleB; }
2014-08-15 23:33:16 +02:00
"moduleA": moduleA,
2014-08-25 19:36:12 +02:00
>moduleA : typeof moduleA
2014-08-15 23:33:16 +02:00
"moduleB": moduleB
2014-08-25 19:36:12 +02:00
>moduleB : typeof moduleB
2014-08-15 23:33:16 +02:00
};
var moduleName: string;
>moduleName : string
var visModel = new moduleMap[moduleName].VisualizationModel();
2014-08-25 19:36:12 +02:00
>visModel : Backbone.Model
>new moduleMap[moduleName].VisualizationModel() : Backbone.Model
>moduleMap[moduleName].VisualizationModel : typeof Backbone.Model
2014-08-15 23:33:16 +02:00
>moduleMap[moduleName] : IHasVisualizationModel
>moduleMap : { [key: string]: IHasVisualizationModel; }
2014-08-15 23:33:16 +02:00
>moduleName : string
2014-08-25 19:36:12 +02:00
>VisualizationModel : typeof Backbone.Model
2014-08-15 23:33:16 +02:00
=== tests/cases/compiler/extendingClassFromAliasAndUsageInIndexer_backbone.ts ===
export class Model {
>Model : Model
public someData: string;
>someData : string
}
=== tests/cases/compiler/extendingClassFromAliasAndUsageInIndexer_moduleA.ts ===
import Backbone = require("extendingClassFromAliasAndUsageInIndexer_backbone");
2014-08-28 21:40:58 +02:00
>Backbone : typeof Backbone
2014-08-15 23:33:16 +02:00
export class VisualizationModel extends Backbone.Model {
>VisualizationModel : VisualizationModel
2014-08-28 21:40:58 +02:00
>Backbone : unknown
2014-08-25 19:36:12 +02:00
>Model : Backbone.Model
2014-08-15 23:33:16 +02:00
// interesting stuff here
}
=== tests/cases/compiler/extendingClassFromAliasAndUsageInIndexer_moduleB.ts ===
import Backbone = require("extendingClassFromAliasAndUsageInIndexer_backbone");
2014-08-28 21:40:58 +02:00
>Backbone : typeof Backbone
2014-08-15 23:33:16 +02:00
export class VisualizationModel extends Backbone.Model {
>VisualizationModel : VisualizationModel
2014-08-28 21:40:58 +02:00
>Backbone : unknown
2014-08-25 19:36:12 +02:00
>Model : Backbone.Model
2014-08-15 23:33:16 +02:00
// different interesting stuff here
}