export type AuthType = 'basic' | 'bearer' | 'apikey' | 'oauth2'; export interface AuthenticationOptions { type: AuthType; username?: string; password?: string; token?: string; apiKey?: string; apiKeyHeader?: string; oauth2?: OAuth2Options; } export interface OAuth2Options { accessToken: string; tokenType?: string; refreshToken?: string; expiresAt?: number; } export declare class AuthenticationManager { private readonly type; private readonly username?; private readonly password?; private readonly token?; private readonly apiKey?; private readonly apiKeyHeader; private oauth2?; constructor(options: AuthenticationOptions); private validate; getHeaders(): Record; isTokenExpired(): boolean; updateOAuth2Token(options: OAuth2Options): void; getType(): AuthType; getInfo(): { type: AuthType; username?: string; apiKeyHeader?: string; tokenExpired?: boolean; }; } //# sourceMappingURL=AuthenticationManager.d.ts.map