@wepublish/api
Version:
API core for we.publish.
27 lines (26 loc) • 1.19 kB
TypeScript
import mailchimp from '@mailchimp/mailchimp_transactional';
import { MailLogStatus, MailProviderTemplate, SendMailProps, WebhookForSendMailProps, WithExternalId } from './mail-provider.interface';
import { BaseMailProvider, MailProviderProps } from './base-mail-provider';
export interface MailchimpMailProviderProps extends MailProviderProps {
readonly apiKey: string;
readonly baseURL: string;
readonly webhookEndpointSecret: string;
readonly fromAddress: string;
}
interface VerifyWebhookSignatureProps {
signature: string;
url: string;
params: Record<string, any>;
}
export declare class MailchimpMailProvider extends BaseMailProvider {
readonly webhookEndpointSecret: string;
readonly mailchimpClient: mailchimp.ApiClient;
constructor(props: MailchimpMailProviderProps);
verifyWebhookSignature({ signature, url, params }: VerifyWebhookSignatureProps): boolean;
webhookForSendMail({ req }: WebhookForSendMailProps): Promise<MailLogStatus[]>;
sendMail(props: SendMailProps): Promise<void>;
getTemplates(): Promise<MailProviderTemplate[]>;
getTemplateUrl(template: WithExternalId): string;
private responseIsError;
}
export {};