From 396000ead5cd89888c814f669cbb0ef1f7e38f92 Mon Sep 17 00:00:00 2001 From: Alex Eagle Date: Thu, 7 May 2015 23:56:31 -0700 Subject: [PATCH] Add typing for bind() which is also needed for demo --- angular2/angular2-tests.ts | 6 +++++- angular2/angular2.d.ts | 19 ++++++++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/angular2/angular2-tests.ts b/angular2/angular2-tests.ts index 1a6d753f98..bdd2628e56 100644 --- a/angular2/angular2-tests.ts +++ b/angular2/angular2-tests.ts @@ -2,9 +2,13 @@ // Use Typescript 1.4 style imports import ng = require("angular2/angular2"); +import di = require("angular2/di"); class Service { +} +class Service2 { + } class Cmp { @@ -13,7 +17,7 @@ class Cmp { Cmp.annotations = [ ng.Component({ selector: 'cmp', - injectables: [Service] + injectables: [Service, di.bind(Service2).toValue(null)] }), ng.View({ template: '{{greeting}} world!', diff --git a/angular2/angular2.d.ts b/angular2/angular2.d.ts index 4e2d112f81..fa3cc77889 100644 --- a/angular2/angular2.d.ts +++ b/angular2/angular2.d.ts @@ -602,4 +602,21 @@ declare module "angular2/angular2" { * */ function Switch(): void; -} \ No newline at end of file +} + +declare module "angular2/di" { + /** + * Provides an API for imperatively constructing {@link Binding}s. + * + * This is only relevant for JavaScript. See {@link BindingBuilder}. + * + * ## Example + * + * ```javascript + * bind(MyInterface).toClass(MyClass) + * + * ``` + * + */ + function bind(token: any): any; +}