UNPKG

notification-service-sdk

Version:

A Node.js notification service SDK supporting email and SMS providers

105 lines 2.14 kB
/** * 通知服务的基础配置接口 */ export interface BaseConfig { debug?: boolean; } /** * 邮件配置接口 */ export interface EmailConfig extends BaseConfig { host: string; port: number; secure: boolean; auth: { user: string; pass: string; }; } export interface LarkConfig extends BaseConfig { notifyUrl: string; } /** * 阿里云短信配置接口 */ export interface AliSmsConfig extends BaseConfig { accessKeyId: string; accessKeySecret: string; signName: string; } /** * 火山引擎短信配置接口 */ export interface VolcSmsConfig extends BaseConfig { accessKeyId: string; accessKeySecret: string; signName: string; region?: string; } /** * 华为云短信配置接口 */ export interface HuaweiSmsConfig extends BaseConfig { endpoint: string; accessKeyId: string; accessKeySecret: string; signName: string; sender: string; } /** * 邮件消息接口 */ export interface EmailMessage { from?: string; to: string | string[]; subject: string; text?: string; html?: string; } /** * 短信消息基础接口 */ export interface BaseSmsMessage { phoneNumbers: string | string[]; templateId: string; templateParams?: Record<string, string>; statusCallBack?: string; signature?: string; tag?: string; } export interface LarkMessage { card: { config: object; header: object; elements: object[]; }; msg_type: string; receive_id?: number; } /** * 通知发送结果接口 */ export interface SendResult { success: boolean; messageId?: string; error?: Error; } /** * 通知提供者接口 */ export interface NotificationProvider { /** * 发送通知 * @param message 消息内容 * @returns 发送结果 */ send(message: EmailMessage | BaseSmsMessage): Promise<SendResult>; } /** * 通知服务错误类 */ export declare class NotificationError extends Error { code?: string | undefined; constructor(message: string, code?: string | undefined); } //# sourceMappingURL=index.d.ts.map