/** * SMTP Client Authentication Handler * Authentication mechanisms implementation */ import type { ISmtpConnection, ISmtpAuthOptions, ISmtpClientOptions } from './interfaces.js'; import type { CommandHandler } from './command-handler.js'; export declare class AuthHandler { private options; private commandHandler; constructor(options: ISmtpClientOptions, commandHandler: CommandHandler); /** * Authenticate using the configured method */ authenticate(connection: ISmtpConnection): Promise; /** * Authenticate using AUTH PLAIN */ private authenticatePlain; /** * Authenticate using AUTH LOGIN */ private authenticateLogin; /** * Authenticate using OAuth2 */ private authenticateOAuth2; /** * Select appropriate authentication method */ private selectAuthMethod; /** * Check if OAuth2 token is expired */ private isTokenExpired; /** * Refresh OAuth2 access token */ private refreshOAuth2Token; /** * Validate authentication configuration */ validateAuthConfig(auth: ISmtpAuthOptions): string[]; }