mailgun.js 5.0.1 → 5.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +15 -3
  3. package/client.d.ts +29 -0
  4. package/domains.d.ts +53 -0
  5. package/domainsCredentials.d.ts +14 -0
  6. package/domainsTags.d.ts +34 -0
  7. package/domainsTemplates.d.ts +35 -0
  8. package/error.d.ts +7 -0
  9. package/events.d.ts +13 -0
  10. package/index.d.ts +9 -0
  11. package/interfaces/APIErrorOptions.d.ts +11 -0
  12. package/{lib/interfaces/ApiResponse.ts → interfaces/ApiResponse.d.ts} +1 -2
  13. package/{lib/interfaces/DomainCredentials.ts → interfaces/DomainCredentials.d.ts} +14 -30
  14. package/{lib/interfaces/DomainTags.ts → interfaces/DomainTags.d.ts} +49 -83
  15. package/{lib/interfaces/DomainTemplates.ts → interfaces/DomainTemplates.d.ts} +35 -79
  16. package/{lib/interfaces/DomainTracking.ts → interfaces/DomainTracking.d.ts} +18 -17
  17. package/{lib/interfaces/Domains.ts → interfaces/Domains.d.ts} +32 -53
  18. package/{lib/interfaces/Events.ts → interfaces/Events.d.ts} +11 -12
  19. package/interfaces/IFormData.d.ts +7 -0
  20. package/interfaces/IMailgunClient.d.ts +24 -0
  21. package/interfaces/IpPools.d.ts +19 -0
  22. package/interfaces/Ips.d.ts +10 -0
  23. package/{lib/interfaces/MultipleValidation.ts → interfaces/MultipleValidation.d.ts} +9 -16
  24. package/interfaces/Options.d.ts +8 -0
  25. package/{lib/interfaces/RequestOptions.ts → interfaces/RequestOptions.d.ts} +2 -4
  26. package/interfaces/StatsOptions.d.ts +22 -0
  27. package/interfaces/Supressions.d.ts +103 -0
  28. package/{lib/interfaces/Validate.ts → interfaces/Validate.d.ts} +0 -3
  29. package/{lib/interfaces/Webhooks.ts → interfaces/Webhooks.d.ts} +11 -17
  30. package/{lib/interfaces/lists.ts → interfaces/lists.d.ts} +1 -5
  31. package/{lib/interfaces/mailListMembers.ts → interfaces/mailListMembers.d.ts} +8 -23
  32. package/{lib/interfaces/routes.ts → interfaces/routes.d.ts} +1 -6
  33. package/ip-pools.d.ts +21 -0
  34. package/ips.d.ts +9 -0
  35. package/lists.d.ts +14 -0
  36. package/mailListMembers.d.ts +14 -0
  37. package/mailgun.node.js +3 -0
  38. package/{dist/mailgun.node.js.LICENSE.txt → mailgun.node.js.LICENSE.txt} +1 -1
  39. package/mailgun.web.js +3 -0
  40. package/{dist/mailgun.web.js.LICENSE.txt → mailgun.web.js.LICENSE.txt} +1 -3
  41. package/messages.d.ts +9 -0
  42. package/multipleValidation.d.ts +10 -0
  43. package/package.json +9 -83
  44. package/request.d.ts +31 -0
  45. package/routes.d.ts +11 -0
  46. package/stats.d.ts +20 -0
  47. package/suppressions.d.ts +50 -0
  48. package/validate.d.ts +9 -0
  49. package/version.md +1 -0
  50. package/webhooks.d.ts +32 -0
  51. package/.editorconfig +0 -10
  52. package/.eslintrc +0 -56
  53. package/.husky/commit-msg +0 -4
  54. package/.travis.yml +0 -5
  55. package/LICENSE +0 -191
  56. package/commitlint.config.js +0 -7
  57. package/dist/mailgun.js.d.ts +0 -1572
  58. package/dist/mailgun.node.js +0 -3
  59. package/dist/mailgun.web.js +0 -3
  60. package/docs/.nojekyll +0 -1
  61. package/docs/assets/highlight.css +0 -127
  62. package/docs/assets/icons.css +0 -1043
  63. package/docs/assets/icons.png +0 -0
  64. package/docs/assets/icons@2x.png +0 -0
  65. package/docs/assets/main.js +0 -52
  66. package/docs/assets/search.js +0 -1
  67. package/docs/assets/style.css +0 -1413
  68. package/docs/assets/widgets.png +0 -0
  69. package/docs/assets/widgets@2x.png +0 -0
  70. package/docs/classes/client.default.html +0 -1
  71. package/docs/classes/domains.Domain.html +0 -1
  72. package/docs/classes/domains.default.html +0 -1
  73. package/docs/classes/domainsCredentials.default.html +0 -1
  74. package/docs/classes/domainsTemplates.DomainTemplateItem.html +0 -1
  75. package/docs/classes/domainsTemplates.default.html +0 -1
  76. package/docs/classes/error.default.html +0 -6
  77. package/docs/classes/events.default.html +0 -1
  78. package/docs/classes/ip_pools.default.html +0 -1
  79. package/docs/classes/ips.default.html +0 -1
  80. package/docs/classes/lists.default.html +0 -1
  81. package/docs/classes/mailListMembers.default.html +0 -1
  82. package/docs/classes/messages.default.html +0 -1
  83. package/docs/classes/multipleValidation.default.html +0 -1
  84. package/docs/classes/request.default.html +0 -1
  85. package/docs/classes/routes.default.html +0 -1
  86. package/docs/classes/stats.default.html +0 -1
  87. package/docs/classes/suppressions.default.html +0 -1
  88. package/docs/classes/validate.default.html +0 -1
  89. package/docs/classes/webhooks.default.html +0 -1
  90. package/docs/enums/interfaces_DomainTemplates.Pages.html +0 -1
  91. package/docs/enums/interfaces_DomainTemplates.YesNo.html +0 -1
  92. package/docs/index.html +0 -1140
  93. package/docs/interfaces/interfaces_APIErrorOptions.default.html +0 -1
  94. package/docs/interfaces/interfaces_ApiResponse.default.html +0 -1
  95. package/docs/interfaces/interfaces_DomainCredentials.CreatedUpdatedDomainCredentialsResponse.html +0 -1
  96. package/docs/interfaces/interfaces_DomainCredentials.DeletedDomainCredentialsResponse.html +0 -1
  97. package/docs/interfaces/interfaces_DomainCredentials.DomainCredentials.html +0 -1
  98. package/docs/interfaces/interfaces_DomainCredentials.DomainCredentialsItem.html +0 -1
  99. package/docs/interfaces/interfaces_DomainCredentials.DomainCredentialsList.html +0 -1
  100. package/docs/interfaces/interfaces_DomainCredentials.DomainCredentialsQuery.html +0 -1
  101. package/docs/interfaces/interfaces_DomainCredentials.DomainCredentialsResponseData.html +0 -1
  102. package/docs/interfaces/interfaces_DomainCredentials.DomainCredentialsResult.html +0 -1
  103. package/docs/interfaces/interfaces_DomainCredentials.IDomainCredentials.html +0 -1
  104. package/docs/interfaces/interfaces_DomainCredentials.UpdateDomainCredentialsData.html +0 -1
  105. package/docs/interfaces/interfaces_DomainTemplates.CreateDomainTemplateAPIResponse.html +0 -1
  106. package/docs/interfaces/interfaces_DomainTemplates.CreateDomainTemplateVersionAPIResponse.html +0 -1
  107. package/docs/interfaces/interfaces_DomainTemplates.CreateDomainTemplateVersionResult.html +0 -1
  108. package/docs/interfaces/interfaces_DomainTemplates.DomainTemplate.html +0 -1
  109. package/docs/interfaces/interfaces_DomainTemplates.DomainTemplateData.html +0 -1
  110. package/docs/interfaces/interfaces_DomainTemplates.DomainTemplateUpdateData.html +0 -1
  111. package/docs/interfaces/interfaces_DomainTemplates.DomainTemplateUpdateVersionData.html +0 -1
  112. package/docs/interfaces/interfaces_DomainTemplates.DomainTemplateVersionData.html +0 -1
  113. package/docs/interfaces/interfaces_DomainTemplates.DomainTemplatesQuery.html +0 -1
  114. package/docs/interfaces/interfaces_DomainTemplates.GetDomainTemplateAPIResponse.html +0 -1
  115. package/docs/interfaces/interfaces_DomainTemplates.IDomainTemplatesClient.html +0 -1
  116. package/docs/interfaces/interfaces_DomainTemplates.ListDomainTemplateVersionsAPIResponse.html +0 -1
  117. package/docs/interfaces/interfaces_DomainTemplates.ListDomainTemplateVersionsResult.html +0 -1
  118. package/docs/interfaces/interfaces_DomainTemplates.ListDomainTemplatesAPIResponse.html +0 -1
  119. package/docs/interfaces/interfaces_DomainTemplates.ListDomainTemplatesResult.html +0 -1
  120. package/docs/interfaces/interfaces_DomainTemplates.MutateDomainTemplateVersionAPIResponse.html +0 -1
  121. package/docs/interfaces/interfaces_DomainTemplates.MutateDomainTemplateVersionResult.html +0 -1
  122. package/docs/interfaces/interfaces_DomainTemplates.NotificationAPIResponse.html +0 -1
  123. package/docs/interfaces/interfaces_DomainTemplates.NotificationResult.html +0 -1
  124. package/docs/interfaces/interfaces_DomainTemplates.ShortTemplateVersion.html +0 -1
  125. package/docs/interfaces/interfaces_DomainTemplates.TemplateQuery.html +0 -1
  126. package/docs/interfaces/interfaces_DomainTemplates.TemplateVersion.html +0 -1
  127. package/docs/interfaces/interfaces_DomainTemplates.UpdateOrDeleteDomainTemplateAPIResponse.html +0 -1
  128. package/docs/interfaces/interfaces_DomainTemplates.UpdateOrDeleteDomainTemplateResult.html +0 -1
  129. package/docs/interfaces/interfaces_DomainTracking.ClickTrackingInfo.html +0 -1
  130. package/docs/interfaces/interfaces_DomainTracking.DomainTrackingData.html +0 -1
  131. package/docs/interfaces/interfaces_DomainTracking.DomainTrackingResponse.html +0 -1
  132. package/docs/interfaces/interfaces_DomainTracking.OpenTrackingInfo.html +0 -1
  133. package/docs/interfaces/interfaces_DomainTracking.UnsubscribeTrackingInfo.html +0 -1
  134. package/docs/interfaces/interfaces_DomainTracking.UpdateDomainTrackingResponse.html +0 -1
  135. package/docs/interfaces/interfaces_DomainTracking.UpdatedOpenTracking.html +0 -1
  136. package/docs/interfaces/interfaces_Domains.ConnectionSettings.html +0 -1
  137. package/docs/interfaces/interfaces_Domains.ConnectionSettingsResponse.html +0 -1
  138. package/docs/interfaces/interfaces_Domains.DKIMAuthorityInfo.html +0 -1
  139. package/docs/interfaces/interfaces_Domains.DKIMSelectorInfo.html +0 -1
  140. package/docs/interfaces/interfaces_Domains.DNSRecord.html +0 -1
  141. package/docs/interfaces/interfaces_Domains.DestroyedDomainResponse.html +0 -1
  142. package/docs/interfaces/interfaces_Domains.DomainData.html +0 -1
  143. package/docs/interfaces/interfaces_Domains.DomainInfo.html +0 -1
  144. package/docs/interfaces/interfaces_Domains.DomainListResponseData.html +0 -1
  145. package/docs/interfaces/interfaces_Domains.DomainResponseData.html +0 -1
  146. package/docs/interfaces/interfaces_Domains.DomainShortData.html +0 -1
  147. package/docs/interfaces/interfaces_Domains.DomainsListItem.html +0 -1
  148. package/docs/interfaces/interfaces_Domains.DomainsQuery.html +0 -1
  149. package/docs/interfaces/interfaces_Domains.MessageResponse.html +0 -1
  150. package/docs/interfaces/interfaces_Domains.ReplacementForPool.html +0 -1
  151. package/docs/interfaces/interfaces_Domains.UpdatedConnectionSettings.html +0 -1
  152. package/docs/interfaces/interfaces_Domains.UpdatedConnectionSettingsRes.html +0 -1
  153. package/docs/interfaces/interfaces_Domains.UpdatedDKIMAuthority.html +0 -1
  154. package/docs/interfaces/interfaces_Domains.UpdatedDKIMAuthorityResponse.html +0 -1
  155. package/docs/interfaces/interfaces_Domains.UpdatedDKIMSelectorResponse.html +0 -1
  156. package/docs/interfaces/interfaces_Domains.UpdatedWebPrefix.html +0 -1
  157. package/docs/interfaces/interfaces_Domains.UpdatedWebPrefixResponse.html +0 -1
  158. package/docs/interfaces/interfaces_Domains.WebPrefixInfo.html +0 -1
  159. package/docs/interfaces/interfaces_Events.DomainEvent.html +0 -1
  160. package/docs/interfaces/interfaces_Events.EventsList.html +0 -1
  161. package/docs/interfaces/interfaces_Events.EventsPage.html +0 -1
  162. package/docs/interfaces/interfaces_Events.EventsResponse.html +0 -1
  163. package/docs/interfaces/interfaces_Events.PagesList.html +0 -1
  164. package/docs/interfaces/interfaces_Events.PagesListAccumulator.html +0 -1
  165. package/docs/interfaces/interfaces_Events.ParsedPage.html +0 -1
  166. package/docs/interfaces/interfaces_Events.ParsedPagesList.html +0 -1
  167. package/docs/interfaces/interfaces_IFormData.IFormDataOptions.html +0 -1
  168. package/docs/interfaces/interfaces_IFormData.InputFormData.html +0 -1
  169. package/docs/interfaces/interfaces_IpPools.IpPool.html +0 -1
  170. package/docs/interfaces/interfaces_IpPools.IpPoolListResponse.html +0 -1
  171. package/docs/interfaces/interfaces_IpPools.IpPoolUpdateData.html +0 -1
  172. package/docs/interfaces/interfaces_Ips.IpData.html +0 -1
  173. package/docs/interfaces/interfaces_Ips.IpsListResponseBody.html +0 -1
  174. package/docs/interfaces/interfaces_MultipleValidation.CanceledMultipleValidationJob.html +0 -1
  175. package/docs/interfaces/interfaces_MultipleValidation.CreatedMultipleValidationJob.html +0 -1
  176. package/docs/interfaces/interfaces_MultipleValidation.IMultipleValidationClient.html +0 -1
  177. package/docs/interfaces/interfaces_MultipleValidation.MultipleValidationJob.html +0 -1
  178. package/docs/interfaces/interfaces_MultipleValidation.MultipleValidationJobsListResponse.html +0 -1
  179. package/docs/interfaces/interfaces_MultipleValidation.MultipleValidationJobsListResult.html +0 -1
  180. package/docs/interfaces/interfaces_MultipleValidation.PagesList.html +0 -1
  181. package/docs/interfaces/interfaces_Options.default.html +0 -1
  182. package/docs/interfaces/interfaces_RequestOptions.default.html +0 -1
  183. package/docs/interfaces/interfaces_StatsOptions.Stat.html +0 -1
  184. package/docs/interfaces/interfaces_StatsOptions.StatsOptions.html +0 -1
  185. package/docs/interfaces/interfaces_StatsOptions.StatsQuery.html +0 -1
  186. package/docs/interfaces/interfaces_Supressions.BounceData.html +0 -1
  187. package/docs/interfaces/interfaces_Supressions.ComplaintData.html +0 -1
  188. package/docs/interfaces/interfaces_Supressions.UnsubscribeData.html +0 -1
  189. package/docs/interfaces/interfaces_Supressions.WhiteListData.html +0 -1
  190. package/docs/interfaces/interfaces_Validate.ValidationResponse.html +0 -1
  191. package/docs/interfaces/interfaces_Validate.ValidationResult.html +0 -1
  192. package/docs/interfaces/interfaces_Webhooks.APIWebhook.html +0 -1
  193. package/docs/interfaces/interfaces_Webhooks.ValidationResponse.html +0 -1
  194. package/docs/interfaces/interfaces_Webhooks.WebhookList.html +0 -1
  195. package/docs/interfaces/interfaces_Webhooks.WebhookResponse.html +0 -1
  196. package/docs/interfaces/interfaces_Webhooks.WebhookResponseBody.html +0 -1
  197. package/docs/interfaces/interfaces_Webhooks.WebhooksQuery.html +0 -1
  198. package/docs/interfaces/interfaces_lists.CreateUpdateList.html +0 -1
  199. package/docs/interfaces/interfaces_lists.DestroyedList.html +0 -1
  200. package/docs/interfaces/interfaces_lists.ListsQuery.html +0 -1
  201. package/docs/interfaces/interfaces_lists.MailingList.html +0 -1
  202. package/docs/interfaces/interfaces_mailListMembers.CreateUpdateMailListMembers.html +0 -1
  203. package/docs/interfaces/interfaces_mailListMembers.CreateUpdateMailListMembersReq.html +0 -1
  204. package/docs/interfaces/interfaces_mailListMembers.DeletedMember.html +0 -1
  205. package/docs/interfaces/interfaces_mailListMembers.IMailListsMembers.html +0 -1
  206. package/docs/interfaces/interfaces_mailListMembers.MailListMember.html +0 -1
  207. package/docs/interfaces/interfaces_mailListMembers.MailListMembersQuery.html +0 -1
  208. package/docs/interfaces/interfaces_mailListMembers.MultipleMembersData.html +0 -1
  209. package/docs/interfaces/interfaces_mailListMembers.MultipleMembersReqData.html +0 -1
  210. package/docs/interfaces/interfaces_mailListMembers.NewMultipleMembersResponse.html +0 -1
  211. package/docs/interfaces/interfaces_routes.CreateUpdateRouteData.html +0 -1
  212. package/docs/interfaces/interfaces_routes.DestroyRouteResponse.html +0 -1
  213. package/docs/interfaces/interfaces_routes.Route.html +0 -1
  214. package/docs/interfaces/interfaces_routes.RoutesListQuery.html +0 -1
  215. package/docs/interfaces/interfaces_routes.UpdateRouteResponse.html +0 -1
  216. package/docs/modules/client.html +0 -1
  217. package/docs/modules/domains.html +0 -1
  218. package/docs/modules/domainsCredentials.html +0 -1
  219. package/docs/modules/domainsTemplates.html +0 -1
  220. package/docs/modules/error.html +0 -1
  221. package/docs/modules/events.html +0 -1
  222. package/docs/modules/interfaces_APIErrorOptions.html +0 -1
  223. package/docs/modules/interfaces_ApiResponse.html +0 -1
  224. package/docs/modules/interfaces_DomainCredentials.html +0 -1
  225. package/docs/modules/interfaces_DomainTemplates.html +0 -1
  226. package/docs/modules/interfaces_DomainTracking.html +0 -1
  227. package/docs/modules/interfaces_Domains.html +0 -1
  228. package/docs/modules/interfaces_Events.html +0 -1
  229. package/docs/modules/interfaces_IFormData.html +0 -1
  230. package/docs/modules/interfaces_IpPools.html +0 -1
  231. package/docs/modules/interfaces_Ips.html +0 -1
  232. package/docs/modules/interfaces_MultipleValidation.html +0 -1
  233. package/docs/modules/interfaces_Options.html +0 -1
  234. package/docs/modules/interfaces_RequestOptions.html +0 -1
  235. package/docs/modules/interfaces_StatsOptions.html +0 -1
  236. package/docs/modules/interfaces_Supressions.html +0 -1
  237. package/docs/modules/interfaces_Validate.html +0 -1
  238. package/docs/modules/interfaces_Webhooks.html +0 -1
  239. package/docs/modules/interfaces_lists.html +0 -1
  240. package/docs/modules/interfaces_mailListMembers.html +0 -1
  241. package/docs/modules/interfaces_routes.html +0 -1
  242. package/docs/modules/ip_pools.html +0 -1
  243. package/docs/modules/ips.html +0 -1
  244. package/docs/modules/lists.html +0 -1
  245. package/docs/modules/mailListMembers.html +0 -1
  246. package/docs/modules/messages.html +0 -1
  247. package/docs/modules/multipleValidation.html +0 -1
  248. package/docs/modules/request.html +0 -1
  249. package/docs/modules/routes.html +0 -1
  250. package/docs/modules/stats.html +0 -1
  251. package/docs/modules/suppressions.html +0 -1
  252. package/docs/modules/validate.html +0 -1
  253. package/docs/modules/webhooks.html +0 -1
  254. package/docs/modules.html +0 -1
  255. package/dts-bundle.js +0 -8
  256. package/examples/addresses.js +0 -20
  257. package/examples/index.html +0 -285
  258. package/examples/list-domains.js +0 -8
  259. package/examples/mailgun.png +0 -0
  260. package/examples/rackspace.png +0 -0
  261. package/examples/send-email.js +0 -24
  262. package/lib/client.ts +0 -79
  263. package/lib/domains.ts +0 -224
  264. package/lib/domainsCredentials.ts +0 -88
  265. package/lib/domainsTags.ts +0 -165
  266. package/lib/domainsTemplates.ts +0 -235
  267. package/lib/error.ts +0 -22
  268. package/lib/events.ts +0 -54
  269. package/lib/index.ts +0 -17
  270. package/lib/interfaces/APIErrorOptions.ts +0 -10
  271. package/lib/interfaces/IFormData.ts +0 -9
  272. package/lib/interfaces/IpPools.ts +0 -22
  273. package/lib/interfaces/Ips.ts +0 -12
  274. package/lib/interfaces/Options.ts +0 -10
  275. package/lib/interfaces/StatsOptions.ts +0 -23
  276. package/lib/interfaces/Supressions.ts +0 -86
  277. package/lib/ip-pools.ts +0 -36
  278. package/lib/ips.ts +0 -24
  279. package/lib/lists.ts +0 -45
  280. package/lib/mailListMembers.ts +0 -83
  281. package/lib/messages.ts +0 -27
  282. package/lib/multipleValidation.ts +0 -37
  283. package/lib/request.ts +0 -271
  284. package/lib/routes.ts +0 -37
  285. package/lib/stats.ts +0 -62
  286. package/lib/suppressions.ts +0 -198
  287. package/lib/validate.ts +0 -20
  288. package/lib/webhooks.ts +0 -83
  289. package/test/client.test.ts +0 -96
  290. package/test/data/emailsValidation1.csv +0 -3
  291. package/test/domains.test.ts +0 -313
  292. package/test/domainsCredentials.test.ts +0 -97
  293. package/test/domainsTags.test.ts +0 -345
  294. package/test/domainsTemplates.test.ts +0 -392
  295. package/test/error.test.ts +0 -32
  296. package/test/events.test.ts +0 -104
  297. package/test/img/mailgun.png +0 -0
  298. package/test/ips.test.ts +0 -57
  299. package/test/lists.test.ts +0 -100
  300. package/test/mailListMembers.test.ts +0 -198
  301. package/test/messageAttachment.test.ts +0 -50
  302. package/test/messages.test.ts +0 -89
  303. package/test/multipleValidation.test.ts +0 -159
  304. package/test/request.test.ts +0 -103
  305. package/test/routes.test.ts +0 -136
  306. package/test/stats.test.ts +0 -90
  307. package/test/suppressions.test.ts +0 -219
  308. package/test/validate.test.ts +0 -43
  309. package/test/webhooks.test.ts +0 -112
  310. package/tsconfig.json +0 -22
  311. package/tsconfig.webpack.json +0 -10
  312. package/webpack/webpack.common.config.js +0 -47
  313. package/webpack/webpack.dev.config.js +0 -28
  314. package/webpack/webpack.release.config.js +0 -37
@@ -1,17 +1,14 @@
1
1
  import { DomainTemplateItem } from '../domainsTemplates';
2
-
3
- export enum YesNo {
4
- YES = 'yes',
5
- NO = 'no'
6
- }
7
-
8
- export enum Pages {
9
- FIRST = 'first',
10
- LAST = 'last',
11
- NEXT = 'next',
12
- PREV = 'prev'
13
- }
14
- /* eslint-disable camelcase */
2
+ export declare enum YesNo {
3
+ YES = "yes",
4
+ NO = "no"
5
+ }
6
+ export declare enum Pages {
7
+ FIRST = "first",
8
+ LAST = "last",
9
+ NEXT = "next",
10
+ PREV = "prev"
11
+ }
15
12
  export interface DomainTemplateData {
16
13
  name: string;
17
14
  description: string;
@@ -20,7 +17,6 @@ export interface DomainTemplateData {
20
17
  engine?: string;
21
18
  comment?: string;
22
19
  }
23
-
24
20
  export interface DomainTemplateVersionData {
25
21
  template: string;
26
22
  tag: string;
@@ -28,27 +24,22 @@ export interface DomainTemplateVersionData {
28
24
  comment?: string;
29
25
  active?: YesNo;
30
26
  }
31
-
32
27
  export interface DomainTemplateUpdateData {
33
28
  description: string;
34
29
  }
35
-
36
30
  export interface DomainTemplateUpdateVersionData {
37
31
  template?: string;
38
32
  comment?: string;
39
33
  active?: YesNo;
40
34
  }
41
-
42
35
  export interface DomainTemplatesQuery {
43
36
  page: Pages;
44
37
  limit: number;
45
38
  p: string;
46
39
  }
47
-
48
40
  export interface TemplateQuery {
49
41
  active: YesNo;
50
42
  }
51
-
52
43
  export interface ShortTemplateVersion {
53
44
  tag: string;
54
45
  engine: string;
@@ -58,8 +49,7 @@ export interface ShortTemplateVersion {
58
49
  active: boolean;
59
50
  id: string;
60
51
  }
61
-
62
- export interface TemplateVersion extends ShortTemplateVersion{
52
+ export interface TemplateVersion extends ShortTemplateVersion {
63
53
  template: string;
64
54
  }
65
55
  export interface DomainTemplate {
@@ -71,7 +61,6 @@ export interface DomainTemplate {
71
61
  version?: TemplateVersion;
72
62
  versions?: ShortTemplateVersion[];
73
63
  }
74
-
75
64
  export interface CreateDomainTemplateAPIResponse {
76
65
  status: number;
77
66
  body: {
@@ -79,7 +68,6 @@ export interface CreateDomainTemplateAPIResponse {
79
68
  template: DomainTemplate;
80
69
  };
81
70
  }
82
-
83
71
  export interface ListDomainTemplatesAPIResponse {
84
72
  status: number;
85
73
  body: {
@@ -92,52 +80,45 @@ export interface ListDomainTemplatesAPIResponse {
92
80
  };
93
81
  };
94
82
  }
95
-
96
83
  export interface ListDomainTemplatesResult {
97
- items: DomainTemplate[];
98
- pages: {
99
- first: string;
100
- last: string;
101
- next: string;
102
- previous: string;
103
- };
84
+ items: DomainTemplate[];
85
+ pages: {
86
+ first: string;
87
+ last: string;
88
+ next: string;
89
+ previous: string;
90
+ };
104
91
  }
105
-
106
92
  export interface GetDomainTemplateAPIResponse {
107
93
  status: number;
108
94
  body: {
109
95
  template: DomainTemplate;
110
96
  };
111
97
  }
112
-
113
98
  export interface UpdateOrDeleteDomainTemplateAPIResponse {
114
99
  status: number;
115
100
  body: {
116
101
  message: string;
117
102
  template: {
118
- name: string
119
- }
103
+ name: string;
104
+ };
120
105
  };
121
106
  }
122
-
123
107
  export interface UpdateOrDeleteDomainTemplateResult {
124
108
  status: number;
125
109
  message: string;
126
110
  templateName?: string;
127
111
  }
128
-
129
112
  export interface NotificationAPIResponse {
130
113
  status: number;
131
114
  body: {
132
115
  message: string;
133
116
  };
134
117
  }
135
-
136
118
  export interface NotificationResult {
137
119
  status: number;
138
120
  message: string;
139
121
  }
140
-
141
122
  export interface CreateDomainTemplateVersionAPIResponse {
142
123
  status: number;
143
124
  body: {
@@ -145,13 +126,11 @@ export interface CreateDomainTemplateVersionAPIResponse {
145
126
  template: DomainTemplate;
146
127
  };
147
128
  }
148
-
149
129
  export interface CreateDomainTemplateVersionResult {
150
130
  status: number;
151
131
  message: string;
152
132
  template: DomainTemplate;
153
133
  }
154
-
155
134
  export interface MutateDomainTemplateVersionAPIResponse {
156
135
  status: number;
157
136
  body: {
@@ -160,20 +139,18 @@ export interface MutateDomainTemplateVersionAPIResponse {
160
139
  name: string;
161
140
  version: {
162
141
  tag: string;
163
- }
142
+ };
164
143
  };
165
144
  };
166
145
  }
167
-
168
146
  export interface MutateDomainTemplateVersionResult {
169
147
  status: number;
170
148
  message: string;
171
149
  templateName: string;
172
150
  templateVersion: {
173
151
  tag: string;
174
- }
152
+ };
175
153
  }
176
-
177
154
  export interface ListDomainTemplateVersionsAPIResponse {
178
155
  status: number;
179
156
  body: {
@@ -183,8 +160,8 @@ export interface ListDomainTemplateVersionsAPIResponse {
183
160
  createdAt: string;
184
161
  createdBy: string;
185
162
  id: string;
186
- versions: ShortTemplateVersion[]
187
- }
163
+ versions: ShortTemplateVersion[];
164
+ };
188
165
  paging: {
189
166
  first: string;
190
167
  last: string;
@@ -193,7 +170,6 @@ export interface ListDomainTemplateVersionsAPIResponse {
193
170
  };
194
171
  };
195
172
  }
196
-
197
173
  export interface ListDomainTemplateVersionsResult {
198
174
  template: DomainTemplateItem;
199
175
  pages: {
@@ -203,36 +179,16 @@ export interface ListDomainTemplateVersionsResult {
203
179
  previous: string;
204
180
  };
205
181
  }
206
-
207
182
  export interface IDomainTemplatesClient {
208
- list(domain: string, query?: DomainTemplatesQuery): Promise<ListDomainTemplatesResult>
209
- get(domain: string, templateName: string, query: TemplateQuery): Promise<DomainTemplateItem>
210
- create(domain: string, data: DomainTemplateData): Promise<DomainTemplateItem>
211
- update(
212
- domain: string,
213
- templateName: string,
214
- data: DomainTemplateUpdateData
215
- ): Promise<UpdateOrDeleteDomainTemplateResult>
216
- destroy(domain: string, templateName: string): Promise<UpdateOrDeleteDomainTemplateResult>
217
- destroyAll(domain: string): Promise<NotificationResult>
218
- createVersion(
219
- domain: string,
220
- templateName: string,
221
- data: DomainTemplateVersionData
222
- ) : Promise<CreateDomainTemplateVersionResult>
223
- getVersion(domain: string, templateName: string, tag: string): Promise<DomainTemplateItem>
224
- updateVersion(
225
- domain: string,
226
- templateName: string,
227
- tag: string,
228
- data: DomainTemplateUpdateVersionData
229
- ): Promise<MutateDomainTemplateVersionResult>
230
- destroyVersion(
231
- domain: string,
232
- templateName: string,
233
- tag: string): Promise<MutateDomainTemplateVersionResult>
234
- listVersions(
235
- domain: string,
236
- templateName: string,
237
- query?: DomainTemplatesQuery): Promise<ListDomainTemplateVersionsResult>
183
+ list(domain: string, query?: DomainTemplatesQuery): Promise<ListDomainTemplatesResult>;
184
+ get(domain: string, templateName: string, query?: TemplateQuery): Promise<DomainTemplateItem>;
185
+ create(domain: string, data: DomainTemplateData): Promise<DomainTemplateItem>;
186
+ update(domain: string, templateName: string, data: DomainTemplateUpdateData): Promise<UpdateOrDeleteDomainTemplateResult>;
187
+ destroy(domain: string, templateName: string): Promise<UpdateOrDeleteDomainTemplateResult>;
188
+ destroyAll(domain: string): Promise<NotificationResult>;
189
+ createVersion(domain: string, templateName: string, data: DomainTemplateVersionData): Promise<CreateDomainTemplateVersionResult>;
190
+ getVersion(domain: string, templateName: string, tag: string): Promise<DomainTemplateItem>;
191
+ updateVersion(domain: string, templateName: string, tag: string, data: DomainTemplateUpdateVersionData): Promise<MutateDomainTemplateVersionResult>;
192
+ destroyVersion(domain: string, templateName: string, tag: string): Promise<MutateDomainTemplateVersionResult>;
193
+ listVersions(domain: string, templateName: string, query?: DomainTemplatesQuery): Promise<ListDomainTemplateVersionsResult>;
238
194
  }
@@ -1,47 +1,48 @@
1
- /* eslint-disable camelcase */
2
-
3
1
  export interface DomainTrackingData {
4
- click: { active: boolean };
5
- open: { active: boolean };
2
+ click: {
3
+ active: boolean;
4
+ };
5
+ open: {
6
+ active: boolean;
7
+ };
6
8
  unsubscribe: {
7
9
  active: boolean;
8
10
  html_footer: string;
9
11
  text_footer: string;
10
- }
12
+ };
11
13
  }
12
-
13
14
  export interface DomainTrackingResponse {
14
15
  status: number;
15
16
  body: {
16
- tracking: DomainTrackingData
17
+ tracking: DomainTrackingData;
17
18
  };
18
19
  }
19
-
20
20
  export interface UpdatedOpenTracking {
21
21
  message: string;
22
- open?: { active: boolean };
23
- click?: { active: boolean | 'htmlonly'};
22
+ open?: {
23
+ active: boolean;
24
+ };
25
+ click?: {
26
+ active: boolean | 'htmlonly';
27
+ };
24
28
  unsubscribe?: {
25
- active: boolean,
29
+ active: boolean;
26
30
  html_footer: string;
27
31
  text_footer: string;
28
32
  };
29
33
  }
30
-
31
34
  export interface UpdateDomainTrackingResponse {
32
35
  status: number;
33
36
  body: UpdatedOpenTracking;
34
37
  }
35
-
36
38
  export interface OpenTrackingInfo {
37
- active: 'yes'| 'no' | 'true' | 'false';
39
+ active: 'yes' | 'no' | 'true' | 'false';
38
40
  }
39
41
  export interface ClickTrackingInfo {
40
- active: 'yes'| 'no' | 'true' | 'false' | 'htmlonly';
42
+ active: 'yes' | 'no' | 'true' | 'false' | 'htmlonly';
41
43
  }
42
-
43
44
  export interface UnsubscribeTrackingInfo {
44
- active: 'yes'| 'no' | 'true' | 'false';
45
+ active: 'yes' | 'no' | 'true' | 'false';
45
46
  html_footer: string;
46
47
  text_footer: string;
47
48
  }
@@ -1,11 +1,9 @@
1
- /* eslint-disable camelcase */
2
1
  export interface DomainsQuery {
3
- authority : string;
4
- state: 'active' | 'unverified' | 'disabled';
5
- limit: number;
6
- skip: number;
2
+ authority?: string;
3
+ state?: 'active' | 'unverified' | 'disabled';
4
+ limit?: number;
5
+ skip?: number;
7
6
  }
8
-
9
7
  export interface DomainInfo {
10
8
  name: string;
11
9
  smtp_password: string;
@@ -15,9 +13,8 @@ export interface DomainInfo {
15
13
  dkim_key_size?: 1024 | 2048;
16
14
  ips?: '';
17
15
  pool_id?: '';
18
- web_scheme: 'http' | 'https'
16
+ web_scheme: 'http' | 'https';
19
17
  }
20
-
21
18
  export interface DomainShortData {
22
19
  name: string;
23
20
  require_tls: boolean;
@@ -29,20 +26,17 @@ export interface DomainShortData {
29
26
  smtp_password: string;
30
27
  smtp_login: string;
31
28
  type: string;
32
-
33
29
  }
34
- export interface DomainData extends DomainShortData{
30
+ export interface DomainData extends DomainShortData {
35
31
  id: string;
36
32
  is_disabled: boolean;
37
33
  web_prefix: string;
38
34
  web_scheme: string;
39
35
  }
40
-
41
- export interface DomainsListItem extends DomainShortData{
36
+ export interface DomainsListItem extends DomainShortData {
42
37
  receiving_dns_records: null;
43
38
  sending_dns_records: null;
44
39
  }
45
-
46
40
  export interface DNSRecord {
47
41
  cached: any[];
48
42
  name: string;
@@ -50,7 +44,6 @@ export interface DNSRecord {
50
44
  valid: string;
51
45
  value: string;
52
46
  }
53
-
54
47
  export interface DomainResponseData {
55
48
  status: number;
56
49
  body: {
@@ -58,84 +51,70 @@ export interface DomainResponseData {
58
51
  message?: string;
59
52
  receiving_dns_records: DNSRecord[];
60
53
  sending_dns_records: DNSRecord[];
61
- }
54
+ };
62
55
  }
63
-
64
56
  export interface DomainListResponseData {
65
57
  status: number;
66
58
  body: {
67
59
  items: DomainsListItem[];
68
60
  total_count: number;
69
- }
61
+ };
70
62
  }
71
-
72
63
  export interface MessageResponse {
73
- message : string
64
+ message: string;
74
65
  }
75
-
76
66
  export interface DestroyedDomainResponse {
77
67
  status: number;
78
- body: MessageResponse
68
+ body: MessageResponse;
79
69
  }
80
-
81
70
  export interface ConnectionSettings {
82
71
  require_tls: boolean;
83
72
  skip_verification: boolean;
84
73
  }
85
74
  export interface ConnectionSettingsResponse {
86
75
  body: {
87
- connection: ConnectionSettings
88
- }
89
- status: number
76
+ connection: ConnectionSettings;
77
+ };
78
+ status: number;
90
79
  }
91
-
92
80
  export interface UpdatedConnectionSettings {
93
- message: string,
94
- require_tls: boolean,
95
- skip_verification: boolean
81
+ message: string;
82
+ require_tls: boolean;
83
+ skip_verification: boolean;
96
84
  }
97
-
98
85
  export interface UpdatedConnectionSettingsRes {
99
- body: UpdatedConnectionSettings,
100
- status: number
86
+ body: UpdatedConnectionSettings;
87
+ status: number;
101
88
  }
102
-
103
89
  export interface DKIMAuthorityInfo {
104
- self: boolean | 'yes' | 'no' | 'true' |'false'
90
+ self: boolean | 'yes' | 'no' | 'true' | 'false';
105
91
  }
106
-
107
92
  export interface UpdatedDKIMAuthority {
108
- changed: boolean,
109
- message: string,
110
- sending_dns_records: DNSRecord[]
93
+ changed: boolean;
94
+ message: string;
95
+ sending_dns_records: DNSRecord[];
111
96
  }
112
-
113
97
  export interface UpdatedDKIMAuthorityResponse {
114
- body: UpdatedDKIMAuthority,
115
- status: 200
98
+ body: UpdatedDKIMAuthority;
99
+ status: 200;
116
100
  }
117
-
118
101
  export interface DKIMSelectorInfo {
119
- dkimSelector: string
102
+ dkimSelector: string;
120
103
  }
121
-
122
104
  export interface UpdatedDKIMSelectorResponse {
123
- body:MessageResponse,
124
- status: number
105
+ body: MessageResponse;
106
+ status: number;
125
107
  }
126
-
127
108
  export interface WebPrefixInfo {
128
- webPrefix: string
109
+ webPrefix: string;
129
110
  }
130
-
131
111
  export interface UpdatedWebPrefix {
132
- message : string
112
+ message: string;
133
113
  }
134
114
  export interface UpdatedWebPrefixResponse {
135
- body:MessageResponse,
136
- status: number
115
+ body: MessageResponse;
116
+ status: number;
137
117
  }
138
-
139
118
  export interface ReplacementForPool {
140
119
  pool_id?: string;
141
120
  ip?: string;
@@ -13,14 +13,14 @@ export interface EventsResponse {
13
13
  body: {
14
14
  items: [];
15
15
  paging: PagesList;
16
- }
16
+ };
17
17
  }
18
18
  export interface DomainEvent {
19
19
  severity: string;
20
20
  tags: string[];
21
21
  storage: {
22
22
  url: string;
23
- key: string
23
+ key: string;
24
24
  };
25
25
  'delivery-status': {
26
26
  tls: boolean;
@@ -31,7 +31,7 @@ export interface DomainEvent {
31
31
  utf8: boolean;
32
32
  'attempt-no': number;
33
33
  message: string;
34
- 'certificate-verified': boolean
34
+ 'certificate-verified': boolean;
35
35
  };
36
36
  'recipient-domain': string;
37
37
  id: string;
@@ -44,35 +44,34 @@ export interface DomainEvent {
44
44
  'is-routed': boolean;
45
45
  'is-authenticated': boolean;
46
46
  'is-system-test': boolean;
47
- 'is-test-mode': boolean
47
+ 'is-test-mode': boolean;
48
48
  };
49
- 'log-level' : string;
49
+ 'log-level': string;
50
50
  template?: any;
51
51
  timestamp: number;
52
52
  envelope: {
53
53
  transport: string;
54
54
  sender: string;
55
55
  'sending-ip': string;
56
- targets: string
56
+ targets: string;
57
57
  };
58
58
  message: {
59
59
  headers: {
60
60
  to: string;
61
61
  'message-id': string;
62
62
  from: string;
63
- subject: string
63
+ subject: string;
64
64
  };
65
65
  attachments: [];
66
- size: 308
66
+ size: 308;
67
67
  };
68
68
  recipient: string;
69
69
  event: string;
70
70
  }
71
-
72
- export interface ParsedPage{
71
+ export interface ParsedPage {
73
72
  id: string;
74
73
  number: string;
75
- url: string
74
+ url: string;
76
75
  }
77
76
  export interface ParsedPagesList {
78
77
  previous: ParsedPage;
@@ -85,5 +84,5 @@ export interface EventsList {
85
84
  pages: ParsedPagesList;
86
85
  }
87
86
  export interface PagesListAccumulator {
88
- [index: string]: EventsPage
87
+ [index: string]: EventsPage;
89
88
  }
@@ -0,0 +1,7 @@
1
+ import * as NodeFormData from 'form-data';
2
+ export interface IFormDataOptions {
3
+ [key: string]: any;
4
+ }
5
+ export interface InputFormData {
6
+ new (options?: HTMLFormElement | IFormDataOptions): NodeFormData | FormData;
7
+ }
@@ -0,0 +1,24 @@
1
+ import DomainClient from '../domains';
2
+ import EventClient from '../events';
3
+ import IpPoolsClient from '../ip-pools';
4
+ import IpsClient from '../ips';
5
+ import ListsClient from '../lists';
6
+ import MessagesClient from '../messages';
7
+ import RoutesClient from '../routes';
8
+ import StatsClient from '../stats';
9
+ import SuppressionClient from '../suppressions';
10
+ import ValidateClient from '../validate';
11
+ import WebhookClient from '../webhooks';
12
+ export interface IMailgunClient {
13
+ domains: DomainClient;
14
+ webhooks: WebhookClient;
15
+ events: EventClient;
16
+ stats: StatsClient;
17
+ suppressions: SuppressionClient;
18
+ messages: MessagesClient;
19
+ routes: RoutesClient;
20
+ validate: ValidateClient;
21
+ ips: IpsClient;
22
+ ip_pools: IpPoolsClient;
23
+ lists: ListsClient;
24
+ }
@@ -0,0 +1,19 @@
1
+ export interface IpPool {
2
+ description: string;
3
+ ips: string[];
4
+ is_linked: boolean;
5
+ name: string;
6
+ pool_id: string;
7
+ }
8
+ export interface IpPoolListResponse {
9
+ body: {
10
+ ip_pools: IpPool;
11
+ message: string;
12
+ };
13
+ }
14
+ export interface IpPoolUpdateData {
15
+ name: string;
16
+ description: string;
17
+ add_ip: string;
18
+ remove_ip: string;
19
+ }
@@ -0,0 +1,10 @@
1
+ export interface IpsListResponseBody {
2
+ assignable_to_pools: boolean;
3
+ items: string[];
4
+ total_count: number;
5
+ }
6
+ export interface IpData {
7
+ ip: string;
8
+ dedicated: boolean;
9
+ rdns: string;
10
+ }
@@ -1,4 +1,3 @@
1
- /* eslint-disable camelcase */
2
1
  export interface MultipleValidationJob {
3
2
  created_at: number;
4
3
  download_url: {
@@ -22,41 +21,35 @@ export interface MultipleValidationJob {
22
21
  low: number;
23
22
  medium: number;
24
23
  unknown: number;
25
- }
26
- }
24
+ };
25
+ };
27
26
  }
28
-
29
27
  export interface CreatedMultipleValidationJob {
30
28
  id: string;
31
29
  message: string;
32
30
  }
33
-
34
31
  export interface PagesList {
35
32
  prev: string;
36
33
  first: string;
37
34
  last: string;
38
35
  next: string;
39
36
  }
40
-
41
37
  export interface MultipleValidationJobsListResult {
42
38
  jobs: MultipleValidationJob[];
43
39
  paging: PagesList;
44
40
  total: number;
45
41
  }
46
-
47
42
  export interface MultipleValidationJobsListResponse {
48
43
  status: 200;
49
- body: MultipleValidationJobsListResult
44
+ body: MultipleValidationJobsListResult;
50
45
  }
51
-
52
46
  export interface CanceledMultipleValidationJob {
53
- body: string;
54
- status: number;
47
+ body: string;
48
+ status: number;
55
49
  }
56
-
57
50
  export interface IMultipleValidationClient {
58
- list() : Promise<MultipleValidationJobsListResult>
59
- get(listId: string) : Promise<MultipleValidationJob>
60
- create(listId: string, file: any) : Promise<CreatedMultipleValidationJob>
61
- destroy(listId: string) : Promise<CanceledMultipleValidationJob>
51
+ list(): Promise<MultipleValidationJobsListResult>;
52
+ get(listId: string): Promise<MultipleValidationJob>;
53
+ create(listId: string, file: any): Promise<CreatedMultipleValidationJob>;
54
+ destroy(listId: string): Promise<CanceledMultipleValidationJob>;
62
55
  }
@@ -0,0 +1,8 @@
1
+ interface Options {
2
+ username: string;
3
+ key: string;
4
+ url?: string;
5
+ public_key?: string;
6
+ timeout?: number;
7
+ }
8
+ export default Options;