/**
 * Copyright (c) Trimble Inc.
 */
/**
 * Interface for endpoint providers
 */
export interface EndpointProvider {
    /**
     * Retrieves the token endpoint URL
     *
     * @returns Promise that resolves to the token endpoint URL
     */
    RetrieveTokenEndpoint(): Promise<string>;
    /**
     * Retrieves the user info endpoint URL
     *
     * @returns Promise that resolves to the user info endpoint URL
     */
    RetrieveUserInfoEndpoint(): Promise<string>;
    /**
     * Retrieves the token revocation endpoint URL
     *
     * @returns Promise that resolves to the token revocation endpoint URL
     */
    RetrieveTokenRevocationEndpoint(): Promise<string>;
    /**
     * Retrieves the end session endpoint URL
     *
     * @returns Promise that resolves to the end session endpoint URL
     */
    RetrieveEndSessionEndpoint(): Promise<string>;
    /**
     * Retrieves the JSON Web Key Set endpoint URL
     *
     * @returns Promise that resolves to the JSON Web Key Set endpoint URL
     */
    RetrieveJSONWebKeySetEndpoint(): Promise<string>;
    /**
     * Retrieves the authorization endpoint URL
     *
     * @returns Promise that resolves to the authorization endpoint URL
     */
    RetrieveAuthorizationEndpoint(): Promise<string>;
}
