import { IdentityTokenResponse } from "../models/response/identity-token.response"; export abstract class TokenService { setTokens: ( accessToken: string, refreshToken: string, clientIdClientSecret: [string, string] ) => Promise; setToken: (token: string) => Promise; getToken: () => Promise; setRefreshToken: (refreshToken: string) => Promise; getRefreshToken: () => Promise; setClientId: (clientId: string) => Promise; getClientId: () => Promise; setClientSecret: (clientSecret: string) => Promise; getClientSecret: () => Promise; setTwoFactorToken: (tokenResponse: IdentityTokenResponse) => Promise; getTwoFactorToken: () => Promise; clearTwoFactorToken: () => Promise; clearToken: (userId?: string) => Promise; decodeToken: (token?: string) => any; getTokenExpirationDate: () => Promise; tokenSecondsRemaining: (offsetSeconds?: number) => Promise; tokenNeedsRefresh: (minutes?: number) => Promise; getUserId: () => Promise; getEmail: () => Promise; getEmailVerified: () => Promise; getName: () => Promise; getIssuer: () => Promise; getIsExternal: () => Promise; }