import type { AuthOptions, HTTPRequest, HTTPResponse } from '../'; import Storage from './storage'; export default class Auth { ctx: any; options: AuthOptions; strategies: {}; error: Error; private _errorListeners; private _redirectListeners; private _stateWarnShown; private _getStateWarnShown; $storage: Storage; $state: any; constructor(ctx: any, options: any); init(): Promise; get state(): any; getState(key: any): any; get strategy(): any; registerStrategy(name: any, strategy: any): void; setStrategy(name: any): Promise; mounted(): Promise; loginWith(name: any, ...args: any[]): Promise; login(...args: any[]): Promise; fetchUser(...args: any[]): Promise; logout(): Promise; setUserToken(token: any, refreshToken?: any): Promise; reset(...args: any[]): any; refreshTokens(): Promise; get user(): any; get loggedIn(): any; check(...args: any[]): any; fetchUserOnce(...args: any[]): Promise; setUser(user: any): void; get busy(): any; request(endpoint: HTTPRequest, defaults?: HTTPRequest): Promise; requestWith(strategy: string, endpoint: HTTPRequest, defaults?: HTTPRequest): Promise; wrapLogin(promise: any): Promise; onError(listener: any): void; callOnError(error: any, payload?: {}): void; redirect(name: any, noRouter?: boolean): void; onRedirect(listener: any): void; callOnRedirect(to: any, from: any): any; hasScope(scope: any): boolean; }