import { EmailDeliveryStatus, EmailLog } from '../entities/email-log.entity';
import { EmailVerificationType } from '../entities/email-verification.entity';

export interface IEmailLogRepository {
  create(data: {
    email: string;
    type: EmailVerificationType;
    status: EmailDeliveryStatus;
    provider?: string;
    providerId?: string;
    errorMsg?: string;
    userId?: string;
  }): Promise<EmailLog>;
}

export const EMAIL_LOG_REPOSITORY = Symbol('IEmailLogRepository');
