import { BASIC, FIREBASE, GATEWAY_JWT, HXAUTH_ACCESS_TOKEN } from "../enums/user_auth_type"; import { UserRole } from "../enums"; export declare class GatewayUser { authType: typeof GATEWAY_JWT; gatewayUser?: { idToken?: string; role?: UserRole; redirectUrl?: string; storageToken?: string; }; constructor(authType: any, idToken: any, role: any, storageToken?: any, redirectUrl?: any); } export declare type FirebaseUser = { firebaseUser: { uid?: string; role?: UserRole; displayName?: string; idToken?: string; email?: string; }; authType: typeof FIREBASE; }; export declare type BasicUser = { authType: typeof BASIC; username: string; password: string; }; export declare type HxAuthUser = { authType: typeof HXAUTH_ACCESS_TOKEN; hxAuthUser: { accessToken: string; refreshToken: string; expireTime: number; realmName: string; }; }; export declare type User = BasicUser | GatewayUser | FirebaseUser | HxAuthUser | null; export declare const isFirebaseUser: (user: User) => user is FirebaseUser; export declare const isGatewayUser: (user: User) => user is GatewayUser; export declare const isHxAuthUser: (user: User) => user is HxAuthUser; export default User;