export interface ClientParams {
    url: string;
    debug?: boolean | undefined;
    domain: string,
    token: string;
}

interface EmailAddress {
    address: string;
    name: string;
}

interface CcBccItem {
    email_address: EmailAddress;
}

interface MimeHeader {
    [key: string]: string;
}

export interface TemplateQueryParams {
    to: string;
    from: string;
    subject: string;
    mail_template_key: string;
    template_alias: string;
    template_key: string;
    reply_to: EmailAddress[];
    textbody: string;
    htmlbody: htmlbody;
    cc: CcBccItem[];
    bcc: CcBccItem[];
    track_clicks: boolean;
    track_opens: boolean;
    client_reference: string;
    mime_headers: MimeHeader;
}

export interface SendMailParams {
    options: TemplateQueryParams;
    isTemplate?: boolean;
}