@trimble-oss/trimble-id
Version:
Trimble Identity SDK for JavaScript/TypeScript
28 lines (27 loc) • 1.07 kB
TypeScript
/**
* Copyright (c) Trimble Inc.
*/
import { KeysetProvider } from '../interfaces/KeysetProvider';
import { EndpointProvider } from '../interfaces/EndpointProvider';
import { Keyset } from '../interfaces/Keyset';
/**
* OpenIdKeysetProvider provides a keyset for JSON web token
*/
export default class OpenIdKeysetProvider implements KeysetProvider {
private readonly _endpointProvider;
/**
* Public constructor for OpenIdKeySetProvider class
*
* @param endpointProvider An endpoint provider that provides the URL for the Trimble Identity JSON web keyset endpoint.
* It can be be OpenIdEndpointProvider/FixedEndpointProvider
*/
constructor(endpointProvider: EndpointProvider);
/**
* Retrieves an array of named keys
*
* @returns A Promise that resolves to an array of named keys on completion
* @throws Thrown when a JSON web keyset endpoint is not provided by the endpoint provider
* @throws Thrown when a call to the JSON web keyset endpoint fails
*/
RetrieveKeyset(): Promise<Keyset[]>;
}