UNPKG

@propelauth/react

Version:

A React library for managing authentication, backed by PropelAuth

47 lines (46 loc) 1.45 kB
import { AccessHelper, OrgHelper, User, UserClass } from "@propelauth/javascript"; import { Tokens } from "../AuthContext"; export declare type UseAuthInfoLoading = { loading: true; isLoggedIn: undefined; accessToken: undefined; user: undefined; userClass: undefined; orgHelper: undefined; accessHelper: undefined; isImpersonating: undefined; impersonatorUserId: undefined; refreshAuthInfo: () => Promise<void>; tokens: Tokens; accessTokenExpiresAtSeconds: undefined; }; export declare type UseAuthInfoLoggedInProps = { loading: false; isLoggedIn: true; accessToken: string; user: User; userClass: UserClass; orgHelper: OrgHelper; accessHelper: AccessHelper; isImpersonating: boolean; impersonatorUserId?: string; refreshAuthInfo: () => Promise<void>; tokens: Tokens; accessTokenExpiresAtSeconds: number; }; export declare type UseAuthInfoNotLoggedInProps = { loading: false; isLoggedIn: false; accessToken: null; user: null; userClass: null; orgHelper: null; accessHelper: null; isImpersonating: false; impersonatorUserId: undefined; refreshAuthInfo: () => Promise<void>; tokens: Tokens; accessTokenExpiresAtSeconds: undefined; }; export declare type UseAuthInfoProps = UseAuthInfoLoading | UseAuthInfoLoggedInProps | UseAuthInfoNotLoggedInProps; export declare function useAuthInfo(): UseAuthInfoProps;