@authlink/client
Version:
Official client SDK for integrating with the Authlink Identity Provider
23 lines (22 loc) • 1.09 kB
TypeScript
import type { AuthorizeOptions, AuthorizeResponse, TokenOptions, TokenResponse, LogoutOptions, OpenIdConfiguration, JsonWebKeySet, UserInfoResponse } from "../types";
import type { IIdentityProviderClient } from "./IIdentityProviderClient";
export declare class IdentityProviderClient implements IIdentityProviderClient {
private readonly baseUrl;
private readonly codeVerifierKey;
private readonly stateKey;
private readonly nonceKey;
constructor(baseUrl: string);
authorize(options: AuthorizeOptions): Promise<string | void>;
authorizeSilently(options: AuthorizeOptions): Promise<AuthorizeResponse>;
token(options: TokenOptions): Promise<TokenResponse>;
logout(options: LogoutOptions): Promise<void>;
validateState(state: string): boolean;
validateNonce(nonce: string): boolean;
jwks(): Promise<JsonWebKeySet>;
configuration(): Promise<OpenIdConfiguration>;
userInfo(accessToken: string): Promise<UserInfoResponse>;
clear(): void;
getCodeVerifier(): string | null;
getState(): string | null;
getNonce(): string | null;
}