export default class UserStore { private static instance: UserStore; private constructor() { } public static getInstance(): UserStore { if (!UserStore.instance) { UserStore.instance = new UserStore(); } return UserStore.instance; } public connect(accessToken: string, refreshToken: string): void { sessionStorage.setItem('accessToken', accessToken); sessionStorage.setItem('refreshToken', refreshToken); } public isConnected(): boolean { return sessionStorage.getItem('accessToken') !== null && sessionStorage.getItem('refreshToken') !== null; } public disconnect(): void { sessionStorage.removeItem('accessToken'); sessionStorage.removeItem('refreshToken'); sessionStorage.removeItem('userPairingId'); } public getAccessToken(): string | null { return sessionStorage.getItem('accessToken'); } public getRefreshToken(): string | null { return sessionStorage.getItem('refreshToken'); } public pair(userPairingId: string): void { sessionStorage.setItem('userPairingId', userPairingId); } public getUserPairingId(): string | null { return sessionStorage.getItem('userPairingId'); } }