- HERENCIA-SIMCO.md actualizado con directivas v3.7 y v3.8 - Actualizaciones de configuracion Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
43 lines
1.3 KiB
TypeScript
43 lines
1.3 KiB
TypeScript
import { OnModuleInit } from '@nestjs/common';
|
|
import { ConfigService } from '@nestjs/config';
|
|
import { SendEmailDto, SendTemplateEmailDto } from '../dto';
|
|
export type EmailProvider = 'sendgrid' | 'ses' | 'smtp';
|
|
export interface EmailResult {
|
|
success: boolean;
|
|
messageId?: string;
|
|
provider: EmailProvider;
|
|
error?: string;
|
|
}
|
|
export declare class EmailService implements OnModuleInit {
|
|
private configService;
|
|
private readonly logger;
|
|
private provider;
|
|
private isConfigured;
|
|
private sendgridApiKey;
|
|
private sesRegion;
|
|
private sesAccessKeyId;
|
|
private sesSecretAccessKey;
|
|
private smtpHost;
|
|
private smtpPort;
|
|
private smtpUser;
|
|
private smtpPassword;
|
|
private smtpSecure;
|
|
private fromEmail;
|
|
private fromName;
|
|
private replyTo;
|
|
constructor(configService: ConfigService);
|
|
onModuleInit(): void;
|
|
private checkConfiguration;
|
|
sendEmail(dto: SendEmailDto): Promise<EmailResult>;
|
|
sendTemplateEmail(dto: SendTemplateEmailDto): Promise<EmailResult>;
|
|
sendBulkEmails(emails: SendEmailDto[]): Promise<EmailResult[]>;
|
|
private sendViaSendGrid;
|
|
private sendViaSES;
|
|
private sendViaSMTP;
|
|
private getTemplate;
|
|
private renderTemplate;
|
|
private logEmail;
|
|
isEnabled(): boolean;
|
|
getProvider(): EmailProvider;
|
|
}
|