import { S as SendingResponse, a as SendingError } from '../../sending-response.class-jcz9XNg-.js'; import { H as HttpTransporter, a as HttpSuccess, b as HttpFailure } from '../../http.transporter-BEFIRyuY.js'; import { I as IMail } from '../../transporter.class-CL44h5Um.js'; import { I as IAddress } from '../../IAddress.interface-BQ5AHjS7.js'; import { c as IAttachment, d as IAddressable } from '../../IPayload.interface-hep6I5JJ.js'; interface ISendgridPersonalization { to: IAddress[]; cc?: IAddress[]; bcc?: IAddress[]; } interface ISendgridBody { from: IAddress; personalizations: ISendgridPersonalization[]; reply_to: IAddress; subject: string; content?: Array<{ type: string; value: string; }>; template_id?: string; substitutions?: Record; attachments?: IAttachment[]; mail_settings?: { sandbox_mode: { enable: boolean; }; }; } interface ISendgridErrorDetail { message: string; field?: string | null; help?: string; } interface ISendgridError { errors: ISendgridErrorDetail[]; } declare class SendgridTransporter extends HttpTransporter { build({ ...args }: IMail): ISendgridBody; address(recipient: string | IAddressable): IAddress; addresses(recipients: Array): Array; send(body: ISendgridBody): Promise; response(result: HttpSuccess): SendingResponse; error(error: HttpFailure): SendingError; } export { SendgridTransporter };