import { ILogger } from '@loopx/core'; import { AuthClient, UserRepository } from '@loopx/user-core'; import { OtpResponse } from '../modules/auth'; import { OtpFn } from '../providers'; import { OtpCacheRepository } from '../repositories'; import { IOtpRequest } from '../types'; export declare class OtpService { private readonly otpCacheRepo; userRepository: UserRepository; private readonly otpSender; private readonly logger; constructor(otpCacheRepo: OtpCacheRepository, userRepository: UserRepository, otpSender: OtpFn, logger: ILogger); sendOtp(request: IOtpRequest | string, client?: AuthClient): Promise; }