=== tests/cases/compiler/aliasUsageInObjectLiteral_main.ts ===
import Backbone = require("aliasUsageInObjectLiteral_backbone");
>Backbone : typeof Backbone

import moduleA = require("aliasUsageInObjectLiteral_moduleA");
>moduleA : typeof moduleA

interface IHasVisualizationModel {
>IHasVisualizationModel : IHasVisualizationModel

    VisualizationModel: typeof Backbone.Model;
>VisualizationModel : typeof Backbone.Model
>Backbone : typeof Backbone
>Model : typeof Backbone.Model
}
var a: { x: typeof moduleA } = { x: moduleA };
>a : { x: typeof moduleA; }
>x : typeof moduleA
>moduleA : typeof moduleA
>{ x: moduleA } : { x: typeof moduleA; }
>x : typeof moduleA
>moduleA : typeof moduleA

var b: { x: IHasVisualizationModel } = { x: moduleA };
>b : { x: IHasVisualizationModel; }
>x : IHasVisualizationModel
>IHasVisualizationModel : IHasVisualizationModel
>{ x: moduleA } : { x: typeof moduleA; }
>x : typeof moduleA
>moduleA : typeof moduleA

var c: { y: { z: IHasVisualizationModel } } = { y: { z: moduleA } };
>c : { y: { z: IHasVisualizationModel; }; }
>y : { z: IHasVisualizationModel; }
>z : IHasVisualizationModel
>IHasVisualizationModel : IHasVisualizationModel
>{ y: { z: moduleA } } : { y: { z: typeof moduleA; }; }
>y : { z: typeof moduleA; }
>{ z: moduleA } : { z: typeof moduleA; }
>z : typeof moduleA
>moduleA : typeof moduleA

=== tests/cases/compiler/aliasUsageInObjectLiteral_backbone.ts ===
export class Model {
>Model : Model

    public someData: string;
>someData : string
}

=== tests/cases/compiler/aliasUsageInObjectLiteral_moduleA.ts ===
import Backbone = require("aliasUsageInObjectLiteral_backbone");
>Backbone : typeof Backbone

export class VisualizationModel extends Backbone.Model {
>VisualizationModel : VisualizationModel
>Backbone : unknown
>Model : Backbone.Model

    // interesting stuff here
}

