import { ConfigService } from '@nestjs/config'; import { JwtService } from '@nestjs/jwt'; import { PrismaService } from '../prisma/prisma.service'; import { SmsService } from '../sms/sms.service'; import { AdminLoginDto, RequestOtpDto, UpdateProfileDto, VerifyOtpDto } from './dto/auth.dto'; export declare class AuthService { private readonly prisma; private readonly jwt; private readonly config; private readonly sms; constructor(prisma: PrismaService, jwt: JwtService, config: ConfigService, sms: SmsService); requestOtp(dto: RequestOtpDto): Promise<{ debugCode?: string | undefined; success: boolean; message: string; expiresAt: Date; }>; private exposesDebugCode; verifyOtp(dto: VerifyOtpDto): Promise<{ accessToken: string; user: { id: string; firstName: string; lastName: string; phone: string; nationalId: string | undefined; createdAt: string; }; }>; adminLogin(dto: AdminLoginDto): Promise<{ accessToken: string; user: { id: string; fullName: string; phone: string; email: string; role: import("@prisma/client").$Enums.AdminRole; }; }>; me(userId: string, type: 'customer' | 'admin'): Promise<{ id: string; firstName: string; lastName: string; phone: string; nationalId: string | undefined; createdAt: string; } | { id: string; fullName: string; phone: string; email: string; role: import("@prisma/client").$Enums.AdminRole; }>; updateProfile(userId: string, dto: UpdateProfileDto): Promise<{ id: string; firstName: string; lastName: string; phone: string; nationalId: string | undefined; createdAt: string; }>; private signCustomerToken; private mapCustomer; }