import { SendMailOptions, TransportOptions } from 'nodemailer';
import { MailerInferCreateTransport, AnyTransport } from './types';
export * from 'nodemailer';
export * from './types';
export declare class Service<T extends AnyTransport = AnyTransport, Defaults extends Parameters<MailerInferCreateTransport<T>>[1] = Parameters<MailerInferCreateTransport<T>>[1]> {
    transporter: ReturnType<MailerInferCreateTransport<T>>;
    constructor(transport: T, defaults?: Defaults);
    _create(body: SendMailOptions, _params?: any): Promise<import("nodemailer/lib/smtp-transport").SentMessageInfo>;
    create(body: SendMailOptions, params?: any): Promise<import("nodemailer/lib/smtp-transport").SentMessageInfo>;
}
export default function init<T extends AnyTransport = AnyTransport, Defaults extends Parameters<MailerInferCreateTransport<T>>[1] = TransportOptions>(transport: T, defaults?: Defaults): Service<T, Defaults>;
