import type { ApplicationService } from '@adonisjs/core/types';
import type { MailEvents, MailService } from '../src/types.js';
/**
 * Extended types
 */
declare module '@adonisjs/core/types' {
    interface ContainerBindings {
        'mail.manager': MailService;
    }
    interface EventsList extends MailEvents {
    }
}
/**
 * Mail provider to register mail manager with the container
 */
export default class MailProvider {
    protected app: ApplicationService;
    constructor(app: ApplicationService);
    /**
     * Defines the template engine on the message class to
     * render templates
     */
    protected defineTemplateEngine(): Promise<void>;
    /**
     * Registering bindings to container
     */
    register(): void;
    /**
     * Invoked automatically when the app is booting
     */
    boot(): Promise<void>;
    /**
     * Cleanup hook
     */
    shutdown(): Promise<void>;
}
