dc-management-sdk-js
Version:
Amplience Dynamic Content Management SDK
35 lines (34 loc) • 1.19 kB
TypeScript
import { AuthHeaderProvider } from '../../auth/AuthHeaderProvider';
import { HttpClient } from '../../http/HttpClient';
import { AccessToken } from '../models/AccessToken';
import { Oauth2AuthHeaderProviderCredentials } from '../models/Oauth2AuthHeaderProviderCredentials';
/**
* @hidden
*/
export declare class Oauth2AuthHeaderProvider implements AuthHeaderProvider {
httpClient: HttpClient;
private readonly safelyExpireOffsetSeconds;
private clientCredentials;
private token;
private tokenExpires;
private inFlight;
private authUrl;
constructor(clientCredentials: Oauth2AuthHeaderProviderCredentials, options: {
authUrl?: string;
} & Record<string, unknown>, httpClient: HttpClient);
/**
* Requests an authentication token that can be used
* to make requests to the Dynamic Content api.
* Tokens are reused until they expire.
*
* @returns {Promise<AccessToken>}
*/
getToken(): Promise<AccessToken>;
/**
* Returns an authorization header that can be used to make
* requests to the Dynamic Content api.
*
* @returns {Promise<string>}
*/
getAuthHeader(): Promise<string>;
}