import { AccountLink, HookName, Hooks, InitOptions, UserInfo } from './types'; export declare class Authentication { #private; constructor(options: InitOptions); registerEventListenerForUserChannel: (params: { topic: string; messageType: string; callback: any; }) => void; initNotification: () => Promise; destroyNotification: () => void; login: (params: { noPrompt: boolean; force_2fa: boolean; }) => Promise; logout: (force?: boolean, redirectUrl?: string | undefined) => void; getAccessToken: () => string; getRefreshedAccessToken: (force?: boolean | undefined) => Promise; getDecodedAccessToken: () => any; getDecodedRefreshedAccessToken: (force?: boolean | undefined) => Promise; getHooks: () => Hooks | undefined; setHook: (params: { name: string; callback: (params?: any) => any; }) => void; autoLogin: () => boolean; autoLogout: () => boolean; idleTimeoutInMinutes: () => number; checkTokenInUrl: () => boolean; checkTokenInInit: () => boolean; verifySession: () => Promise; checkAuthCode: () => Promise; getUserInfo: () => Promise; linkUser: (params: { redirectUrl?: string; newWindow?: boolean; callback?: any; }) => Promise; unlinkUser: (params: { redirectUrl?: string; newWindow?: boolean; callback?: any; }) => Promise; getCloudProviderToken: (jti?: string | undefined) => Promise; cloudProviderUserInfo: () => Promise; cloudProviderReauthenticate: (params: { redirectUrl?: string; nonce?: string; newWindow?: boolean; callback?: any; }) => Promise; cloudProviderUpdate: (cloudProviderId: 'microsoft') => Promise; statusAdminConsent: () => Promise; getAdminConsent: (params: { domain?: string; redirectUrl?: string; newWindow?: boolean; callback?: any; }) => void; revokeAdminConsent: () => Promise; getLinkMap: (allUsers?: boolean) => Promise; setLinkMap: (linkMap: Array) => Promise; authoriseSupport: (params: { code: string; duration: number; }) => Promise; changePassword: (params: { redirectUrl?: string; newWindow?: boolean; callback?: any; }) => void; passthrough: (params: { url: string; newWindow: boolean; authHost?: string; }) => Promise; triggerHooks: (hookName: HookName) => Promise; afterAuthenticated: () => Promise; runIframe: (authorizeUrl: string, state: string, timeoutInSeconds?: number) => Promise; }