UNPKG

@tanayvk/mailer

Version:

@adonisjs/mail without @adonisjs/core dependency.

25 lines (24 loc) 1.56 kB
import { MailerConfig, MailManagerTransportFactory, ConfigProvider } from './types.js'; import { MailManager } from './mail_manager.js'; import { Constructor, Listener } from './emitter_type.js'; export declare class Emitter<EventsList extends Record<string | symbol | number, any>> { on<Event extends Constructor<any>>(event: Event, listener: Listener<InstanceType<Event>, any>): void; on<Name extends keyof EventsList>(event: Name, listener: Listener<EventsList[Name], any>): void; off<Event extends Constructor<any>>(event: Event, listener: Listener<InstanceType<Event>, any>): void; off<Name extends keyof EventsList>(event: Name, listener: Listener<EventsList[Name], any>): void; emit<Event extends Constructor<any>>(event: Event, data: InstanceType<Event>): Promise<void>; emit<Name extends keyof EventsList>(event: Name, data: EventsList[Name]): Promise<void>; emitSerial<Event extends Constructor<any>>(event: Event, data: InstanceType<Event>): Promise<void>; emitSerial<Name extends keyof EventsList>(event: Name, data: EventsList[Name]): Promise<void>; listenerCount(_event?: keyof EventsList | Constructor<any>): number; hasListeners(_event?: keyof EventsList | Constructor<any>): boolean; } declare const generateMailer: (config: MailerConfig & { default?: string | undefined; mailers: { [x: string]: MailManagerTransportFactory | ConfigProvider<MailManagerTransportFactory>; }; }) => Promise<MailManager<{ [x: string]: MailManagerTransportFactory; }>>; export { generateMailer };