UNPKG

@ssplib/react-components

Version:
73 lines (72 loc) 1.56 kB
import { KeycloakTokenParsed } from 'keycloak-js'; export interface User extends KeycloakTokenParsed { token: string | undefined; roles: any[]; image?: string; } export interface AuthData { isAuth: boolean; user: User | null | undefined; userLoaded: boolean; login: () => void; logout: () => void; } export interface AuthClaims { sub: string; email_verified: string; amr: string[]; profile: string; kid: string; iss: string; phone_number_verified: string; preferred_username: string; picture: string; aud: string; auth_time: number; scope: string[]; name: string; given_name: string; phone_number: string; exp: number; iat: number; roles: { code: number; name: string; }[]; jti: string; email: string; } export interface AuthReturn { access_token: string; token_type: string; expires_in: number; scope: string; id_token: string; claims: AuthClaims; ssp_token: string; } export interface AuthSspToken { id: number; name: string; email: string; phone_number: string; preferred_username: string; roles: { code: number; name: string; }[]; iat: number; exp: number; aud: string; iss: string; sub: string; } export interface AuthReturnData { isAuth: boolean; type: 'govbr' | 'ad'; user: User | null | undefined; userLoaded: boolean; login: () => void; saveUserData: (token: AuthReturn) => void; logout: () => void; }