import type { InternalAxiosRequestConfig, AxiosResponse } from 'axios'; import SessionStorage from "./storage"; import SessionHistory from "./history"; import { BasicSession } from "./index"; export default class Authorizer { private _sessionKey; private _sessionStorage; private _sessionHistory; get sessionKey(): string; set sessionKey(value: string); get sessionStorage(): SessionStorage; set sessionStorage(value: SessionStorage); get sessionHistory(): SessionHistory; set sessionHistory(value: SessionHistory); getSession(): Promise; storageSession(session: BasicSession | null): Promise; refreshSession(_session: BasicSession): Promise; withAuthentication(request: InternalAxiosRequestConfig, session: BasicSession): void; checkSession(request: InternalAxiosRequestConfig, session: BasicSession): boolean; checkResponse(response: AxiosResponse): boolean; onAuthorizedDenied(error: unknown): Promise; onSessionInvalidated(): void; invalidateSession(): Promise; }