Add definition for "email-templates".

Update definition for "helmet".
This commit is contained in:
Cyril Schumacher
2015-11-22 14:59:47 +01:00
parent fa04c80f4a
commit ca7293c5ae
4 changed files with 161 additions and 58 deletions
+26
View File
@@ -0,0 +1,26 @@
///<reference path="email-templates.d.ts"/>
import EmailTemplates = require('email-templates');
var EmailTemplate = EmailTemplates.EmailTemplate;
var template = new EmailTemplate("./");
var users = [
{
email: 'pappa.pizza@spaghetti.com',
name: {
first: 'Pappa',
last: 'Pizza'
}
},
{
email: 'mister.geppetto@spaghetti.com',
name: {
first: 'Mister',
last: 'Geppetto'
}
}
]
var templates = users.map(function(user) {
return template.render(user);
})
+54
View File
@@ -0,0 +1,54 @@
// Type definitions for node-email-templates
// Project: https://github.com/niftylettuce/node-email-templates
// Definitions by: Cyril Schumacher <https://github.com/cyrilschumacher>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
/**
* @summary Interface for result of email template.
* @interface
*/
interface EmailTemplateResults {
/**
* @summary HTML result.
* @type {string}
*/
html: string;
/**
* @summary Text result.
* @type {string}
*/
text: string;
}
/**
* @summary Interface for callback of email callback.
* @interface
*/
interface EmailTemplateCallback {
/**
* @summary Callback signature.
*/
(err: Object, results: EmailTemplateResults): void;
}
declare module "email-templates" {
/**
* @summary Email template class.
* @class
*/
export class EmailTemplate {
/**
* @summary Constructor.
* @param {string} templateDir The template directory.
*/
constructor(templateDir: string);
/**
* @summary Render a single template.
* @param {EmailTemplateCallback|Object} locals The variables or callback function.
* @param {EmailTemplateCallback} callback The callback function.
*/
render(locals: EmailTemplateCallback|Object, callback?: EmailTemplateCallback): void;
}
}