TypeScript/tests/baselines/reference/aliasUsageInTypeArgumentOfExtendsClause.types
2014-08-28 12:40:58 -07:00

54 lines
1.4 KiB
Plaintext

=== tests/cases/compiler/aliasUsageInTypeArgumentOfExtendsClause_main.ts ===
import Backbone = require("aliasUsageInTypeArgumentOfExtendsClause_backbone");
>Backbone : typeof Backbone
import moduleA = require("aliasUsageInTypeArgumentOfExtendsClause_moduleA");
>moduleA : typeof moduleA
interface IHasVisualizationModel {
>IHasVisualizationModel : IHasVisualizationModel
VisualizationModel: typeof Backbone.Model;
>VisualizationModel : typeof Backbone.Model
>Backbone : typeof Backbone
>Model : typeof Backbone.Model
}
class C<T extends IHasVisualizationModel> {
>C : C<T>
>T : T
>IHasVisualizationModel : IHasVisualizationModel
x: T;
>x : T
>T : T
}
class D extends C<IHasVisualizationModel> {
>D : D
>C : C<T>
>IHasVisualizationModel : IHasVisualizationModel
x = moduleA;
>x : typeof moduleA
>moduleA : typeof moduleA
}
=== tests/cases/compiler/aliasUsageInTypeArgumentOfExtendsClause_backbone.ts ===
export class Model {
>Model : Model
public someData: string;
>someData : string
}
=== tests/cases/compiler/aliasUsageInTypeArgumentOfExtendsClause_moduleA.ts ===
import Backbone = require("aliasUsageInTypeArgumentOfExtendsClause_backbone");
>Backbone : typeof Backbone
export class VisualizationModel extends Backbone.Model {
>VisualizationModel : VisualizationModel
>Backbone : unknown
>Model : Backbone.Model
// interesting stuff here
}