import SMTP2GOService from "./service"; import { RequestBody } from "./types/requestBody"; import { Address } from "./types/address"; import { AddressCollection } from "./types/addressCollection"; import { AddressType } from "./types/addressType"; import { Attachment } from "./types/attachment"; import { AttachmentCollection } from "./types/attachmentCollection"; import { Header } from "./types/header"; import { HeaderCollection } from "./types/headerCollection"; export default abstract class mailService extends SMTP2GOService { htmlBody?: string; textBody?: string; fromAddress?: Address; toAddress: AddressCollection; ccAddress: AddressCollection; bccAddress: AddressCollection; subjectLine?: string; templateId?: string; templateData?: Map; customHeaders: HeaderCollection; attachments: AttachmentCollection; inlines: AttachmentCollection; constructor(); abstract attach(attachment: Attachment | AttachmentCollection | string | File): this; abstract inline(cid: string, filepath: string | File): this; addAddress(address: Address, type?: AddressType): this; html(content: string): this; text(content: string): this; from(from: Address): this; template(templateId: string, templateData: Map): this; to(toAddress: Address | AddressCollection): this; cc(toAddress: Address | AddressCollection): this; bcc(toAddress: Address | AddressCollection): this; _addAddressOfType(emailAddress: Address | AddressCollection, t: AddressType): this; headers(header: Header | HeaderCollection): this; subject(subject: string): this; getFormattedAddresses(type: AddressType): Array; formatAddress(address: Address): string; buildRequestBody(): Promise; }