Est-il possible d'injecter de l'interface avec angular2?

je me demande si il ya une bonne façon d'injecter des interfaces dans Angular2? (cf. ci-dessous)

Je pense que c'est lié à l' @Injectable() décorateur sur l'interface, mais il semble que ce n'est pas autorisé.

Ce qui concerne.

Quand CoursesServiceInterface est mis en œuvre comme une interface, le Tapuscrit compilateur se plaint "CoursesServiceInterface ne peut pas trouver de nom":

import {CoursesServiceInterface} from './CoursesService.interface';
import {CoursesService} from './CoursesService.service';
import {CoursesServiceMock} from './CoursesServiceMock.service';
bootstrap(AppComponent, [
  ROUTER_PROVIDERS, 
  GlobalService,
  provide(CoursesServiceInterface, { useClass: CoursesServiceMock })
  ]);

mais avec CoursesServiceInterface comme une interface:

import {Injectable} from 'angular2/core';
import {Course} from './Course.class';
//@Injectable()
export interface CoursesServiceInterface {
    getAllCourses(): Promise<Course[]>;//{ return null; };
    getCourse(id: number): Promise<Course>;//{ return null; };
    remove(id: number): Promise<{}>;//{ return null; };
}

Lorsque le service est d'une classe, le Tapuscrit compilateur ne se plaint pas plus:

import {Injectable} from 'angular2/core';
import {Course} from './Course.class';
@Injectable()
export class CoursesServiceInterface {  
    getAllCourses() : Promise<Course[]> { return null; };
    getCourse(id: number) :Promise<Course> { return null; };
    remove (id: number) : Promise<{}> { return null; };
}
InformationsquelleAutor user1568220 | 2016-05-03