@serve.zone/interfaces
Version:
interfaces for working with containers
56 lines (55 loc) • 1.74 kB
TypeScript
import * as plugins from '../plugins.js';
export type TTemplates = 'default' | 'linkaction' | 'notification';
export interface IReq_SendEmail extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IReq_SendEmail> {
method: 'sendEmail';
request: {
title: string;
from: string;
to: string;
body: string;
attachments?: Array<{
name: string;
binaryAttachmentString: string;
}>;
};
response: {
/**
* the response id allows for handling of responses to that email
*/
responseId: string;
};
}
export interface IReq_RegisterRecipient extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IReq_RegisterRecipient> {
method: 'registerRecepient';
request: {
emailAddress: string;
};
response: {
status: 'ok' | 'not ok';
};
}
export interface IReq_CheckEmailStatus extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IReq_CheckEmailStatus> {
method: 'checkEmailStatus';
request: {
emailId: string;
};
response: {
status: string;
details?: {
message: string;
};
};
}
export interface IReq_GetEMailStats extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IReq_GetEMailStats> {
method: 'getEmailStats';
request: {
jwt: string;
};
response: {
totalEmailsSent: number;
totalEmailsDelivered: number;
totalEmailsBounced: number;
averageDeliveryTimeMs: number;
lastUpdated: string;
};
}