import { AuthService } from './auth.service';
import { RegisterDto } from './dto/register.dto';
import { LoginDto } from './dto/login.dto';
import { ForgotPasswordDto } from './dto/forgot-password.dto';
import { ResetPasswordDto } from './dto/reset-password.dto';
export declare class AuthController {
    private authService;
    constructor(authService: AuthService);
    register(body: RegisterDto): Promise<{
        message: string;
        email: string;
    }>;
    login(body: LoginDto): Promise<{
        access_token: string;
        refresh_token: string;
    }>;
    verifyOtp(body: {
        email: string;
        otp: string;
    }): Promise<{
        message: string;
        access_token: string;
        refresh_token: string;
        role: string;
    }>;
    resendOtp(body: {
        email: string;
    }): Promise<{
        message: string;
    }>;
    forgotPassword(body: ForgotPasswordDto): Promise<{
        error: string;
        message?: undefined;
    } | {
        message: string;
        error?: undefined;
    }>;
    resetPassword(body: ResetPasswordDto): Promise<{
        message: string;
    }>;
    socialLogin(body: {
        email: string;
        name?: string;
        image?: string;
        provider?: string;
        role?: string;
    }): Promise<{
        access_token: string;
        refresh_token: string;
    }>;
    updateRole(req: any, body: {
        role: string;
    }): Promise<{
        access_token: string;
        role: string;
    }>;
    getProfile(req: any): any;
}
