export interface TokenService { token: string; decodedToken: any; refreshToken: string; setTokens(accessToken: string, refreshToken: string): Promise; setToken(token: string): Promise; getToken(): Promise; setRefreshToken(refreshToken: string): Promise; getRefreshToken(): Promise; setTwoFactorToken(token: string, email: string): Promise; getTwoFactorToken(email: string): Promise; clearTwoFactorToken(email: string): Promise; clearToken(): Promise; decodeToken(): any; getTokenExpirationDate(): Date; tokenSecondsRemaining(offsetSeconds?: number): number; tokenNeedsRefresh(minutes?: number): boolean; getUserId(): string; getEmail(): string; getName(): string; getPremium(): boolean; getIssuer(): string; }