import { EmailOptions, EmailResponse } from './email-options.interface';
import { EmailRequest } from './email-request.interface';

export interface IEmailService {
  sendEmail(request: EmailRequest): Promise<EmailResponse>;
  sendEmailLegacy(options: EmailOptions): Promise<EmailResponse>;
  sendPlainText(
    to: EmailOptions['to'],
    subject: string,
    text: string,
    options?: Partial<EmailOptions>
  ): Promise<EmailResponse>;
  sendHtml(
    to: EmailOptions['to'],
    subject: string,
    html: string,
    options?: Partial<EmailOptions>
  ): Promise<EmailResponse>;
  verifyConnection(): Promise<boolean>;
}
