@foal/social
Version:
Social authentication for FoalTS
53 lines (52 loc) • 1.37 kB
TypeScript
import { AbstractProvider, SocialTokens } from './abstract-provider.service';
export interface GoogleAuthParams {
nonce?: string;
prompt?: string;
display?: string;
login_hint?: string;
access_type?: 'offline' | 'online';
include_granted_scopes?: true | false;
'openid.realm'?: string;
hd?: string;
}
export interface GoogleUserInfo {
aud: string;
exp: number;
iat: number;
iss: string;
sub: string;
at_hash?: string;
azp?: string;
email?: string;
email_verified?: boolean;
family_name?: string;
given_name?: string;
hd?: string;
locale?: string;
name?: string;
nonce?: string;
picture?: string;
profile?: string;
[name: string]: unknown;
}
export declare class InvalidJWTError extends Error {
readonly name = "InvalidJWTError";
}
/**
* Google social provider.
*
* @export
* @class GoogleProvider
* @extends {AbstractProvider<GoogleAuthParams, never>}
*/
export declare class GoogleProvider extends AbstractProvider<GoogleAuthParams, never, GoogleUserInfo> {
protected configPaths: {
clientId: string;
clientSecret: string;
redirectUri: string;
};
protected authEndpoint: string;
protected tokenEndpoint: string;
protected defaultScopes: string[];
getUserInfoFromTokens(tokens: SocialTokens): GoogleUserInfo;
}