UNPKG

oidc-spa

Version:

Openidconnect client for Single Page Applications

28 lines (27 loc) 1.19 kB
export type ParamsOfCreateOidcBackend<DecodedAccessToken extends Record<string, unknown>> = { issuerUri: string; decodedAccessTokenSchema?: { parse: (data: unknown) => DecodedAccessToken; }; }; export type OidcBackend<DecodedAccessToken extends Record<string, unknown>> = { verifyAndDecodeAccessToken(params: { accessToken: string; }): ResultOfAccessTokenVerify<DecodedAccessToken>; }; export type ResultOfAccessTokenVerify<DecodedAccessToken> = ResultOfAccessTokenVerify.Valid<DecodedAccessToken> | ResultOfAccessTokenVerify.Invalid; export declare namespace ResultOfAccessTokenVerify { type Valid<DecodedAccessToken> = { isValid: true; decodedAccessToken: DecodedAccessToken; errorCase?: never; errorMessage?: never; }; type Invalid = { isValid: false; errorCase: "expired" | "invalid signature" | "does not respect schema"; errorMessage: string; decodedAccessToken?: never; }; } export declare function createOidcBackend<DecodedAccessToken extends Record<string, unknown>>(params: ParamsOfCreateOidcBackend<DecodedAccessToken>): Promise<OidcBackend<DecodedAccessToken>>;