как создать интерфейс машинописи, который возвращает обещание из сторонней библиотеки - PullRequest
0 голосов
/ 16 октября 2019

Я использую ActiveCampaign V1 NPM SDK (AC), и этот пакет использует RSVP NPM . Я создал интерфейс для экземпляра AC, который выглядит следующим образом:

export interface ActiveCampaignConnection {
  url_base: string;
  track_email: string;
  track_actid: string;
  track_key: string;
  version_number: number;
  debug: boolean;
  version (version: number): number;
  credentials_test (): unknown;
  api (path: string, post_data: object): RSVP.Promise<any>; // tslint:disable-line:variable-name
}

Однако атрибут api возвращает RSVP.Promise, и я не уверен, какой это тип. Я думал, что смогу использовать any или unknown, но это дает мне ошибки во время сборки, например:

Type 'unknown' is not assignable to type 'ActiveCampaignResponse'.

Где ActiveCampaignResponse - это другой интерфейс, который я создал для возврата данных, из которых мне нужноAC, то есть

export interface ActiveCampaignResponse {
  resultCode: number;
  resultMessage: string;
  resultOutput: string;
  success: number;
  error?: string
}

Я думаю, мне нужно определить, что это за тип any или unknown, но я не знаю, как это определить. Я установил RSVP @ types . У кого-нибудь есть предложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...