import { TokenPayload, AccountUser } from './types/account.js'; type Storage = { getItem: (key: T) => string | null; setItem: (key: T, value: string) => void; removeItem: (key: T) => void; }; type AuthStore = { accessToken?: string; refreshToken?: string; }; type AuthStoreKey = keyof AuthStore; declare class TokenStore implements Storage { private readonly store; constructor(); getItem(key: AuthStoreKey): string | null; setItem(key: AuthStoreKey, value: string): void; removeItem(key: AuthStoreKey): void; clear(): void; } interface AccountOptions { apiKey: string; gatewayUrl: string; tokenStore: TokenStore; timeoutMs?: number; onRefreshTokenError?: () => void | Promise; } declare class AccountApi { private readonly apiKey; private readonly gatewayUrl; private readonly tokenStore; constructor({ apiKey, gatewayUrl, tokenStore }: AccountOptions); protected getDefaultHeaders(): { "x-api-key": string; Accept: string; 'Content-Type': string; 'x-nl-sdk-version': string; 'User-Agent': string; }; login(authorizationCode: string): Promise; refresh(refreshToken: string): Promise; logout(refreshToken: string): Promise; } export { AccountApi as A, TokenStore as T, type AccountOptions as a };