export default class Emailservice { private static instance; private adapters; private constructor(); static getService(): Emailservice; sendEmail(emailRequest: EmailRequest, emailProvider?: EmailProvider): Promise; } export interface EmailServiceAdapter { sendEmail(emailRequest: EmailRequest): Promise; getProvider(): string; } export declare class SendGridServiceAdapter implements EmailServiceAdapter { private static instance; private constructor(); static getAdapter(): SendGridServiceAdapter; sendEmail(emailRequest: EmailRequest): Promise; getProvider(): string; } export interface EmailRequest { from: string; to: string[]; templateId?: string; subject?: string; text?: string; html?: string; params?: any; replyTo?: string; attachments?: any; } export declare class EmailResponse { status: EmailStatus; message: string; } export declare enum EmailStatus { OK = "OK", FAILED = "FAILED", PENDING = "PENDING" } export declare type EmailProvider = 'string';