@nocobase/plugin-workflow-mailer 2.4.0-alpha.1 → 2.4.0-alpha.10

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 (187) hide show
  1. package/dist/externalVersion.js +6 -6
  2. package/dist/node_modules/joi/dist/joi-browser.min.js +1 -1
  3. package/dist/node_modules/joi/lib/index.js +1 -1
  4. package/dist/node_modules/joi/lib/messages.js +35 -6
  5. package/dist/node_modules/joi/lib/types/keys.js +18 -1
  6. package/dist/node_modules/joi/lib/types/link.js +18 -2
  7. package/dist/node_modules/joi/lib/types/string.js +2 -2
  8. package/dist/node_modules/joi/package.json +1 -1
  9. package/dist/node_modules/nodemailer/dist/cjs/addressparser/index.d.ts +59 -0
  10. package/dist/node_modules/nodemailer/dist/cjs/addressparser/index.js +790 -0
  11. package/dist/node_modules/nodemailer/dist/cjs/base64/index.d.ts +36 -0
  12. package/dist/node_modules/nodemailer/dist/cjs/base64/index.js +119 -0
  13. package/dist/node_modules/nodemailer/dist/cjs/dkim/index.d.ts +52 -0
  14. package/dist/node_modules/nodemailer/dist/cjs/dkim/index.js +228 -0
  15. package/dist/node_modules/nodemailer/dist/cjs/dkim/message-parser.d.ts +48 -0
  16. package/dist/node_modules/nodemailer/dist/cjs/dkim/message-parser.js +180 -0
  17. package/dist/node_modules/nodemailer/dist/cjs/dkim/relaxed-body.d.ts +36 -0
  18. package/dist/node_modules/nodemailer/dist/cjs/dkim/relaxed-body.js +148 -0
  19. package/dist/node_modules/nodemailer/dist/cjs/dkim/sign.d.ts +52 -0
  20. package/dist/node_modules/nodemailer/dist/cjs/dkim/sign.js +165 -0
  21. package/dist/node_modules/nodemailer/dist/cjs/errors.d.ts +96 -0
  22. package/dist/node_modules/nodemailer/dist/cjs/errors.js +70 -0
  23. package/dist/node_modules/nodemailer/dist/cjs/fetch/cookies.d.ts +107 -0
  24. package/dist/node_modules/nodemailer/dist/cjs/fetch/cookies.js +282 -0
  25. package/dist/node_modules/nodemailer/dist/cjs/fetch/index.d.ts +65 -0
  26. package/dist/node_modules/nodemailer/dist/cjs/fetch/index.js +384 -0
  27. package/dist/node_modules/nodemailer/dist/cjs/json-transport/index.d.ts +64 -0
  28. package/dist/node_modules/nodemailer/dist/cjs/json-transport/index.js +99 -0
  29. package/dist/node_modules/nodemailer/dist/cjs/mail-composer/index.d.ts +174 -0
  30. package/dist/node_modules/nodemailer/dist/cjs/mail-composer/index.js +613 -0
  31. package/dist/node_modules/nodemailer/dist/cjs/mailer/index.d.ts +237 -0
  32. package/dist/node_modules/nodemailer/dist/cjs/mailer/index.js +415 -0
  33. package/dist/node_modules/nodemailer/dist/cjs/mailer/mail-message.d.ts +97 -0
  34. package/dist/node_modules/nodemailer/dist/cjs/mailer/mail-message.js +342 -0
  35. package/dist/node_modules/nodemailer/dist/cjs/mime-funcs/index.d.ts +161 -0
  36. package/dist/node_modules/nodemailer/dist/cjs/mime-funcs/index.js +787 -0
  37. package/dist/node_modules/nodemailer/dist/cjs/mime-funcs/mime-types.d.ts +2 -0
  38. package/dist/node_modules/nodemailer/dist/cjs/mime-funcs/mime-types.js +2103 -0
  39. package/dist/node_modules/nodemailer/dist/cjs/mime-node/index.d.ts +333 -0
  40. package/dist/node_modules/nodemailer/dist/cjs/mime-node/index.js +1493 -0
  41. package/dist/node_modules/nodemailer/dist/cjs/mime-node/last-newline.d.ts +5 -0
  42. package/dist/node_modules/nodemailer/dist/cjs/mime-node/last-newline.js +32 -0
  43. package/dist/node_modules/nodemailer/dist/cjs/mime-node/le-unix.d.ts +9 -0
  44. package/dist/node_modules/nodemailer/dist/cjs/mime-node/le-unix.js +40 -0
  45. package/dist/node_modules/nodemailer/dist/cjs/mime-node/le-windows.d.ts +10 -0
  46. package/dist/node_modules/nodemailer/dist/cjs/mime-node/le-windows.js +47 -0
  47. package/dist/node_modules/nodemailer/dist/cjs/nodemailer.d.ts +124 -0
  48. package/dist/node_modules/nodemailer/dist/cjs/nodemailer.js +1 -0
  49. package/dist/node_modules/nodemailer/dist/cjs/package-info.d.ts +3 -0
  50. package/dist/node_modules/nodemailer/dist/cjs/package-info.js +7 -0
  51. package/dist/node_modules/nodemailer/dist/cjs/package.json +3 -0
  52. package/dist/node_modules/nodemailer/dist/cjs/punycode/index.d.ts +73 -0
  53. package/dist/node_modules/nodemailer/{lib → dist/cjs}/punycode/index.js +63 -112
  54. package/dist/node_modules/nodemailer/dist/cjs/qp/index.d.ts +32 -0
  55. package/dist/node_modules/nodemailer/dist/cjs/qp/index.js +207 -0
  56. package/dist/node_modules/nodemailer/dist/cjs/sendmail-transport/index.d.ts +69 -0
  57. package/dist/node_modules/nodemailer/dist/cjs/sendmail-transport/index.js +210 -0
  58. package/dist/node_modules/nodemailer/dist/cjs/ses-transport/index.d.ts +112 -0
  59. package/dist/node_modules/nodemailer/dist/cjs/ses-transport/index.js +252 -0
  60. package/dist/node_modules/nodemailer/dist/cjs/shared/index.d.ts +260 -0
  61. package/dist/node_modules/nodemailer/dist/cjs/shared/index.js +680 -0
  62. package/dist/node_modules/nodemailer/dist/cjs/shared/objects.d.ts +23 -0
  63. package/dist/node_modules/nodemailer/dist/cjs/shared/objects.js +43 -0
  64. package/dist/node_modules/nodemailer/dist/cjs/shared/url.d.ts +21 -0
  65. package/dist/node_modules/nodemailer/dist/cjs/shared/url.js +255 -0
  66. package/dist/node_modules/nodemailer/dist/cjs/smtp-connection/data-stream.d.ts +15 -0
  67. package/dist/node_modules/nodemailer/dist/cjs/smtp-connection/data-stream.js +108 -0
  68. package/dist/node_modules/nodemailer/dist/cjs/smtp-connection/http-proxy-client.d.ts +47 -0
  69. package/dist/node_modules/nodemailer/dist/cjs/smtp-connection/http-proxy-client.js +189 -0
  70. package/dist/node_modules/nodemailer/dist/cjs/smtp-connection/index.d.ts +416 -0
  71. package/dist/node_modules/nodemailer/dist/cjs/smtp-connection/index.js +1837 -0
  72. package/dist/node_modules/nodemailer/dist/cjs/smtp-pool/index.d.ts +133 -0
  73. package/dist/node_modules/nodemailer/dist/cjs/smtp-pool/index.js +569 -0
  74. package/dist/node_modules/nodemailer/dist/cjs/smtp-pool/pool-resource.d.ts +62 -0
  75. package/dist/node_modules/nodemailer/dist/cjs/smtp-pool/pool-resource.js +257 -0
  76. package/dist/node_modules/nodemailer/dist/cjs/smtp-transport/index.d.ts +156 -0
  77. package/dist/node_modules/nodemailer/dist/cjs/smtp-transport/index.js +371 -0
  78. package/dist/node_modules/nodemailer/dist/cjs/stream-transport/index.d.ts +65 -0
  79. package/dist/node_modules/nodemailer/dist/cjs/stream-transport/index.js +146 -0
  80. package/dist/node_modules/nodemailer/dist/cjs/well-known/index.d.ts +35 -0
  81. package/dist/node_modules/nodemailer/dist/cjs/well-known/index.js +41 -0
  82. package/dist/node_modules/nodemailer/dist/cjs/well-known/services.d.ts +2 -0
  83. package/dist/node_modules/nodemailer/dist/cjs/well-known/services.js +674 -0
  84. package/dist/node_modules/nodemailer/dist/cjs/xoauth2/index.d.ts +201 -0
  85. package/dist/node_modules/nodemailer/dist/cjs/xoauth2/index.js +426 -0
  86. package/dist/node_modules/nodemailer/dist/esm/addressparser/index.d.ts +59 -0
  87. package/dist/node_modules/nodemailer/dist/esm/addressparser/index.js +786 -0
  88. package/dist/node_modules/nodemailer/dist/esm/base64/index.d.ts +36 -0
  89. package/dist/node_modules/nodemailer/{lib → dist/esm}/base64/index.js +39 -68
  90. package/dist/node_modules/nodemailer/dist/esm/dkim/index.d.ts +52 -0
  91. package/dist/node_modules/nodemailer/{lib → dist/esm}/dkim/index.js +62 -92
  92. package/dist/node_modules/nodemailer/dist/esm/dkim/message-parser.d.ts +48 -0
  93. package/dist/node_modules/nodemailer/dist/esm/dkim/message-parser.js +176 -0
  94. package/dist/node_modules/nodemailer/dist/esm/dkim/relaxed-body.d.ts +36 -0
  95. package/dist/node_modules/nodemailer/dist/esm/dkim/relaxed-body.js +141 -0
  96. package/dist/node_modules/nodemailer/dist/esm/dkim/sign.d.ts +52 -0
  97. package/dist/node_modules/nodemailer/dist/esm/dkim/sign.js +125 -0
  98. package/dist/node_modules/nodemailer/dist/esm/errors.d.ts +96 -0
  99. package/dist/node_modules/nodemailer/dist/esm/errors.js +67 -0
  100. package/dist/node_modules/nodemailer/dist/esm/fetch/cookies.d.ts +107 -0
  101. package/dist/node_modules/nodemailer/dist/esm/fetch/cookies.js +242 -0
  102. package/dist/node_modules/nodemailer/dist/esm/fetch/index.d.ts +65 -0
  103. package/dist/node_modules/nodemailer/dist/esm/fetch/index.js +344 -0
  104. package/dist/node_modules/nodemailer/dist/esm/json-transport/index.d.ts +64 -0
  105. package/dist/node_modules/nodemailer/dist/esm/json-transport/index.js +62 -0
  106. package/dist/node_modules/nodemailer/dist/esm/mail-composer/index.d.ts +174 -0
  107. package/dist/node_modules/nodemailer/{lib → dist/esm}/mail-composer/index.js +283 -275
  108. package/dist/node_modules/nodemailer/dist/esm/mailer/index.d.ts +237 -0
  109. package/dist/node_modules/nodemailer/{lib → dist/esm}/mailer/index.js +151 -205
  110. package/dist/node_modules/nodemailer/dist/esm/mailer/mail-message.d.ts +97 -0
  111. package/dist/node_modules/nodemailer/{lib → dist/esm}/mailer/mail-message.js +111 -125
  112. package/dist/node_modules/nodemailer/dist/esm/mime-funcs/index.d.ts +161 -0
  113. package/dist/node_modules/nodemailer/dist/esm/mime-funcs/index.js +738 -0
  114. package/dist/node_modules/nodemailer/dist/esm/mime-funcs/mime-types.d.ts +2 -0
  115. package/dist/node_modules/nodemailer/{lib → dist/esm}/mime-funcs/mime-types.js +43 -49
  116. package/dist/node_modules/nodemailer/dist/esm/mime-node/index.d.ts +333 -0
  117. package/dist/node_modules/nodemailer/{lib → dist/esm}/mime-node/index.js +576 -437
  118. package/dist/node_modules/nodemailer/dist/esm/mime-node/last-newline.d.ts +5 -0
  119. package/dist/node_modules/nodemailer/{lib → dist/esm}/mime-node/last-newline.js +4 -10
  120. package/dist/node_modules/nodemailer/dist/esm/mime-node/le-unix.d.ts +9 -0
  121. package/dist/node_modules/nodemailer/{lib → dist/esm}/mime-node/le-unix.js +7 -15
  122. package/dist/node_modules/nodemailer/dist/esm/mime-node/le-windows.d.ts +10 -0
  123. package/dist/node_modules/nodemailer/{lib → dist/esm}/mime-node/le-windows.js +6 -16
  124. package/dist/node_modules/nodemailer/dist/esm/nodemailer.d.ts +124 -0
  125. package/dist/node_modules/nodemailer/dist/esm/nodemailer.js +166 -0
  126. package/dist/node_modules/nodemailer/dist/esm/package-info.d.ts +3 -0
  127. package/dist/node_modules/nodemailer/dist/esm/package-info.js +4 -0
  128. package/dist/node_modules/nodemailer/dist/esm/package.json +3 -0
  129. package/dist/node_modules/nodemailer/dist/esm/punycode/index.d.ts +73 -0
  130. package/dist/node_modules/nodemailer/dist/esm/punycode/index.js +405 -0
  131. package/dist/node_modules/nodemailer/dist/esm/qp/index.d.ts +32 -0
  132. package/dist/node_modules/nodemailer/{lib → dist/esm}/qp/index.js +59 -77
  133. package/dist/node_modules/nodemailer/dist/esm/sendmail-transport/index.d.ts +69 -0
  134. package/dist/node_modules/nodemailer/dist/esm/sendmail-transport/index.js +170 -0
  135. package/dist/node_modules/nodemailer/dist/esm/ses-transport/index.d.ts +112 -0
  136. package/dist/node_modules/nodemailer/dist/esm/ses-transport/index.js +212 -0
  137. package/dist/node_modules/nodemailer/dist/esm/shared/index.d.ts +260 -0
  138. package/dist/node_modules/nodemailer/dist/esm/shared/index.js +631 -0
  139. package/dist/node_modules/nodemailer/dist/esm/shared/objects.d.ts +23 -0
  140. package/dist/node_modules/nodemailer/dist/esm/shared/objects.js +38 -0
  141. package/dist/node_modules/nodemailer/dist/esm/shared/url.d.ts +21 -0
  142. package/dist/node_modules/nodemailer/dist/esm/shared/url.js +214 -0
  143. package/dist/node_modules/nodemailer/dist/esm/smtp-connection/data-stream.d.ts +15 -0
  144. package/dist/node_modules/nodemailer/dist/esm/smtp-connection/data-stream.js +103 -0
  145. package/dist/node_modules/nodemailer/dist/esm/smtp-connection/http-proxy-client.d.ts +47 -0
  146. package/dist/node_modules/nodemailer/dist/esm/smtp-connection/http-proxy-client.js +149 -0
  147. package/dist/node_modules/nodemailer/dist/esm/smtp-connection/index.d.ts +416 -0
  148. package/dist/node_modules/nodemailer/dist/esm/smtp-connection/index.js +1797 -0
  149. package/dist/node_modules/nodemailer/dist/esm/smtp-pool/index.d.ts +133 -0
  150. package/dist/node_modules/nodemailer/{lib → dist/esm}/smtp-pool/index.js +195 -314
  151. package/dist/node_modules/nodemailer/dist/esm/smtp-pool/pool-resource.d.ts +62 -0
  152. package/dist/node_modules/nodemailer/{lib → dist/esm}/smtp-pool/pool-resource.js +70 -107
  153. package/dist/node_modules/nodemailer/dist/esm/smtp-transport/index.d.ts +156 -0
  154. package/dist/node_modules/nodemailer/dist/esm/smtp-transport/index.js +331 -0
  155. package/dist/node_modules/nodemailer/dist/esm/stream-transport/index.d.ts +65 -0
  156. package/dist/node_modules/nodemailer/dist/esm/stream-transport/index.js +106 -0
  157. package/dist/node_modules/nodemailer/dist/esm/well-known/index.d.ts +35 -0
  158. package/dist/node_modules/nodemailer/{lib → dist/esm}/well-known/index.js +12 -23
  159. package/dist/node_modules/nodemailer/dist/esm/well-known/services.d.ts +2 -0
  160. package/dist/node_modules/nodemailer/dist/esm/well-known/services.js +671 -0
  161. package/dist/node_modules/nodemailer/dist/esm/xoauth2/index.d.ts +201 -0
  162. package/dist/node_modules/nodemailer/dist/esm/xoauth2/index.js +386 -0
  163. package/dist/node_modules/nodemailer/dist/well-known/services.json +640 -0
  164. package/dist/node_modules/nodemailer/package.json +1 -1
  165. package/package.json +4 -4
  166. package/dist/node_modules/nodemailer/.gitattributes +0 -6
  167. package/dist/node_modules/nodemailer/.ncurc.js +0 -7
  168. package/dist/node_modules/nodemailer/.prettierrc.js +0 -8
  169. package/dist/node_modules/nodemailer/lib/addressparser/index.js +0 -313
  170. package/dist/node_modules/nodemailer/lib/dkim/message-parser.js +0 -155
  171. package/dist/node_modules/nodemailer/lib/dkim/relaxed-body.js +0 -154
  172. package/dist/node_modules/nodemailer/lib/dkim/sign.js +0 -117
  173. package/dist/node_modules/nodemailer/lib/fetch/cookies.js +0 -281
  174. package/dist/node_modules/nodemailer/lib/fetch/index.js +0 -274
  175. package/dist/node_modules/nodemailer/lib/json-transport/index.js +0 -82
  176. package/dist/node_modules/nodemailer/lib/mime-funcs/index.js +0 -625
  177. package/dist/node_modules/nodemailer/lib/nodemailer.js +0 -1
  178. package/dist/node_modules/nodemailer/lib/sendmail-transport/index.js +0 -210
  179. package/dist/node_modules/nodemailer/lib/ses-transport/index.js +0 -349
  180. package/dist/node_modules/nodemailer/lib/shared/index.js +0 -688
  181. package/dist/node_modules/nodemailer/lib/smtp-connection/data-stream.js +0 -108
  182. package/dist/node_modules/nodemailer/lib/smtp-connection/http-proxy-client.js +0 -143
  183. package/dist/node_modules/nodemailer/lib/smtp-connection/index.js +0 -1825
  184. package/dist/node_modules/nodemailer/lib/smtp-transport/index.js +0 -416
  185. package/dist/node_modules/nodemailer/lib/stream-transport/index.js +0 -135
  186. package/dist/node_modules/nodemailer/lib/well-known/services.json +0 -343
  187. package/dist/node_modules/nodemailer/lib/xoauth2/index.js +0 -376
@@ -0,0 +1,237 @@
1
+ import { EventEmitter } from 'node:events';
2
+ import * as shared from '../shared/index.js';
3
+ import DKIM, { type DKIMOptions } from '../dkim/index.js';
4
+ import MailMessage, { type MailDefaults, type SendMailOptions } from './mail-message.js';
5
+ import net from 'node:net';
6
+ import type { ConnectionOptions } from 'node:tls';
7
+ import type { MailComposerAlternative, MailComposerAttachment, MailComposerIcalEvent, MailComposerListHeaderEntry, MailComposerListHeaders, MailComposerTextEncoding } from '../mail-composer/index.js';
8
+ import type { Callback, NodemailerError, ResultCallback } from '../errors.js';
9
+ import type { ParsedUrl } from '../shared/url.js';
10
+ import type { MimeNodeAddress, MimeNodeEnvelope, MimeNodeEnvelopeInput, MimeNodeHeaders, MimeNodeOptions } from '../mime-node/index.js';
11
+ import type { XOAuth2ProvisionCallback } from '../xoauth2/index.js';
12
+ export type { SendMailOptions, MailDefaults, MailMessageData, MailMessageDataCallback, MailMessageContentCallback, MailMessageListHeader, MailMessageListHeaderValue } from './mail-message.js';
13
+ export type { default as MailMessage } from './mail-message.js';
14
+ /**
15
+ * The base shape of the object a transport hands back for a sent message. Every bundled
16
+ * transport sets the envelope and the Message-ID, the rest depends on the transport.
17
+ *
18
+ * The index signature keeps a transport specific field readable through this type, the way
19
+ * the `any` typed result of @types/nodemailer was, and it is also what a result type has
20
+ * to inherit to stay assignable to it, so the result type of a transport outside this
21
+ * package has to extend this interface rather than restate it
22
+ */
23
+ export interface SentMessageInfo {
24
+ /** The envelope the message was sent with */
25
+ envelope: MimeNodeEnvelope;
26
+ /** Message-ID of the sent message */
27
+ messageId: string;
28
+ /** Recipient addresses the transport accepted */
29
+ accepted?: string[] | undefined;
30
+ /** Recipient addresses the transport rejected */
31
+ rejected?: string[] | undefined;
32
+ /** Recipient addresses left pending, LMTP reports these */
33
+ pending?: string[] | undefined;
34
+ /** Last response from the server */
35
+ response?: string | undefined;
36
+ /** The generated message, for the transports that hand it back instead of sending it */
37
+ message?: any;
38
+ /** Transport specific fields */
39
+ [key: string]: any;
40
+ }
41
+ /**
42
+ * Callback for sendMail, receives the transport result once the transport has taken the
43
+ * message
44
+ */
45
+ export type SendMailCallback<T = SentMessageInfo> = (err: NodemailerError | null, info: T) => void;
46
+ /**
47
+ * Callback for verify(), success is true once the transport accepted the configuration.
48
+ * Declared with a required success value, the way @types/nodemailer declared it, the
49
+ * error path hands over the error alone
50
+ */
51
+ export type VerifyCallback = Callback<true>;
52
+ /**
53
+ * Callback a plugin calls once it is done, an error aborts the send
54
+ */
55
+ export type PluginCallback = (err?: NodemailerError | null) => void;
56
+ /**
57
+ * A plugin registered with use(): receives the message and a callback to call once done
58
+ */
59
+ export type PluginFunction<T = SentMessageInfo> = (mail: MailMessage<T>, callback: PluginCallback) => void;
60
+ /**
61
+ * Connection options a getSocket handler receives: the options of the transport asking for
62
+ * the socket, with the host and port to connect to
63
+ */
64
+ export interface GetSocketOptions {
65
+ host?: string | undefined;
66
+ port?: number | undefined;
67
+ [key: string]: any;
68
+ }
69
+ /**
70
+ * The result of a getSocket handler, the socket to use for the connection. The object is
71
+ * merged into the connection options, so it may carry any of those as well
72
+ */
73
+ export interface SocketOptions {
74
+ /** An established socket, the proxied connection */
75
+ connection?: net.Socket | undefined;
76
+ [key: string]: any;
77
+ }
78
+ /**
79
+ * Receives the socket options from a getSocket handler, false when a new socket should be
80
+ * opened, or the error that prevented the connection
81
+ */
82
+ export type GetSocketCallback = (err: Error | null, socketOptions?: SocketOptions | false) => void;
83
+ /**
84
+ * A socket handler. Mail sets one on the transport as getSocket when a proxy is configured,
85
+ * the SMTP transports call it to get a proxied socket instead of connecting directly
86
+ */
87
+ export type GetSocketHandler = (options: GetSocketOptions, callback: GetSocketCallback) => void;
88
+ /**
89
+ * A custom proxy handler, registered with set('proxy_handler_' + protocol, handler) for the
90
+ * protocol of the proxy url
91
+ */
92
+ export type ProxyHandler = (proxy: ParsedUrl, options: GetSocketOptions, callback: GetSocketCallback) => void;
93
+ /**
94
+ * Well known keys of the meta store, see set() and get(): the OAuth2 token provisioning
95
+ * callback the SMTP transports use, the socks module for socks proxies, and a custom proxy
96
+ * handler per proxy protocol
97
+ */
98
+ export interface MailMeta {
99
+ /** Called by the SMTP transports when a new OAuth2 access token is needed */
100
+ oauth2_provision_cb: XOAuth2ProvisionCallback;
101
+ /** The socks module, v1 or v2, used to connect through a socks proxy */
102
+ proxy_socks_module: any;
103
+ [key: `proxy_handler_${string}`]: ProxyHandler;
104
+ [key: string]: any;
105
+ }
106
+ /**
107
+ * A transport as consumed by Mail: any object with a name, a version and a send method
108
+ * works, the rest is optional. Mail forwards its close, isIdle and verify calls to the
109
+ * methods of the same name as they are, so their arguments are up to the transport.
110
+ *
111
+ * D is the options type of the transport, the second type parameter @types/nodemailer
112
+ * declared on Transport, Transporter and Mail
113
+ */
114
+ export interface Transport<T = SentMessageInfo, D extends TransportOptions = TransportOptions> {
115
+ /** Transport name, used for logging */
116
+ name: string;
117
+ /** Transport version, used for logging */
118
+ version: string;
119
+ /** Hands a message to the transport, the callback receives the transport result */
120
+ send(mail: MailMessage<T>, callback: ResultCallback<T>): void;
121
+ /** Checks the configuration, the SMTP transports connect and authenticate for it */
122
+ verify?(...args: any[]): any;
123
+ /** Closes the transport */
124
+ close?(...args: any[]): any;
125
+ /** Tells whether the transport can take a message right away */
126
+ isIdle?(...args: any[]): any;
127
+ /** Registers an event listener, the transport may emit 'log', 'error', 'idle' and 'clear' */
128
+ on?(event: string | symbol, listener: (...args: any[]) => void): this;
129
+ /** The Mail object the transport belongs to, set by Mail */
130
+ mailer?: Mail<T, D> | undefined;
131
+ /** Socket handler for a proxied connection, set by Mail when a proxy is configured */
132
+ getSocket?: GetSocketHandler | undefined;
133
+ }
134
+ /**
135
+ * Transport configuration as read by Mail itself. The transport reads its own options from
136
+ * the same object, see the transport for those
137
+ */
138
+ export interface TransportOptions {
139
+ /** Bunyan compatible logger, true for the default console logger, false or unset for no logging */
140
+ logger?: shared.ExternalLogger | boolean | undefined;
141
+ /** Component name for the log lines, defaults to 'mail' */
142
+ component?: string | undefined;
143
+ /** DKIM signing options, every message is signed with these unless it carries its own */
144
+ dkim?: DKIMOptions | undefined;
145
+ /** Proxy url. http(s) proxies work as is, socks proxies need the socks module set with set('proxy_socks_module', socks) */
146
+ proxy?: string | undefined;
147
+ /** TLS options, rejectUnauthorized applies to an https proxy as well */
148
+ tls?: ConnectionOptions | undefined;
149
+ /** Reject content that points to a file path, forced onto every message */
150
+ disableFileAccess?: boolean | undefined;
151
+ /** Reject content that points to a URL, forced onto every message */
152
+ disableUrlAccess?: boolean | undefined;
153
+ /** Method to normalize header keys for custom caseing, forced onto every message */
154
+ normalizeHeaderKey?: MimeNodeOptions['normalizeHeaderKey'] | undefined;
155
+ /** Recipients allowed on one message, forced onto every message, 0 disables the limit, defaults to 100000 */
156
+ maxRecipients?: number | undefined;
157
+ /** Convert data: images in the html into embedded attachments */
158
+ attachDataUrls?: boolean | undefined;
159
+ }
160
+ /**
161
+ * The transporter object createTransport returns, a Mail instance wrapping a transport. D
162
+ * is the options type of the transport, it types the options field of the transporter
163
+ */
164
+ export type Transporter<T = SentMessageInfo, D extends TransportOptions = TransportOptions> = Mail<T, D>;
165
+ /**
166
+ * Creates an object for exposing the Mail API
167
+ *
168
+ * @constructor
169
+ * @param transporter Transport object instance to pass the mails to
170
+ */
171
+ declare class Mail<out T = SentMessageInfo, out D extends TransportOptions = TransportOptions> extends EventEmitter {
172
+ options: D;
173
+ /** Message defaults given to createTransport, kept public because the DefinitelyTyped typings declared it */
174
+ _defaults: MailDefaults;
175
+ meta: Map<string, any>;
176
+ dkim: DKIM | false;
177
+ transporter: Transport<T, D>;
178
+ logger: shared.Logger;
179
+ /** Closes the transport, the pooled SMTP transport closes its connections */
180
+ close: () => void;
181
+ /** Tells whether the transport can take a message right away */
182
+ isIdle: () => boolean;
183
+ /** Checks the configuration, the SMTP transports connect and authenticate for it */
184
+ verify: {
185
+ (callback: VerifyCallback): void;
186
+ (): Promise<true>;
187
+ };
188
+ /** Socket handler for a proxied connection, set by setupProxy and handed to the transport on the next send */
189
+ getSocket?: GetSocketHandler | false | undefined;
190
+ constructor(transporter: Transport<T, D>, options?: D, defaults?: MailDefaults);
191
+ use(step: string, plugin: PluginFunction<T>): this;
192
+ /**
193
+ * Sends an email using the preselected transport object
194
+ *
195
+ * @param data E-data description
196
+ * @returns Promise that resolves with the result of the send
197
+ */
198
+ sendMail(data: SendMailOptions): Promise<T>;
199
+ /**
200
+ * Sends an email using the preselected transport object
201
+ *
202
+ * @param data E-data description
203
+ * @param callback Callback to run once the sending succeeded or failed
204
+ */
205
+ sendMail(data: SendMailOptions, callback: SendMailCallback<T>): void;
206
+ getVersionString(): string;
207
+ /**
208
+ * Sets up proxy handler for a Nodemailer object
209
+ *
210
+ * @param proxyUrl Proxy configuration url
211
+ */
212
+ setupProxy(proxyUrl: string): void;
213
+ set<K extends keyof MailMeta & string>(key: K, value: MailMeta[K]): Map<string, any>;
214
+ get<K extends keyof MailMeta & string>(key: K): MailMeta[K] | undefined;
215
+ }
216
+ /**
217
+ * Type aliases in the layout of @types/nodemailer, so `Mail.Options` style references keep working
218
+ */
219
+ type MailPluginFunction<T> = PluginFunction<T>;
220
+ declare namespace Mail {
221
+ type Options = SendMailOptions;
222
+ type Address = MimeNodeAddress;
223
+ type Attachment = MailComposerAttachment;
224
+ type AttachmentLike = MailComposerAlternative;
225
+ type AmpAttachment = MailComposerAlternative;
226
+ type IcalAttachment = MailComposerIcalEvent;
227
+ type Headers = MimeNodeHeaders;
228
+ type ListHeader = MailComposerListHeaderEntry;
229
+ type ListHeaders = MailComposerListHeaders;
230
+ type Envelope = MimeNodeEnvelopeInput;
231
+ type Connection = SocketOptions;
232
+ type TextEncoding = MailComposerTextEncoding;
233
+ type PluginFunction<T = SentMessageInfo> = MailPluginFunction<T>;
234
+ }
235
+ /** The same aliases as module level exports, for `import * as Mail` and `import Mail = require()` */
236
+ export type { SendMailOptions as Options, MimeNodeAddress as Address, MailComposerAttachment as Attachment, MailComposerAlternative as AttachmentLike, MailComposerAlternative as AmpAttachment, MailComposerIcalEvent as IcalAttachment, MimeNodeHeaders as Headers, MailComposerListHeaderEntry as ListHeader, MailComposerListHeaders as ListHeaders, MimeNodeEnvelopeInput as Envelope, SocketOptions as Connection, MailComposerTextEncoding as TextEncoding };
237
+ export default Mail;