///
import { SDKConfig } from '../SDKConfig';
import { UserInfo } from '../SDKContext';
/** A class containing framework-agnostic SDK methods */
export declare class SDKCore {
private config;
private urlHelper;
private redirectHelper;
private tokenExpirationTimeout?;
constructor(config: SDKConfig);
startLogin(state?: string): void;
startRegister(state?: string): void;
startLogout(): void;
manageAccount(): void;
fetchUserInfo(): Promise;
refreshToken(): Promise;
initAutoRefresh(): NodeJS.Timeout | undefined;
handlePostRedirect(callback?: (state?: string) => void): void;
get isLoggedIn(): boolean;
/** The moment of access token expiration in milliseconds since epoch. */
private get at_exp();
/**
* Schedules `onTokenExpiration` at moment of access token expiration.
* SDKCore is not necessarily reactive like React, Angular, and Vue.
* so `onTokenExpiration` is for reactive frameworks to hook in and perform actions as on token expiration.
*/
private scheduleTokenExpiration;
}