Расширение TnsOaProviderType - PullRequest
       17

Расширение TnsOaProviderType

0 голосов
/ 09 ноября 2018

Я пытаюсь реализовать nativescript-oauth2 с IdentityServer 4, поэтому я пытаюсь реализовать пользовательский поставщик, но получаю ошибку компиляции следующим образом:

Свойство providerType типа TnsOaProviderMyProvider не является присваивается тому же свойству в базовом типе 'TnsOaProvider'. Тип «MyProvider» нельзя назначить типу «TnsOaProviderType»

import { TnsOaProvider, TnsOaProviderOptions, OpenIdSupportFull, TnsOaProviderType } from "nativescript-oauth2/providers/providers";
import { ITnsOAuthTokenResult } from "nativescript-oauth2";

export declare type ProviderTypeMyProvider = "MyProvider";
export interface TnsOaProviderOptionsMyProvider extends TnsOaProviderMyProvider {}

export declare class TnsOaProviderMyProvider implements TnsOaProvider {
    options: TnsOaProviderOptions;
    openIdSupport: OpenIdSupportFull;
    providerType: ProviderTypeMyProvider;
    authority: string;
    tokenEndpointBase: string;
    authorizeEndpoint: string;
    tokenEndpoint: string;
    cookieDomains: string[];
    constructor(options: TnsOaProviderOptionsMyProvider);
    parseTokenResult(jsonData: any): ITnsOAuthTokenResult;
}

Любая идея, как расширить TnsOaProviderType, который определяется следующим образом:

export type TnsOaProviderType =
  | ProviderTypeFacebook
  | ProviderTypeGoogle
  | ProviderTypeMicrosoft
  | ProviderTypeLinkedIn;

1 Ответ

0 голосов
/ 10 ноября 2018

Кажется, что-то не так с вашей иерархией.

Вы расширяете TnsOaProviderOptionsMyProvider с TnsOaProviderMyProvider, но хотите передать TnsOaProviderOptionsMyProvider в качестве параметра самой TnsOaProviderMyProvider?

Пожалуйста, проверьте, не назвали ли вы их по ошибке.

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