interface EmailAccount {
    id: string;
    address: string;
    quota: number;
    used: number;
    isDisabled: boolean;
    isDeleted: boolean;
    createdAt: string;
    updatedAt: string;
}
interface ListOfDomains {
    id: string;
    domain: string;
    isActive: boolean;
    isPrivate: boolean;
    createdAt: string;
    updatedAt: string;
}
interface Address {
    address: string;
    name: string;
}
interface EmailObject {
    id: string;
    msgid: string;
    from: Address;
    to: Address[];
    subject: string;
    intro: string;
    seen: boolean;
    isDeleted: boolean;
    hasAttachments: boolean;
    size: number;
    downloadUrl: string;
    sourceUrl: string;
    createdAt: string;
    updatedAt: string;
    accountId: string;
}
interface Attachment {
    id: string;
    filename: string;
    contentType: string;
    disposition: string;
    transferEncoding: string;
    related: boolean;
    size: number;
    downloadUrl: string;
}
interface EmailResource {
    id: string;
    msgid: string;
    from: Address;
    to: Address[];
    cc: Address[];
    bcc: Address[];
    subject: string;
    intro: string;
    seen: boolean;
    flagged: boolean;
    isDeleted: boolean;
    verifications: string[];
    retention: boolean;
    retentionDate: string;
    text: string;
    html: string[];
    hasAttachments: boolean;
    attachments: Attachment[];
    size: number;
    downloadUrl: string;
    sourceUrl: string;
    createdAt: string;
    updatedAt: string;
    accountId: string;
}
export declare const authenticate: (_email: string, _password: string) => Promise<void>;
export declare const getAuthHeaders: () => {
    accept: string;
    Authorization: string;
};
export declare const getDomains: () => Promise<ListOfDomains[]>;
export declare const getMessages: () => Promise<EmailObject[]>;
export declare const getMessagesContent: (messageId: string) => Promise<EmailResource>;
export declare const getMessageAttachments: (messageId: string, attachmentsId: string) => Promise<any>;
export declare const deleteMessage: (messageId: string) => Promise<any>;
export declare const createAccount: (payload: {
    address: string;
    password: string;
}, maxRetries?: number, delayMs?: number, infiniteRetry?: boolean) => Promise<EmailAccount>;
export declare const deleteAccount: (accountId: string) => Promise<void>;
export {};
//# sourceMappingURL=api.d.ts.map