import type { Request, Response } from "express";
import { XAIAdapter } from "../db/XAIAdapter";
/**
 * Authentication controller
 * Handles user authentication including Twitter OAuth, JWT management, and session control
 */
export declare class XAICombatAuthController {
    private adapter;
    private JWT_SECRET;
    private TWITTER_CONSUMER_KEY;
    private TWITTER_CONSUMER_SECRET;
    private FRONTEND_URL;
    private BACKEND_URL;
    private client;
    constructor(adapter: XAIAdapter<any>);
    /**
     * Initiate Twitter OAuth login flow
     */
    initiateTwitterLogin(req: Request, res: Response): Promise<void>;
    /**
     * Handle Twitter OAuth callback
     */
    handleTwitterCallback(req: Request, res: Response): Promise<void>;
    /**
     * Check current authentication status
     */
    checkAuth(req: Request, res: Response): Promise<void>;
    /**
     * Get current user from JWT token
     */
    getCurrentUser(req: Request, res: Response): Promise<void>;
    /**
     * Logout user
     */
    logout(req: Request, res: Response): Promise<void>;
}
//# sourceMappingURL=AuthController.d.ts.map