/**
 * Authentication service for managing Zalo sessions
 */
import { HttpClient } from '../../utils/http.utils';
import { AutomationWebResponse } from '../../types/common.types';
import { QRLoginRequest, QRLoginResponse, CredentialsLoginRequest, CredentialsLoginResponse, SessionDeleteResponse, BulkDeleteSessionsRequest, BulkDeleteSessionsResponse, LoginStatusResponse, SessionListResponse, SessionDebugInfo } from '../../types/auth.types';
/**
 * Authentication service class
 */
export declare class AuthService {
    private httpClient;
    constructor(httpClient: HttpClient);
    /**
     * Generate QR Code for Zalo login
     */
    generateQRCode(request: QRLoginRequest): Promise<AutomationWebResponse<QRLoginResponse>>;
    /**
     * Get login status for a session
     */
    getLoginStatus(sessionId: string, timeout?: number): Promise<AutomationWebResponse<LoginStatusResponse>>;
    /**
     * Login with credentials
     */
    loginWithCredentials(request: CredentialsLoginRequest): Promise<AutomationWebResponse<CredentialsLoginResponse>>;
    /**
     * Get list of sessions for a user
     */
    getSessionsByUser(userUuid: string): Promise<AutomationWebResponse<SessionListResponse>>;
    /**
     * Delete a specific session
     */
    deleteSession(sessionId: string): Promise<AutomationWebResponse<SessionDeleteResponse>>;
    /**
     * Delete multiple sessions
     */
    bulkDeleteSessions(request: BulkDeleteSessionsRequest): Promise<AutomationWebResponse<BulkDeleteSessionsResponse>>;
    /**
     * Get debug information for a session
     */
    debugSession(sessionId: string): Promise<AutomationWebResponse<SessionDebugInfo>>;
    /**
     * Relogin with existing session - Chuẩn theo automation-web controller
     */
    reloginWithSession(sessionId: string): Promise<AutomationWebResponse<QRLoginResponse>>;
}
//# sourceMappingURL=auth.service.d.ts.map