import { Repository } from 'typeorm';
import { NestAuthUser } from '../../user/entities/user.entity';
import { EventEmitter2 } from '@nestjs/event-emitter';
import { DebugLoggerService } from '../../core/services/debug-logger.service';
import { OtpFlowService } from './otp-flow.service';
import { NestAuthSendEmailVerificationRequestDto } from '../dto/requests/send-email-verification.request.dto';
import { NestAuthVerifyEmailRequestDto } from '../dto/requests/verify-email.request.dto';
import { NestAuthSendPhoneVerificationRequestDto } from '../dto/requests/send-phone-verification.request.dto';
import { NestAuthVerifyPhoneRequestDto } from '../dto/requests/verify-phone.request.dto';
import { AuthConfigService } from '../../core/services/auth-config.service';
export declare class VerificationService {
    private readonly userRepository;
    private readonly eventEmitter;
    private readonly debugLogger;
    private readonly authConfigService;
    private readonly otpFlow;
    constructor(userRepository: Repository<NestAuthUser>, eventEmitter: EventEmitter2, debugLogger: DebugLoggerService, authConfigService: AuthConfigService, otpFlow: OtpFlowService);
    private handleError;
    private requireAuthenticatedUser;
    sendEmailVerification(_input: NestAuthSendEmailVerificationRequestDto): Promise<{
        message: string;
    }>;
    verifyEmail(input: NestAuthVerifyEmailRequestDto): Promise<{
        message: string;
    }>;
    sendPhoneVerification(_input: NestAuthSendPhoneVerificationRequestDto): Promise<{
        message: string;
    }>;
    verifyPhone(input: NestAuthVerifyPhoneRequestDto): Promise<{
        message: string;
    }>;
}
//# sourceMappingURL=verification.service.d.ts.map