UNPKG

@primno/dataverse-auth

Version:

Authenticate to Dataverse and Dynamics 365 with a connection string or OAuth 2.0. Provides a token persistence cache.

30 lines (29 loc) 1.57 kB
import { AuthenticationResult, IConfidentialClientApplication, IPublicClientApplication } from "@azure/msal-node"; import { TokenProvider } from "../../../token-provider"; import { OAuthConfig } from "../../oauth-configuration"; import { Application } from "./application"; type ClientApplication = IConfidentialClientApplication | IPublicClientApplication; declare abstract class MsalTokenProvider implements TokenProvider { protected oAuthOptions: OAuthConfig; protected supportedApplication: Application["type"][]; private application; constructor(oAuthOptions: OAuthConfig, supportedApplication: Application["type"][]); protected getClient(): Promise<ClientApplication>; abstract acquireToken(client: ClientApplication): Promise<AuthenticationResult | null>; private tryGetAccountFromCache; get url(): string; getToken(): Promise<string>; } export declare class DeviceCodeTokenProvider extends MsalTokenProvider { constructor(oAuthOptions: OAuthConfig); acquireToken(client: IPublicClientApplication): Promise<AuthenticationResult | null>; } export declare class UserPasswordTokenProvider extends MsalTokenProvider { constructor(oAuthOptions: OAuthConfig); acquireToken(client: IPublicClientApplication | IConfidentialClientApplication): Promise<AuthenticationResult | null>; } export declare class ClientCredentialTokenProvider extends MsalTokenProvider { constructor(oAuthOptions: OAuthConfig); acquireToken(client: IConfidentialClientApplication): Promise<AuthenticationResult | null>; } export {};