import { Logger } from '@nestjs/common'; import { ReturnModelType } from '@typegoose/typegoose'; import { VerifierModel } from '../verifier.model'; import { VERIFIER_TYPE } from './base-verifier.interface'; import { PhoneVerifierSendDto, PhoneVerifierVerifyDto } from '../phone/phone-verifier.interface'; import { EmailVerifierSendDto, EmailVerifierVerifyDto } from '../email/email-verifier.interface'; export declare abstract class BaseVerifierService { protected readonly verifierModel: ReturnModelType; protected abstract readonly logger: Logger; constructor(verifierModel: ReturnModelType); protected abstract type: VERIFIER_TYPE; abstract send(dto: PhoneVerifierSendDto | EmailVerifierSendDto): Promise; abstract verify(dto: PhoneVerifierVerifyDto | EmailVerifierVerifyDto): Promise; }