Ошибки машинописного текста при установке объявления в значение ИСТИНА

Я пытаюсь создать определения машинописи для проекта Angular 2, над которым я работаю, чтобы он мог быть экспортируемой библиотекой.

У меня есть несколько служб, которые возвращают HTTP-запросы к компонентам, все очень похоже на следующее:

public create(user:User) {
  return this.http.post(this._apiUrls.create,
    JSON.stringify(user), {
      headers: this.apiConfig.getApiHeaders()
    });
}

Который я тогда называю из компонента примерно так:

Session.create(user).subscribe((res:Response) => {
  this.user = res.json().user
}); 

Это все работает нормально, пока я не поверну 'объявление' в true в файле tsconfig, чтобы я мог создавать файлы определений машинописи. Я начинаю получать следующие ошибки для нескольких моих сервисов:

error TS4053: Return type of public method from exported class has or is using name 'Observable' from external module "node_modules/rxjs/Observable" but cannot be named.

Я в основном понимаю проблему, но не знаю решения. Если я импортирую Observable в сервис, то подстилка машинописного текста выдаст ошибки, потому что технически она не используется в этом файле.

Исходя из Angular 1, это была похожая парадигма, которую мы использовали во всех наших приложениях, чтобы разбить наш код на части, но, может быть, мне нужно изменить подход в Angular 2? Я посмотрел на множество других примеров Angular 2, и все они сделали то же самое.

Ответы на вопрос(1)

Ваш ответ на вопрос