From 9b2bc33eb53b7a2e6a74192254a10fd0fa6151d2 Mon Sep 17 00:00:00 2001 From: davetayls Date: Wed, 1 Apr 2015 13:46:19 +0100 Subject: [PATCH] add cordova-plugin-email-composer definition --- .../cordova-plugin-email-composer-tests.ts | 19 +++++++++++ .../cordova-plugin-email-composer.d.ts | 33 +++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 cordova-plugin-email-composer/cordova-plugin-email-composer-tests.ts create mode 100644 cordova-plugin-email-composer/cordova-plugin-email-composer.d.ts diff --git a/cordova-plugin-email-composer/cordova-plugin-email-composer-tests.ts b/cordova-plugin-email-composer/cordova-plugin-email-composer-tests.ts new file mode 100644 index 0000000000..ccd1e725d4 --- /dev/null +++ b/cordova-plugin-email-composer/cordova-plugin-email-composer-tests.ts @@ -0,0 +1,19 @@ +/// +/// + +cordova.plugins.email.isAvailable((isAvailable) => {}, {}); +cordova.plugins.email.open({ + to: ['foo@bar.com'], + body: 'foo bar' +}); +cordova.plugins.email.open(); +cordova.plugins.email.open({}, () => {}); +cordova.plugins.email.open({}, () => {}, {}); + +cordova.plugins.email.openDraft({ + to: ['foo@bar.com'], + body: 'foo bar' +}); +cordova.plugins.email.openDraft(); +cordova.plugins.email.openDraft({}, () => {}); +cordova.plugins.email.openDraft({}, () => {}, {}); diff --git a/cordova-plugin-email-composer/cordova-plugin-email-composer.d.ts b/cordova-plugin-email-composer/cordova-plugin-email-composer.d.ts new file mode 100644 index 0000000000..9472ccf356 --- /dev/null +++ b/cordova-plugin-email-composer/cordova-plugin-email-composer.d.ts @@ -0,0 +1,33 @@ +// Type definitions for Apache Cordova Email Composer plugin +// Project: https://github.com/katzer/cordova-plugin-email-composer +// Definitions by: Dave Taylor +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/** + * The plugin provides access to the standard interface that manages the + * editing and sending an email message + */ +interface CordovaPluginEmailComposer { + /** Determine if the device is capable to send emails */ + isAvailable(callback:(isAvailable:boolean) => void, scope?:any):void; + /** Open a pre-filled email draft */ + open(options?:ICordovaPluginEmailComposerOpenOptions, callback?:() => void, scope?:any):void; + openDraft(options?:ICordovaPluginEmailComposerOpenOptions, callback?:() => void, scope?:any):void; +} + +interface ICordovaPluginEmailComposerOpenOptions { + /** An configured email account is required to send emails */ + to?:string[]; + body?:string; + cc?:string[]; + bcc?:string[]; + /** Attachments can be either base64 encoded datas, files from the the device storage or assets from within the www folder */ + attachments?:any[]; + subject?:string; + /** The default value for isHTML is true */ + isHtml?:boolean; +} + +interface CordovaPlugins { + email:CordovaPluginEmailComposer; +}