@aws-sdk/client-mailmanager 3.581.0

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 (311) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +589 -0
  3. package/dist-cjs/MailManager.js +105 -0
  4. package/dist-cjs/MailManagerClient.js +56 -0
  5. package/dist-cjs/auth/httpAuthExtensionConfiguration.js +43 -0
  6. package/dist-cjs/auth/httpAuthSchemeProvider.js +47 -0
  7. package/dist-cjs/commands/CreateAddonInstanceCommand.js +29 -0
  8. package/dist-cjs/commands/CreateAddonSubscriptionCommand.js +29 -0
  9. package/dist-cjs/commands/CreateArchiveCommand.js +29 -0
  10. package/dist-cjs/commands/CreateIngressPointCommand.js +29 -0
  11. package/dist-cjs/commands/CreateRelayCommand.js +29 -0
  12. package/dist-cjs/commands/CreateRuleSetCommand.js +29 -0
  13. package/dist-cjs/commands/CreateTrafficPolicyCommand.js +29 -0
  14. package/dist-cjs/commands/DeleteAddonInstanceCommand.js +28 -0
  15. package/dist-cjs/commands/DeleteAddonSubscriptionCommand.js +28 -0
  16. package/dist-cjs/commands/DeleteArchiveCommand.js +28 -0
  17. package/dist-cjs/commands/DeleteIngressPointCommand.js +28 -0
  18. package/dist-cjs/commands/DeleteRelayCommand.js +28 -0
  19. package/dist-cjs/commands/DeleteRuleSetCommand.js +28 -0
  20. package/dist-cjs/commands/DeleteTrafficPolicyCommand.js +28 -0
  21. package/dist-cjs/commands/GetAddonInstanceCommand.js +28 -0
  22. package/dist-cjs/commands/GetAddonSubscriptionCommand.js +28 -0
  23. package/dist-cjs/commands/GetArchiveCommand.js +28 -0
  24. package/dist-cjs/commands/GetArchiveExportCommand.js +28 -0
  25. package/dist-cjs/commands/GetArchiveMessageCommand.js +28 -0
  26. package/dist-cjs/commands/GetArchiveMessageContentCommand.js +28 -0
  27. package/dist-cjs/commands/GetArchiveSearchCommand.js +28 -0
  28. package/dist-cjs/commands/GetArchiveSearchResultsCommand.js +28 -0
  29. package/dist-cjs/commands/GetIngressPointCommand.js +28 -0
  30. package/dist-cjs/commands/GetRelayCommand.js +28 -0
  31. package/dist-cjs/commands/GetRuleSetCommand.js +29 -0
  32. package/dist-cjs/commands/GetTrafficPolicyCommand.js +28 -0
  33. package/dist-cjs/commands/ListAddonInstancesCommand.js +28 -0
  34. package/dist-cjs/commands/ListAddonSubscriptionsCommand.js +28 -0
  35. package/dist-cjs/commands/ListArchiveExportsCommand.js +28 -0
  36. package/dist-cjs/commands/ListArchiveSearchesCommand.js +28 -0
  37. package/dist-cjs/commands/ListArchivesCommand.js +28 -0
  38. package/dist-cjs/commands/ListIngressPointsCommand.js +28 -0
  39. package/dist-cjs/commands/ListRelaysCommand.js +28 -0
  40. package/dist-cjs/commands/ListRuleSetsCommand.js +28 -0
  41. package/dist-cjs/commands/ListTagsForResourceCommand.js +29 -0
  42. package/dist-cjs/commands/ListTrafficPoliciesCommand.js +28 -0
  43. package/dist-cjs/commands/StartArchiveExportCommand.js +28 -0
  44. package/dist-cjs/commands/StartArchiveSearchCommand.js +28 -0
  45. package/dist-cjs/commands/StopArchiveExportCommand.js +28 -0
  46. package/dist-cjs/commands/StopArchiveSearchCommand.js +28 -0
  47. package/dist-cjs/commands/TagResourceCommand.js +29 -0
  48. package/dist-cjs/commands/UntagResourceCommand.js +29 -0
  49. package/dist-cjs/commands/UpdateArchiveCommand.js +28 -0
  50. package/dist-cjs/commands/UpdateIngressPointCommand.js +29 -0
  51. package/dist-cjs/commands/UpdateRelayCommand.js +28 -0
  52. package/dist-cjs/commands/UpdateRuleSetCommand.js +29 -0
  53. package/dist-cjs/commands/UpdateTrafficPolicyCommand.js +28 -0
  54. package/dist-cjs/commands/index.js +50 -0
  55. package/dist-cjs/endpoint/EndpointParameters.js +18 -0
  56. package/dist-cjs/endpoint/endpointResolver.js +14 -0
  57. package/dist-cjs/endpoint/ruleset.js +7 -0
  58. package/dist-cjs/extensionConfiguration.js +2 -0
  59. package/dist-cjs/index.js +11 -0
  60. package/dist-cjs/models/MailManagerServiceException.js +12 -0
  61. package/dist-cjs/models/index.js +4 -0
  62. package/dist-cjs/models/models_0.js +582 -0
  63. package/dist-cjs/pagination/Interfaces.js +2 -0
  64. package/dist-cjs/pagination/ListAddonInstancesPaginator.js +7 -0
  65. package/dist-cjs/pagination/ListAddonSubscriptionsPaginator.js +7 -0
  66. package/dist-cjs/pagination/ListArchiveExportsPaginator.js +7 -0
  67. package/dist-cjs/pagination/ListArchiveSearchesPaginator.js +7 -0
  68. package/dist-cjs/pagination/ListArchivesPaginator.js +7 -0
  69. package/dist-cjs/pagination/ListIngressPointsPaginator.js +7 -0
  70. package/dist-cjs/pagination/ListRelaysPaginator.js +7 -0
  71. package/dist-cjs/pagination/ListRuleSetsPaginator.js +7 -0
  72. package/dist-cjs/pagination/ListTrafficPoliciesPaginator.js +7 -0
  73. package/dist-cjs/pagination/index.js +13 -0
  74. package/dist-cjs/protocols/Aws_json1_0.js +1615 -0
  75. package/dist-cjs/runtimeConfig.browser.js +39 -0
  76. package/dist-cjs/runtimeConfig.js +49 -0
  77. package/dist-cjs/runtimeConfig.native.js +15 -0
  78. package/dist-cjs/runtimeConfig.shared.js +34 -0
  79. package/dist-cjs/runtimeExtensions.js +25 -0
  80. package/dist-es/MailManager.js +101 -0
  81. package/dist-es/MailManagerClient.js +52 -0
  82. package/dist-es/auth/httpAuthExtensionConfiguration.js +38 -0
  83. package/dist-es/auth/httpAuthSchemeProvider.js +41 -0
  84. package/dist-es/commands/CreateAddonInstanceCommand.js +25 -0
  85. package/dist-es/commands/CreateAddonSubscriptionCommand.js +25 -0
  86. package/dist-es/commands/CreateArchiveCommand.js +25 -0
  87. package/dist-es/commands/CreateIngressPointCommand.js +25 -0
  88. package/dist-es/commands/CreateRelayCommand.js +25 -0
  89. package/dist-es/commands/CreateRuleSetCommand.js +25 -0
  90. package/dist-es/commands/CreateTrafficPolicyCommand.js +25 -0
  91. package/dist-es/commands/DeleteAddonInstanceCommand.js +24 -0
  92. package/dist-es/commands/DeleteAddonSubscriptionCommand.js +24 -0
  93. package/dist-es/commands/DeleteArchiveCommand.js +24 -0
  94. package/dist-es/commands/DeleteIngressPointCommand.js +24 -0
  95. package/dist-es/commands/DeleteRelayCommand.js +24 -0
  96. package/dist-es/commands/DeleteRuleSetCommand.js +24 -0
  97. package/dist-es/commands/DeleteTrafficPolicyCommand.js +24 -0
  98. package/dist-es/commands/GetAddonInstanceCommand.js +24 -0
  99. package/dist-es/commands/GetAddonSubscriptionCommand.js +24 -0
  100. package/dist-es/commands/GetArchiveCommand.js +24 -0
  101. package/dist-es/commands/GetArchiveExportCommand.js +24 -0
  102. package/dist-es/commands/GetArchiveMessageCommand.js +24 -0
  103. package/dist-es/commands/GetArchiveMessageContentCommand.js +24 -0
  104. package/dist-es/commands/GetArchiveSearchCommand.js +24 -0
  105. package/dist-es/commands/GetArchiveSearchResultsCommand.js +24 -0
  106. package/dist-es/commands/GetIngressPointCommand.js +24 -0
  107. package/dist-es/commands/GetRelayCommand.js +24 -0
  108. package/dist-es/commands/GetRuleSetCommand.js +25 -0
  109. package/dist-es/commands/GetTrafficPolicyCommand.js +24 -0
  110. package/dist-es/commands/ListAddonInstancesCommand.js +24 -0
  111. package/dist-es/commands/ListAddonSubscriptionsCommand.js +24 -0
  112. package/dist-es/commands/ListArchiveExportsCommand.js +24 -0
  113. package/dist-es/commands/ListArchiveSearchesCommand.js +24 -0
  114. package/dist-es/commands/ListArchivesCommand.js +24 -0
  115. package/dist-es/commands/ListIngressPointsCommand.js +24 -0
  116. package/dist-es/commands/ListRelaysCommand.js +24 -0
  117. package/dist-es/commands/ListRuleSetsCommand.js +24 -0
  118. package/dist-es/commands/ListTagsForResourceCommand.js +25 -0
  119. package/dist-es/commands/ListTrafficPoliciesCommand.js +24 -0
  120. package/dist-es/commands/StartArchiveExportCommand.js +24 -0
  121. package/dist-es/commands/StartArchiveSearchCommand.js +24 -0
  122. package/dist-es/commands/StopArchiveExportCommand.js +24 -0
  123. package/dist-es/commands/StopArchiveSearchCommand.js +24 -0
  124. package/dist-es/commands/TagResourceCommand.js +25 -0
  125. package/dist-es/commands/UntagResourceCommand.js +25 -0
  126. package/dist-es/commands/UpdateArchiveCommand.js +24 -0
  127. package/dist-es/commands/UpdateIngressPointCommand.js +25 -0
  128. package/dist-es/commands/UpdateRelayCommand.js +24 -0
  129. package/dist-es/commands/UpdateRuleSetCommand.js +25 -0
  130. package/dist-es/commands/UpdateTrafficPolicyCommand.js +24 -0
  131. package/dist-es/commands/index.js +47 -0
  132. package/dist-es/endpoint/EndpointParameters.js +14 -0
  133. package/dist-es/endpoint/endpointResolver.js +10 -0
  134. package/dist-es/endpoint/ruleset.js +4 -0
  135. package/dist-es/extensionConfiguration.js +1 -0
  136. package/dist-es/index.js +6 -0
  137. package/dist-es/models/MailManagerServiceException.js +8 -0
  138. package/dist-es/models/index.js +1 -0
  139. package/dist-es/models/models_0.js +554 -0
  140. package/dist-es/pagination/Interfaces.js +1 -0
  141. package/dist-es/pagination/ListAddonInstancesPaginator.js +4 -0
  142. package/dist-es/pagination/ListAddonSubscriptionsPaginator.js +4 -0
  143. package/dist-es/pagination/ListArchiveExportsPaginator.js +4 -0
  144. package/dist-es/pagination/ListArchiveSearchesPaginator.js +4 -0
  145. package/dist-es/pagination/ListArchivesPaginator.js +4 -0
  146. package/dist-es/pagination/ListIngressPointsPaginator.js +4 -0
  147. package/dist-es/pagination/ListRelaysPaginator.js +4 -0
  148. package/dist-es/pagination/ListRuleSetsPaginator.js +4 -0
  149. package/dist-es/pagination/ListTrafficPoliciesPaginator.js +4 -0
  150. package/dist-es/pagination/index.js +10 -0
  151. package/dist-es/protocols/Aws_json1_0.js +1517 -0
  152. package/dist-es/runtimeConfig.browser.js +34 -0
  153. package/dist-es/runtimeConfig.js +44 -0
  154. package/dist-es/runtimeConfig.native.js +11 -0
  155. package/dist-es/runtimeConfig.shared.js +30 -0
  156. package/dist-es/runtimeExtensions.js +21 -0
  157. package/dist-types/MailManager.d.ts +353 -0
  158. package/dist-types/MailManagerClient.d.ts +225 -0
  159. package/dist-types/auth/httpAuthExtensionConfiguration.d.ts +29 -0
  160. package/dist-types/auth/httpAuthSchemeProvider.d.ts +61 -0
  161. package/dist-types/commands/CreateAddonInstanceCommand.d.ts +80 -0
  162. package/dist-types/commands/CreateAddonSubscriptionCommand.d.ts +77 -0
  163. package/dist-types/commands/CreateArchiveCommand.d.ts +85 -0
  164. package/dist-types/commands/CreateIngressPointCommand.d.ts +82 -0
  165. package/dist-types/commands/CreateRelayCommand.d.ts +82 -0
  166. package/dist-types/commands/CreateRuleSetCommand.d.ts +227 -0
  167. package/dist-types/commands/CreateTrafficPolicyCommand.d.ts +120 -0
  168. package/dist-types/commands/DeleteAddonInstanceCommand.d.ts +63 -0
  169. package/dist-types/commands/DeleteAddonSubscriptionCommand.d.ts +63 -0
  170. package/dist-types/commands/DeleteArchiveCommand.d.ts +73 -0
  171. package/dist-types/commands/DeleteIngressPointCommand.d.ts +66 -0
  172. package/dist-types/commands/DeleteRelayCommand.d.ts +66 -0
  173. package/dist-types/commands/DeleteRuleSetCommand.d.ts +63 -0
  174. package/dist-types/commands/DeleteTrafficPolicyCommand.d.ts +66 -0
  175. package/dist-types/commands/GetAddonInstanceCommand.d.ts +68 -0
  176. package/dist-types/commands/GetAddonSubscriptionCommand.d.ts +67 -0
  177. package/dist-types/commands/GetArchiveCommand.d.ts +80 -0
  178. package/dist-types/commands/GetArchiveExportCommand.d.ts +122 -0
  179. package/dist-types/commands/GetArchiveMessageCommand.d.ts +70 -0
  180. package/dist-types/commands/GetArchiveMessageContentCommand.d.ts +74 -0
  181. package/dist-types/commands/GetArchiveSearchCommand.d.ts +117 -0
  182. package/dist-types/commands/GetArchiveSearchResultsCommand.d.ts +90 -0
  183. package/dist-types/commands/GetIngressPointCommand.d.ts +82 -0
  184. package/dist-types/commands/GetRelayCommand.d.ts +75 -0
  185. package/dist-types/commands/GetRuleSetCommand.d.ts +221 -0
  186. package/dist-types/commands/GetTrafficPolicyCommand.d.ts +114 -0
  187. package/dist-types/commands/ListAddonInstancesCommand.d.ts +72 -0
  188. package/dist-types/commands/ListAddonSubscriptionsCommand.d.ts +71 -0
  189. package/dist-types/commands/ListArchiveExportsCommand.d.ts +84 -0
  190. package/dist-types/commands/ListArchiveSearchesCommand.d.ts +84 -0
  191. package/dist-types/commands/ListArchivesCommand.d.ts +77 -0
  192. package/dist-types/commands/ListIngressPointsCommand.d.ts +72 -0
  193. package/dist-types/commands/ListRelaysCommand.d.ts +70 -0
  194. package/dist-types/commands/ListRuleSetsCommand.d.ts +70 -0
  195. package/dist-types/commands/ListTagsForResourceCommand.d.ts +70 -0
  196. package/dist-types/commands/ListTrafficPoliciesCommand.d.ts +70 -0
  197. package/dist-types/commands/StartArchiveExportCommand.d.ts +122 -0
  198. package/dist-types/commands/StartArchiveSearchCommand.d.ts +120 -0
  199. package/dist-types/commands/StopArchiveExportCommand.d.ts +66 -0
  200. package/dist-types/commands/StopArchiveSearchCommand.d.ts +66 -0
  201. package/dist-types/commands/TagResourceCommand.d.ts +75 -0
  202. package/dist-types/commands/UntagResourceCommand.d.ts +69 -0
  203. package/dist-types/commands/UpdateArchiveCommand.d.ts +79 -0
  204. package/dist-types/commands/UpdateIngressPointCommand.d.ts +74 -0
  205. package/dist-types/commands/UpdateRelayCommand.d.ts +73 -0
  206. package/dist-types/commands/UpdateRuleSetCommand.d.ts +219 -0
  207. package/dist-types/commands/UpdateTrafficPolicyCommand.d.ts +112 -0
  208. package/dist-types/commands/index.d.ts +47 -0
  209. package/dist-types/endpoint/EndpointParameters.d.ts +40 -0
  210. package/dist-types/endpoint/endpointResolver.d.ts +5 -0
  211. package/dist-types/endpoint/ruleset.d.ts +2 -0
  212. package/dist-types/extensionConfiguration.d.ts +9 -0
  213. package/dist-types/index.d.ts +21 -0
  214. package/dist-types/models/MailManagerServiceException.d.ts +13 -0
  215. package/dist-types/models/index.d.ts +1 -0
  216. package/dist-types/models/models_0.d.ts +4046 -0
  217. package/dist-types/pagination/Interfaces.d.ts +8 -0
  218. package/dist-types/pagination/ListAddonInstancesPaginator.d.ts +7 -0
  219. package/dist-types/pagination/ListAddonSubscriptionsPaginator.d.ts +7 -0
  220. package/dist-types/pagination/ListArchiveExportsPaginator.d.ts +7 -0
  221. package/dist-types/pagination/ListArchiveSearchesPaginator.d.ts +7 -0
  222. package/dist-types/pagination/ListArchivesPaginator.d.ts +7 -0
  223. package/dist-types/pagination/ListIngressPointsPaginator.d.ts +7 -0
  224. package/dist-types/pagination/ListRelaysPaginator.d.ts +7 -0
  225. package/dist-types/pagination/ListRuleSetsPaginator.d.ts +7 -0
  226. package/dist-types/pagination/ListTrafficPoliciesPaginator.d.ts +7 -0
  227. package/dist-types/pagination/index.d.ts +10 -0
  228. package/dist-types/protocols/Aws_json1_0.d.ts +425 -0
  229. package/dist-types/runtimeConfig.browser.d.ts +45 -0
  230. package/dist-types/runtimeConfig.d.ts +45 -0
  231. package/dist-types/runtimeConfig.native.d.ts +44 -0
  232. package/dist-types/runtimeConfig.shared.d.ts +21 -0
  233. package/dist-types/runtimeExtensions.d.ts +17 -0
  234. package/dist-types/ts3.4/MailManager.d.ts +813 -0
  235. package/dist-types/ts3.4/MailManagerClient.d.ts +402 -0
  236. package/dist-types/ts3.4/auth/httpAuthExtensionConfiguration.d.ts +32 -0
  237. package/dist-types/ts3.4/auth/httpAuthSchemeProvider.d.ts +44 -0
  238. package/dist-types/ts3.4/commands/CreateAddonInstanceCommand.d.ts +39 -0
  239. package/dist-types/ts3.4/commands/CreateAddonSubscriptionCommand.d.ts +39 -0
  240. package/dist-types/ts3.4/commands/CreateArchiveCommand.d.ts +38 -0
  241. package/dist-types/ts3.4/commands/CreateIngressPointCommand.d.ts +39 -0
  242. package/dist-types/ts3.4/commands/CreateRelayCommand.d.ts +35 -0
  243. package/dist-types/ts3.4/commands/CreateRuleSetCommand.d.ts +38 -0
  244. package/dist-types/ts3.4/commands/CreateTrafficPolicyCommand.d.ts +39 -0
  245. package/dist-types/ts3.4/commands/DeleteAddonInstanceCommand.d.ts +39 -0
  246. package/dist-types/ts3.4/commands/DeleteAddonSubscriptionCommand.d.ts +39 -0
  247. package/dist-types/ts3.4/commands/DeleteArchiveCommand.d.ts +38 -0
  248. package/dist-types/ts3.4/commands/DeleteIngressPointCommand.d.ts +39 -0
  249. package/dist-types/ts3.4/commands/DeleteRelayCommand.d.ts +35 -0
  250. package/dist-types/ts3.4/commands/DeleteRuleSetCommand.d.ts +38 -0
  251. package/dist-types/ts3.4/commands/DeleteTrafficPolicyCommand.d.ts +39 -0
  252. package/dist-types/ts3.4/commands/GetAddonInstanceCommand.d.ts +38 -0
  253. package/dist-types/ts3.4/commands/GetAddonSubscriptionCommand.d.ts +39 -0
  254. package/dist-types/ts3.4/commands/GetArchiveCommand.d.ts +35 -0
  255. package/dist-types/ts3.4/commands/GetArchiveExportCommand.d.ts +38 -0
  256. package/dist-types/ts3.4/commands/GetArchiveMessageCommand.d.ts +39 -0
  257. package/dist-types/ts3.4/commands/GetArchiveMessageContentCommand.d.ts +39 -0
  258. package/dist-types/ts3.4/commands/GetArchiveSearchCommand.d.ts +38 -0
  259. package/dist-types/ts3.4/commands/GetArchiveSearchResultsCommand.d.ts +39 -0
  260. package/dist-types/ts3.4/commands/GetIngressPointCommand.d.ts +38 -0
  261. package/dist-types/ts3.4/commands/GetRelayCommand.d.ts +35 -0
  262. package/dist-types/ts3.4/commands/GetRuleSetCommand.d.ts +35 -0
  263. package/dist-types/ts3.4/commands/GetTrafficPolicyCommand.d.ts +38 -0
  264. package/dist-types/ts3.4/commands/ListAddonInstancesCommand.d.ts +39 -0
  265. package/dist-types/ts3.4/commands/ListAddonSubscriptionsCommand.d.ts +39 -0
  266. package/dist-types/ts3.4/commands/ListArchiveExportsCommand.d.ts +39 -0
  267. package/dist-types/ts3.4/commands/ListArchiveSearchesCommand.d.ts +39 -0
  268. package/dist-types/ts3.4/commands/ListArchivesCommand.d.ts +35 -0
  269. package/dist-types/ts3.4/commands/ListIngressPointsCommand.d.ts +39 -0
  270. package/dist-types/ts3.4/commands/ListRelaysCommand.d.ts +35 -0
  271. package/dist-types/ts3.4/commands/ListRuleSetsCommand.d.ts +35 -0
  272. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +39 -0
  273. package/dist-types/ts3.4/commands/ListTrafficPoliciesCommand.d.ts +39 -0
  274. package/dist-types/ts3.4/commands/StartArchiveExportCommand.d.ts +39 -0
  275. package/dist-types/ts3.4/commands/StartArchiveSearchCommand.d.ts +39 -0
  276. package/dist-types/ts3.4/commands/StopArchiveExportCommand.d.ts +39 -0
  277. package/dist-types/ts3.4/commands/StopArchiveSearchCommand.d.ts +39 -0
  278. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +35 -0
  279. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +38 -0
  280. package/dist-types/ts3.4/commands/UpdateArchiveCommand.d.ts +38 -0
  281. package/dist-types/ts3.4/commands/UpdateIngressPointCommand.d.ts +39 -0
  282. package/dist-types/ts3.4/commands/UpdateRelayCommand.d.ts +35 -0
  283. package/dist-types/ts3.4/commands/UpdateRuleSetCommand.d.ts +38 -0
  284. package/dist-types/ts3.4/commands/UpdateTrafficPolicyCommand.d.ts +39 -0
  285. package/dist-types/ts3.4/commands/index.d.ts +47 -0
  286. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +51 -0
  287. package/dist-types/ts3.4/endpoint/endpointResolver.d.ts +8 -0
  288. package/dist-types/ts3.4/endpoint/ruleset.d.ts +2 -0
  289. package/dist-types/ts3.4/extensionConfiguration.d.ts +9 -0
  290. package/dist-types/ts3.4/index.d.ts +9 -0
  291. package/dist-types/ts3.4/models/MailManagerServiceException.d.ts +8 -0
  292. package/dist-types/ts3.4/models/index.d.ts +1 -0
  293. package/dist-types/ts3.4/models/models_0.d.ts +1514 -0
  294. package/dist-types/ts3.4/pagination/Interfaces.d.ts +6 -0
  295. package/dist-types/ts3.4/pagination/ListAddonInstancesPaginator.d.ts +11 -0
  296. package/dist-types/ts3.4/pagination/ListAddonSubscriptionsPaginator.d.ts +11 -0
  297. package/dist-types/ts3.4/pagination/ListArchiveExportsPaginator.d.ts +11 -0
  298. package/dist-types/ts3.4/pagination/ListArchiveSearchesPaginator.d.ts +11 -0
  299. package/dist-types/ts3.4/pagination/ListArchivesPaginator.d.ts +11 -0
  300. package/dist-types/ts3.4/pagination/ListIngressPointsPaginator.d.ts +11 -0
  301. package/dist-types/ts3.4/pagination/ListRelaysPaginator.d.ts +11 -0
  302. package/dist-types/ts3.4/pagination/ListRuleSetsPaginator.d.ts +11 -0
  303. package/dist-types/ts3.4/pagination/ListTrafficPoliciesPaginator.d.ts +11 -0
  304. package/dist-types/ts3.4/pagination/index.d.ts +10 -0
  305. package/dist-types/ts3.4/protocols/Aws_json1_0.d.ts +569 -0
  306. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +85 -0
  307. package/dist-types/ts3.4/runtimeConfig.d.ts +89 -0
  308. package/dist-types/ts3.4/runtimeConfig.native.d.ts +79 -0
  309. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +21 -0
  310. package/dist-types/ts3.4/runtimeExtensions.d.ts +11 -0
  311. package/package.json +103 -0
@@ -0,0 +1,4046 @@
1
+ import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
+ import { MailManagerServiceException as __BaseException } from "./MailManagerServiceException";
3
+ /**
4
+ * @public
5
+ * @enum
6
+ */
7
+ export declare const AcceptAction: {
8
+ readonly ALLOW: "ALLOW";
9
+ readonly DENY: "DENY";
10
+ };
11
+ /**
12
+ * @public
13
+ */
14
+ export type AcceptAction = (typeof AcceptAction)[keyof typeof AcceptAction];
15
+ /**
16
+ * <p>Occurs when a user is denied access to a specific resource or action.</p>
17
+ * @public
18
+ */
19
+ export declare class AccessDeniedException extends __BaseException {
20
+ readonly name: "AccessDeniedException";
21
+ readonly $fault: "client";
22
+ Message?: string;
23
+ /**
24
+ * @internal
25
+ */
26
+ constructor(opts: __ExceptionOptionType<AccessDeniedException, __BaseException>);
27
+ }
28
+ /**
29
+ * @public
30
+ * @enum
31
+ */
32
+ export declare const ActionFailurePolicy: {
33
+ readonly CONTINUE: "CONTINUE";
34
+ readonly DROP: "DROP";
35
+ };
36
+ /**
37
+ * @public
38
+ */
39
+ export type ActionFailurePolicy = (typeof ActionFailurePolicy)[keyof typeof ActionFailurePolicy];
40
+ /**
41
+ * <p>The action to add a header to a message. When executed, this action will add the given
42
+ * header to the message.</p>
43
+ * @public
44
+ */
45
+ export interface AddHeaderAction {
46
+ /**
47
+ * <p>The name of the header to add to an email. The header must be prefixed with
48
+ * "X-". Headers are added regardless of whether the header name pre-existed in
49
+ * the email.</p>
50
+ * @public
51
+ */
52
+ HeaderName: string | undefined;
53
+ /**
54
+ * <p>The value of the header to add to the email.</p>
55
+ * @public
56
+ */
57
+ HeaderValue: string | undefined;
58
+ }
59
+ /**
60
+ * <p>An Add On instance represents a specific configuration of an Add On.</p>
61
+ * @public
62
+ */
63
+ export interface AddonInstance {
64
+ /**
65
+ * <p>The unique ID of the Add On instance.</p>
66
+ * @public
67
+ */
68
+ AddonInstanceId?: string;
69
+ /**
70
+ * <p>The subscription ID for the instance.</p>
71
+ * @public
72
+ */
73
+ AddonSubscriptionId?: string;
74
+ /**
75
+ * <p>The name of the Add On for the instance.</p>
76
+ * @public
77
+ */
78
+ AddonName?: string;
79
+ /**
80
+ * <p>The Amazon Resource Name (ARN) of the Add On instance.</p>
81
+ * @public
82
+ */
83
+ AddonInstanceArn?: string;
84
+ /**
85
+ * <p>The timestamp of when the Add On instance was created.</p>
86
+ * @public
87
+ */
88
+ CreatedTimestamp?: Date;
89
+ }
90
+ /**
91
+ * <p>The request configuration has conflicts. For details, see the accompanying error message.</p>
92
+ * @public
93
+ */
94
+ export declare class ConflictException extends __BaseException {
95
+ readonly name: "ConflictException";
96
+ readonly $fault: "client";
97
+ Message?: string;
98
+ /**
99
+ * @internal
100
+ */
101
+ constructor(opts: __ExceptionOptionType<ConflictException, __BaseException>);
102
+ }
103
+ /**
104
+ * <p>A key-value pair (the value is optional), that you can define and assign to Amazon Web Services resources.</p>
105
+ * @public
106
+ */
107
+ export interface Tag {
108
+ /**
109
+ * <p>The key of the key-value tag.</p>
110
+ * @public
111
+ */
112
+ Key: string | undefined;
113
+ /**
114
+ * <p>The value of the key-value tag.</p>
115
+ * @public
116
+ */
117
+ Value: string | undefined;
118
+ }
119
+ /**
120
+ * @public
121
+ */
122
+ export interface CreateAddonInstanceRequest {
123
+ /**
124
+ * <p>A unique token that Amazon SES uses to recognize subsequent retries of the same
125
+ * request.</p>
126
+ * @public
127
+ */
128
+ ClientToken?: string;
129
+ /**
130
+ * <p>The unique ID of a previously created subscription that an Add On instance is created
131
+ * for. You can only have one instance per subscription.</p>
132
+ * @public
133
+ */
134
+ AddonSubscriptionId: string | undefined;
135
+ /**
136
+ * <p>The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.</p>
137
+ * @public
138
+ */
139
+ Tags?: Tag[];
140
+ }
141
+ /**
142
+ * @public
143
+ */
144
+ export interface CreateAddonInstanceResponse {
145
+ /**
146
+ * <p>The unique ID of the Add On instance created by this API.</p>
147
+ * @public
148
+ */
149
+ AddonInstanceId: string | undefined;
150
+ }
151
+ /**
152
+ * <p>Occurs when a requested resource is not found.</p>
153
+ * @public
154
+ */
155
+ export declare class ResourceNotFoundException extends __BaseException {
156
+ readonly name: "ResourceNotFoundException";
157
+ readonly $fault: "client";
158
+ Message?: string;
159
+ /**
160
+ * @internal
161
+ */
162
+ constructor(opts: __ExceptionOptionType<ResourceNotFoundException, __BaseException>);
163
+ }
164
+ /**
165
+ * <p>Occurs when an operation exceeds a predefined service quota or limit.</p>
166
+ * @public
167
+ */
168
+ export declare class ServiceQuotaExceededException extends __BaseException {
169
+ readonly name: "ServiceQuotaExceededException";
170
+ readonly $fault: "client";
171
+ Message?: string;
172
+ /**
173
+ * @internal
174
+ */
175
+ constructor(opts: __ExceptionOptionType<ServiceQuotaExceededException, __BaseException>);
176
+ }
177
+ /**
178
+ * <p>The request validation has failed. For details, see the accompanying error message.</p>
179
+ * @public
180
+ */
181
+ export declare class ValidationException extends __BaseException {
182
+ readonly name: "ValidationException";
183
+ readonly $fault: "client";
184
+ Message?: string;
185
+ /**
186
+ * @internal
187
+ */
188
+ constructor(opts: __ExceptionOptionType<ValidationException, __BaseException>);
189
+ }
190
+ /**
191
+ * @public
192
+ */
193
+ export interface DeleteAddonInstanceRequest {
194
+ /**
195
+ * <p>The Add On instance ID to delete.</p>
196
+ * @public
197
+ */
198
+ AddonInstanceId: string | undefined;
199
+ }
200
+ /**
201
+ * @public
202
+ */
203
+ export interface DeleteAddonInstanceResponse {
204
+ }
205
+ /**
206
+ * @public
207
+ */
208
+ export interface GetAddonInstanceRequest {
209
+ /**
210
+ * <p>The Add On instance ID to retrieve information for.</p>
211
+ * @public
212
+ */
213
+ AddonInstanceId: string | undefined;
214
+ }
215
+ /**
216
+ * @public
217
+ */
218
+ export interface GetAddonInstanceResponse {
219
+ /**
220
+ * <p>The subscription ID associated to the instance.</p>
221
+ * @public
222
+ */
223
+ AddonSubscriptionId?: string;
224
+ /**
225
+ * <p>The name of the Add On provider associated to the subscription of the instance.</p>
226
+ * @public
227
+ */
228
+ AddonName?: string;
229
+ /**
230
+ * <p>The Amazon Resource Name (ARN) of the Add On instance.</p>
231
+ * @public
232
+ */
233
+ AddonInstanceArn?: string;
234
+ /**
235
+ * <p>The timestamp of when the Add On instance was created.</p>
236
+ * @public
237
+ */
238
+ CreatedTimestamp?: Date;
239
+ }
240
+ /**
241
+ * @public
242
+ */
243
+ export interface ListAddonInstancesRequest {
244
+ /**
245
+ * <p>If you received a pagination token from a previous call to this API, you can provide it here to continue paginating through the next page of results.</p>
246
+ * @public
247
+ */
248
+ NextToken?: string;
249
+ /**
250
+ * <p>The maximum number of ingress endpoint resources that are returned per call. You can
251
+ * use NextToken to obtain further ingress endpoints. </p>
252
+ * @public
253
+ */
254
+ PageSize?: number;
255
+ }
256
+ /**
257
+ * @public
258
+ */
259
+ export interface ListAddonInstancesResponse {
260
+ /**
261
+ * <p>The list of ingress endpoints.</p>
262
+ * @public
263
+ */
264
+ AddonInstances?: AddonInstance[];
265
+ /**
266
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.</p>
267
+ * @public
268
+ */
269
+ NextToken?: string;
270
+ }
271
+ /**
272
+ * <p>A subscription for an Add On representing the acceptance of its terms of use and
273
+ * additional pricing.</p>
274
+ * @public
275
+ */
276
+ export interface AddonSubscription {
277
+ /**
278
+ * <p>The unique ID of the Add On subscription.</p>
279
+ * @public
280
+ */
281
+ AddonSubscriptionId?: string;
282
+ /**
283
+ * <p>The name of the Add On.</p>
284
+ * @public
285
+ */
286
+ AddonName?: string;
287
+ /**
288
+ * <p>The Amazon Resource Name (ARN) of the Add On subscription.</p>
289
+ * @public
290
+ */
291
+ AddonSubscriptionArn?: string;
292
+ /**
293
+ * <p>The timestamp of when the Add On subscription was created.</p>
294
+ * @public
295
+ */
296
+ CreatedTimestamp?: Date;
297
+ }
298
+ /**
299
+ * @public
300
+ */
301
+ export interface CreateAddonSubscriptionRequest {
302
+ /**
303
+ * <p>A unique token that Amazon SES uses to recognize subsequent retries of the same
304
+ * request.</p>
305
+ * @public
306
+ */
307
+ ClientToken?: string;
308
+ /**
309
+ * <p>The name of the Add On to subscribe to. You can only have one subscription for each
310
+ * Add On name.</p>
311
+ * @public
312
+ */
313
+ AddonName: string | undefined;
314
+ /**
315
+ * <p>The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.</p>
316
+ * @public
317
+ */
318
+ Tags?: Tag[];
319
+ }
320
+ /**
321
+ * @public
322
+ */
323
+ export interface CreateAddonSubscriptionResponse {
324
+ /**
325
+ * <p>The unique ID of the Add On subscription created by this API.</p>
326
+ * @public
327
+ */
328
+ AddonSubscriptionId: string | undefined;
329
+ }
330
+ /**
331
+ * @public
332
+ */
333
+ export interface DeleteAddonSubscriptionRequest {
334
+ /**
335
+ * <p>The Add On subscription ID to delete.</p>
336
+ * @public
337
+ */
338
+ AddonSubscriptionId: string | undefined;
339
+ }
340
+ /**
341
+ * @public
342
+ */
343
+ export interface DeleteAddonSubscriptionResponse {
344
+ }
345
+ /**
346
+ * @public
347
+ */
348
+ export interface GetAddonSubscriptionRequest {
349
+ /**
350
+ * <p>The Add On subscription ID to retrieve information for.</p>
351
+ * @public
352
+ */
353
+ AddonSubscriptionId: string | undefined;
354
+ }
355
+ /**
356
+ * @public
357
+ */
358
+ export interface GetAddonSubscriptionResponse {
359
+ /**
360
+ * <p>The name of the Add On for the subscription.</p>
361
+ * @public
362
+ */
363
+ AddonName?: string;
364
+ /**
365
+ * <p>Amazon Resource Name (ARN) for the subscription.</p>
366
+ * @public
367
+ */
368
+ AddonSubscriptionArn?: string;
369
+ /**
370
+ * <p>The timestamp of when the Add On subscription was created.</p>
371
+ * @public
372
+ */
373
+ CreatedTimestamp?: Date;
374
+ }
375
+ /**
376
+ * @public
377
+ */
378
+ export interface ListAddonSubscriptionsRequest {
379
+ /**
380
+ * <p>If you received a pagination token from a previous call to this API, you can provide it here to continue paginating through the next page of results.</p>
381
+ * @public
382
+ */
383
+ NextToken?: string;
384
+ /**
385
+ * <p>The maximum number of ingress endpoint resources that are returned per call. You can
386
+ * use NextToken to obtain further ingress endpoints. </p>
387
+ * @public
388
+ */
389
+ PageSize?: number;
390
+ }
391
+ /**
392
+ * @public
393
+ */
394
+ export interface ListAddonSubscriptionsResponse {
395
+ /**
396
+ * <p>The list of ingress endpoints.</p>
397
+ * @public
398
+ */
399
+ AddonSubscriptions?: AddonSubscription[];
400
+ /**
401
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.</p>
402
+ * @public
403
+ */
404
+ NextToken?: string;
405
+ }
406
+ /**
407
+ * <p>The result of an analysis can be used in conditions to trigger actions. Analyses can
408
+ * inspect the email content and report a certain aspect of the email.</p>
409
+ * @public
410
+ */
411
+ export interface Analysis {
412
+ /**
413
+ * <p>The Amazon Resource Name (ARN) of an Add On.</p>
414
+ * @public
415
+ */
416
+ Analyzer: string | undefined;
417
+ /**
418
+ * <p>The returned value from an Add On.</p>
419
+ * @public
420
+ */
421
+ ResultField: string | undefined;
422
+ }
423
+ /**
424
+ * @public
425
+ * @enum
426
+ */
427
+ export declare const ArchiveState: {
428
+ readonly ACTIVE: "ACTIVE";
429
+ readonly PENDING_DELETION: "PENDING_DELETION";
430
+ };
431
+ /**
432
+ * @public
433
+ */
434
+ export type ArchiveState = (typeof ArchiveState)[keyof typeof ArchiveState];
435
+ /**
436
+ * <p>An archive resource for storing and retaining emails.</p>
437
+ * @public
438
+ */
439
+ export interface Archive {
440
+ /**
441
+ * <p>The unique identifier of the archive.</p>
442
+ * @public
443
+ */
444
+ ArchiveId: string | undefined;
445
+ /**
446
+ * <p>The unique name assigned to the archive.</p>
447
+ * @public
448
+ */
449
+ ArchiveName?: string;
450
+ /**
451
+ * <p>The current state of the archive:</p>
452
+ * <ul>
453
+ * <li>
454
+ * <p>
455
+ * <code>ACTIVE</code> – The archive is ready and available for use. </p>
456
+ * </li>
457
+ * <li>
458
+ * <p>
459
+ * <code>PENDING_DELETION</code> – The archive has been marked for deletion
460
+ * and will be permanently deleted in 30 days. No further modifications can be made
461
+ * in this state. </p>
462
+ * </li>
463
+ * </ul>
464
+ * @public
465
+ */
466
+ ArchiveState?: ArchiveState;
467
+ /**
468
+ * <p>The timestamp of when the archive was last updated.</p>
469
+ * @public
470
+ */
471
+ LastUpdatedTimestamp?: Date;
472
+ }
473
+ /**
474
+ * <p>The action to archive the email by delivering the email to an Amazon SES archive.</p>
475
+ * @public
476
+ */
477
+ export interface ArchiveAction {
478
+ /**
479
+ * <p>A policy that states what to do in the case of failure. The action will fail if there
480
+ * are configuration errors. For example, the specified archive has been deleted.</p>
481
+ * @public
482
+ */
483
+ ActionFailurePolicy?: ActionFailurePolicy;
484
+ /**
485
+ * <p>The identifier of the archive to send the email to.</p>
486
+ * @public
487
+ */
488
+ TargetArchive: string | undefined;
489
+ }
490
+ /**
491
+ * @public
492
+ * @enum
493
+ */
494
+ export declare const ArchiveBooleanEmailAttribute: {
495
+ readonly HAS_ATTACHMENTS: "HAS_ATTACHMENTS";
496
+ };
497
+ /**
498
+ * @public
499
+ */
500
+ export type ArchiveBooleanEmailAttribute = (typeof ArchiveBooleanEmailAttribute)[keyof typeof ArchiveBooleanEmailAttribute];
501
+ /**
502
+ * <p>The attribute to evaluate in a boolean expression.</p>
503
+ * @public
504
+ */
505
+ export type ArchiveBooleanToEvaluate = ArchiveBooleanToEvaluate.AttributeMember | ArchiveBooleanToEvaluate.$UnknownMember;
506
+ /**
507
+ * @public
508
+ */
509
+ export declare namespace ArchiveBooleanToEvaluate {
510
+ /**
511
+ * <p>The name of the email attribute to evaluate.</p>
512
+ * @public
513
+ */
514
+ interface AttributeMember {
515
+ Attribute: ArchiveBooleanEmailAttribute;
516
+ $unknown?: never;
517
+ }
518
+ /**
519
+ * @public
520
+ */
521
+ interface $UnknownMember {
522
+ Attribute?: never;
523
+ $unknown: [string, any];
524
+ }
525
+ interface Visitor<T> {
526
+ Attribute: (value: ArchiveBooleanEmailAttribute) => T;
527
+ _: (name: string, value: any) => T;
528
+ }
529
+ const visit: <T>(value: ArchiveBooleanToEvaluate, visitor: Visitor<T>) => T;
530
+ }
531
+ /**
532
+ * @public
533
+ * @enum
534
+ */
535
+ export declare const ArchiveBooleanOperator: {
536
+ readonly IS_FALSE: "IS_FALSE";
537
+ readonly IS_TRUE: "IS_TRUE";
538
+ };
539
+ /**
540
+ * @public
541
+ */
542
+ export type ArchiveBooleanOperator = (typeof ArchiveBooleanOperator)[keyof typeof ArchiveBooleanOperator];
543
+ /**
544
+ * <p>A boolean expression to evaluate email attribute values.</p>
545
+ * @public
546
+ */
547
+ export interface ArchiveBooleanExpression {
548
+ /**
549
+ * <p>The email attribute value to evaluate.</p>
550
+ * @public
551
+ */
552
+ Evaluate: ArchiveBooleanToEvaluate | undefined;
553
+ /**
554
+ * <p>The boolean operator to use for evaluation.</p>
555
+ * @public
556
+ */
557
+ Operator: ArchiveBooleanOperator | undefined;
558
+ }
559
+ /**
560
+ * @public
561
+ * @enum
562
+ */
563
+ export declare const ArchiveStringEmailAttribute: {
564
+ readonly CC: "CC";
565
+ readonly FROM: "FROM";
566
+ readonly SUBJECT: "SUBJECT";
567
+ readonly TO: "TO";
568
+ };
569
+ /**
570
+ * @public
571
+ */
572
+ export type ArchiveStringEmailAttribute = (typeof ArchiveStringEmailAttribute)[keyof typeof ArchiveStringEmailAttribute];
573
+ /**
574
+ * <p>Specifies the email attribute to evaluate in a string expression.</p>
575
+ * @public
576
+ */
577
+ export type ArchiveStringToEvaluate = ArchiveStringToEvaluate.AttributeMember | ArchiveStringToEvaluate.$UnknownMember;
578
+ /**
579
+ * @public
580
+ */
581
+ export declare namespace ArchiveStringToEvaluate {
582
+ /**
583
+ * <p>The name of the email attribute to evaluate.</p>
584
+ * @public
585
+ */
586
+ interface AttributeMember {
587
+ Attribute: ArchiveStringEmailAttribute;
588
+ $unknown?: never;
589
+ }
590
+ /**
591
+ * @public
592
+ */
593
+ interface $UnknownMember {
594
+ Attribute?: never;
595
+ $unknown: [string, any];
596
+ }
597
+ interface Visitor<T> {
598
+ Attribute: (value: ArchiveStringEmailAttribute) => T;
599
+ _: (name: string, value: any) => T;
600
+ }
601
+ const visit: <T>(value: ArchiveStringToEvaluate, visitor: Visitor<T>) => T;
602
+ }
603
+ /**
604
+ * @public
605
+ * @enum
606
+ */
607
+ export declare const ArchiveStringOperator: {
608
+ readonly CONTAINS: "CONTAINS";
609
+ };
610
+ /**
611
+ * @public
612
+ */
613
+ export type ArchiveStringOperator = (typeof ArchiveStringOperator)[keyof typeof ArchiveStringOperator];
614
+ /**
615
+ * <p>A string expression to evaluate an email attribute value against one or more string values.</p>
616
+ * @public
617
+ */
618
+ export interface ArchiveStringExpression {
619
+ /**
620
+ * <p>The attribute of the email to evaluate.</p>
621
+ * @public
622
+ */
623
+ Evaluate: ArchiveStringToEvaluate | undefined;
624
+ /**
625
+ * <p>The operator to use when evaluating the string values.</p>
626
+ * @public
627
+ */
628
+ Operator: ArchiveStringOperator | undefined;
629
+ /**
630
+ * <p>The list of string values to evaluate the email attribute against.</p>
631
+ * @public
632
+ */
633
+ Values: string[] | undefined;
634
+ }
635
+ /**
636
+ * <p>A filter condition used to include or exclude emails when exporting from or searching an archive.</p>
637
+ * @public
638
+ */
639
+ export type ArchiveFilterCondition = ArchiveFilterCondition.BooleanExpressionMember | ArchiveFilterCondition.StringExpressionMember | ArchiveFilterCondition.$UnknownMember;
640
+ /**
641
+ * @public
642
+ */
643
+ export declare namespace ArchiveFilterCondition {
644
+ /**
645
+ * <p>A string expression to evaluate against email attributes.</p>
646
+ * @public
647
+ */
648
+ interface StringExpressionMember {
649
+ StringExpression: ArchiveStringExpression;
650
+ BooleanExpression?: never;
651
+ $unknown?: never;
652
+ }
653
+ /**
654
+ * <p>A boolean expression to evaluate against email attributes.</p>
655
+ * @public
656
+ */
657
+ interface BooleanExpressionMember {
658
+ StringExpression?: never;
659
+ BooleanExpression: ArchiveBooleanExpression;
660
+ $unknown?: never;
661
+ }
662
+ /**
663
+ * @public
664
+ */
665
+ interface $UnknownMember {
666
+ StringExpression?: never;
667
+ BooleanExpression?: never;
668
+ $unknown: [string, any];
669
+ }
670
+ interface Visitor<T> {
671
+ StringExpression: (value: ArchiveStringExpression) => T;
672
+ BooleanExpression: (value: ArchiveBooleanExpression) => T;
673
+ _: (name: string, value: any) => T;
674
+ }
675
+ const visit: <T>(value: ArchiveFilterCondition, visitor: Visitor<T>) => T;
676
+ }
677
+ /**
678
+ * <p>A set of filter conditions to include and/or exclude emails.</p>
679
+ * @public
680
+ */
681
+ export interface ArchiveFilters {
682
+ /**
683
+ * <p>The filter conditions for emails to include.</p>
684
+ * @public
685
+ */
686
+ Include?: ArchiveFilterCondition[];
687
+ /**
688
+ * <p>The filter conditions for emails to exclude.</p>
689
+ * @public
690
+ */
691
+ Unless?: ArchiveFilterCondition[];
692
+ }
693
+ /**
694
+ * @public
695
+ * @enum
696
+ */
697
+ export declare const RetentionPeriod: {
698
+ readonly EIGHTEEN_MONTHS: "EIGHTEEN_MONTHS";
699
+ readonly EIGHT_YEARS: "EIGHT_YEARS";
700
+ readonly FIVE_YEARS: "FIVE_YEARS";
701
+ readonly FOUR_YEARS: "FOUR_YEARS";
702
+ readonly NINE_MONTHS: "NINE_MONTHS";
703
+ readonly NINE_YEARS: "NINE_YEARS";
704
+ readonly ONE_YEAR: "ONE_YEAR";
705
+ readonly PERMANENT: "PERMANENT";
706
+ readonly SEVEN_YEARS: "SEVEN_YEARS";
707
+ readonly SIX_MONTHS: "SIX_MONTHS";
708
+ readonly SIX_YEARS: "SIX_YEARS";
709
+ readonly TEN_YEARS: "TEN_YEARS";
710
+ readonly THIRTY_MONTHS: "THIRTY_MONTHS";
711
+ readonly THREE_MONTHS: "THREE_MONTHS";
712
+ readonly THREE_YEARS: "THREE_YEARS";
713
+ readonly TWO_YEARS: "TWO_YEARS";
714
+ };
715
+ /**
716
+ * @public
717
+ */
718
+ export type RetentionPeriod = (typeof RetentionPeriod)[keyof typeof RetentionPeriod];
719
+ /**
720
+ * <p>The retention policy for an email archive that specifies how long emails are kept
721
+ * before being automatically deleted. </p>
722
+ * @public
723
+ */
724
+ export type ArchiveRetention = ArchiveRetention.RetentionPeriodMember | ArchiveRetention.$UnknownMember;
725
+ /**
726
+ * @public
727
+ */
728
+ export declare namespace ArchiveRetention {
729
+ /**
730
+ * <p>The enum value sets the period for retaining emails in an archive.</p>
731
+ * @public
732
+ */
733
+ interface RetentionPeriodMember {
734
+ RetentionPeriod: RetentionPeriod;
735
+ $unknown?: never;
736
+ }
737
+ /**
738
+ * @public
739
+ */
740
+ interface $UnknownMember {
741
+ RetentionPeriod?: never;
742
+ $unknown: [string, any];
743
+ }
744
+ interface Visitor<T> {
745
+ RetentionPeriod: (value: RetentionPeriod) => T;
746
+ _: (name: string, value: any) => T;
747
+ }
748
+ const visit: <T>(value: ArchiveRetention, visitor: Visitor<T>) => T;
749
+ }
750
+ /**
751
+ * <p>The request to create a new email archive.</p>
752
+ * @public
753
+ */
754
+ export interface CreateArchiveRequest {
755
+ /**
756
+ * <p>A unique token Amazon SES uses to recognize retries of this request.</p>
757
+ * @public
758
+ */
759
+ ClientToken?: string;
760
+ /**
761
+ * <p>A unique name for the new archive.</p>
762
+ * @public
763
+ */
764
+ ArchiveName: string | undefined;
765
+ /**
766
+ * <p>The period for retaining emails in the archive before automatic deletion.</p>
767
+ * @public
768
+ */
769
+ Retention?: ArchiveRetention;
770
+ /**
771
+ * <p>The Amazon Resource Name (ARN) of the KMS key for encrypting emails in the archive.</p>
772
+ * @public
773
+ */
774
+ KmsKeyArn?: string;
775
+ /**
776
+ * <p>The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.</p>
777
+ * @public
778
+ */
779
+ Tags?: Tag[];
780
+ }
781
+ /**
782
+ * <p>The response from creating a new email archive.</p>
783
+ * @public
784
+ */
785
+ export interface CreateArchiveResponse {
786
+ /**
787
+ * <p>The unique identifier for the newly created archive.</p>
788
+ * @public
789
+ */
790
+ ArchiveId: string | undefined;
791
+ }
792
+ /**
793
+ * <p>Occurs when a service's request rate limit is exceeded, resulting in throttling of further requests.</p>
794
+ * @public
795
+ */
796
+ export declare class ThrottlingException extends __BaseException {
797
+ readonly name: "ThrottlingException";
798
+ readonly $fault: "client";
799
+ Message?: string;
800
+ /**
801
+ * @internal
802
+ */
803
+ constructor(opts: __ExceptionOptionType<ThrottlingException, __BaseException>);
804
+ }
805
+ /**
806
+ * <p>The request to initiate deletion of an email archive.</p>
807
+ * @public
808
+ */
809
+ export interface DeleteArchiveRequest {
810
+ /**
811
+ * <p>The identifier of the archive to delete.</p>
812
+ * @public
813
+ */
814
+ ArchiveId: string | undefined;
815
+ }
816
+ /**
817
+ * <p>The response indicating if the archive deletion was successfully initiated.</p>
818
+ * <p>On success, returns an HTTP 200 status code. On failure, returns an error
819
+ * message.</p>
820
+ * @public
821
+ */
822
+ export interface DeleteArchiveResponse {
823
+ }
824
+ /**
825
+ * <p>The request to retrieve details of an email archive.</p>
826
+ * @public
827
+ */
828
+ export interface GetArchiveRequest {
829
+ /**
830
+ * <p>The identifier of the archive to retrieve.</p>
831
+ * @public
832
+ */
833
+ ArchiveId: string | undefined;
834
+ }
835
+ /**
836
+ * <p>The response containing details of the requested archive.</p>
837
+ * @public
838
+ */
839
+ export interface GetArchiveResponse {
840
+ /**
841
+ * <p>The unique identifier of the archive.</p>
842
+ * @public
843
+ */
844
+ ArchiveId: string | undefined;
845
+ /**
846
+ * <p>The unique name assigned to the archive.</p>
847
+ * @public
848
+ */
849
+ ArchiveName: string | undefined;
850
+ /**
851
+ * <p>The Amazon Resource Name (ARN) of the archive.</p>
852
+ * @public
853
+ */
854
+ ArchiveArn: string | undefined;
855
+ /**
856
+ * <p>The current state of the archive:</p>
857
+ * <ul>
858
+ * <li>
859
+ * <p>
860
+ * <code>ACTIVE</code> – The archive is ready and available for use. </p>
861
+ * </li>
862
+ * <li>
863
+ * <p>
864
+ * <code>PENDING_DELETION</code> – The archive has been marked for deletion
865
+ * and will be permanently deleted in 30 days. No further modifications can be made
866
+ * in this state. </p>
867
+ * </li>
868
+ * </ul>
869
+ * @public
870
+ */
871
+ ArchiveState: ArchiveState | undefined;
872
+ /**
873
+ * <p>The retention period for emails in this archive.</p>
874
+ * @public
875
+ */
876
+ Retention: ArchiveRetention | undefined;
877
+ /**
878
+ * <p>The timestamp of when the archive was created.</p>
879
+ * @public
880
+ */
881
+ CreatedTimestamp?: Date;
882
+ /**
883
+ * <p>The timestamp of when the archive was modified.</p>
884
+ * @public
885
+ */
886
+ LastUpdatedTimestamp?: Date;
887
+ /**
888
+ * <p>The Amazon Resource Name (ARN) of the KMS key used to encrypt the archive.</p>
889
+ * @public
890
+ */
891
+ KmsKeyArn?: string;
892
+ }
893
+ /**
894
+ * <p>The request to list email archives in your account.</p>
895
+ * @public
896
+ */
897
+ export interface ListArchivesRequest {
898
+ /**
899
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is
900
+ * a unique pagination token for each page. Make the call again using the returned token to
901
+ * retrieve the next page. </p>
902
+ * @public
903
+ */
904
+ NextToken?: string;
905
+ /**
906
+ * <p>The maximum number of archives that are returned per call. You can use NextToken to
907
+ * obtain further pages of archives. </p>
908
+ * @public
909
+ */
910
+ PageSize?: number;
911
+ }
912
+ /**
913
+ * <p>The response containing a list of your email archives.</p>
914
+ * @public
915
+ */
916
+ export interface ListArchivesResponse {
917
+ /**
918
+ * <p>The list of archive details.</p>
919
+ * @public
920
+ */
921
+ Archives: Archive[] | undefined;
922
+ /**
923
+ * <p>If present, use to retrieve the next page of results.</p>
924
+ * @public
925
+ */
926
+ NextToken?: string;
927
+ }
928
+ /**
929
+ * <p>The request to update properties of an existing email archive.</p>
930
+ * @public
931
+ */
932
+ export interface UpdateArchiveRequest {
933
+ /**
934
+ * <p>The identifier of the archive to update.</p>
935
+ * @public
936
+ */
937
+ ArchiveId: string | undefined;
938
+ /**
939
+ * <p>A new, unique name for the archive.</p>
940
+ * @public
941
+ */
942
+ ArchiveName?: string;
943
+ /**
944
+ * <p>A new retention period for emails in the archive.</p>
945
+ * @public
946
+ */
947
+ Retention?: ArchiveRetention;
948
+ }
949
+ /**
950
+ * <p>The response indicating if the archive update succeeded or failed.</p>
951
+ * <p>On success, returns an HTTP 200 status code. On failure, returns an error
952
+ * message.</p>
953
+ * @public
954
+ */
955
+ export interface UpdateArchiveResponse {
956
+ }
957
+ /**
958
+ * <p>The configuration of the ingress endpoint resource.</p>
959
+ * @public
960
+ */
961
+ export type IngressPointConfiguration = IngressPointConfiguration.SecretArnMember | IngressPointConfiguration.SmtpPasswordMember | IngressPointConfiguration.$UnknownMember;
962
+ /**
963
+ * @public
964
+ */
965
+ export declare namespace IngressPointConfiguration {
966
+ /**
967
+ * <p>The password of the ingress endpoint resource.</p>
968
+ * @public
969
+ */
970
+ interface SmtpPasswordMember {
971
+ SmtpPassword: string;
972
+ SecretArn?: never;
973
+ $unknown?: never;
974
+ }
975
+ /**
976
+ * <p>The SecretsManager::Secret ARN of the ingress endpoint resource.</p>
977
+ * @public
978
+ */
979
+ interface SecretArnMember {
980
+ SmtpPassword?: never;
981
+ SecretArn: string;
982
+ $unknown?: never;
983
+ }
984
+ /**
985
+ * @public
986
+ */
987
+ interface $UnknownMember {
988
+ SmtpPassword?: never;
989
+ SecretArn?: never;
990
+ $unknown: [string, any];
991
+ }
992
+ interface Visitor<T> {
993
+ SmtpPassword: (value: string) => T;
994
+ SecretArn: (value: string) => T;
995
+ _: (name: string, value: any) => T;
996
+ }
997
+ const visit: <T>(value: IngressPointConfiguration, visitor: Visitor<T>) => T;
998
+ }
999
+ /**
1000
+ * @public
1001
+ * @enum
1002
+ */
1003
+ export declare const IngressPointType: {
1004
+ readonly AUTH: "AUTH";
1005
+ readonly OPEN: "OPEN";
1006
+ };
1007
+ /**
1008
+ * @public
1009
+ */
1010
+ export type IngressPointType = (typeof IngressPointType)[keyof typeof IngressPointType];
1011
+ /**
1012
+ * @public
1013
+ */
1014
+ export interface CreateIngressPointRequest {
1015
+ /**
1016
+ * <p>A unique token that Amazon SES uses to recognize subsequent retries of the same
1017
+ * request.</p>
1018
+ * @public
1019
+ */
1020
+ ClientToken?: string;
1021
+ /**
1022
+ * <p>A user friendly name for an ingress endpoint resource.</p>
1023
+ * @public
1024
+ */
1025
+ IngressPointName: string | undefined;
1026
+ /**
1027
+ * <p>The type of the ingress endpoint to create.</p>
1028
+ * @public
1029
+ */
1030
+ Type: IngressPointType | undefined;
1031
+ /**
1032
+ * <p>The identifier of an existing rule set that you attach to an ingress endpoint
1033
+ * resource.</p>
1034
+ * @public
1035
+ */
1036
+ RuleSetId: string | undefined;
1037
+ /**
1038
+ * <p>The identifier of an existing traffic policy that you attach to an ingress endpoint
1039
+ * resource.</p>
1040
+ * @public
1041
+ */
1042
+ TrafficPolicyId: string | undefined;
1043
+ /**
1044
+ * <p>If you choose an Authenticated ingress endpoint, you must configure either an SMTP password or a secret
1045
+ * ARN.</p>
1046
+ * @public
1047
+ */
1048
+ IngressPointConfiguration?: IngressPointConfiguration;
1049
+ /**
1050
+ * <p>The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.</p>
1051
+ * @public
1052
+ */
1053
+ Tags?: Tag[];
1054
+ }
1055
+ /**
1056
+ * @public
1057
+ */
1058
+ export interface CreateIngressPointResponse {
1059
+ /**
1060
+ * <p>The unique identifier for a previously created ingress endpoint.</p>
1061
+ * @public
1062
+ */
1063
+ IngressPointId: string | undefined;
1064
+ }
1065
+ /**
1066
+ * <p>Explicitly indicate that the relay destination server does not require SMTP credential authentication.</p>
1067
+ * @public
1068
+ */
1069
+ export interface NoAuthentication {
1070
+ }
1071
+ /**
1072
+ * <p>Authentication for the relay destination server—specify the secretARN where the SMTP credentials are stored,
1073
+ * or specify an empty NoAuthentication structure if the relay destination server does not require SMTP credential authentication.</p>
1074
+ * @public
1075
+ */
1076
+ export type RelayAuthentication = RelayAuthentication.NoAuthenticationMember | RelayAuthentication.SecretArnMember | RelayAuthentication.$UnknownMember;
1077
+ /**
1078
+ * @public
1079
+ */
1080
+ export declare namespace RelayAuthentication {
1081
+ /**
1082
+ * <p>The ARN of the secret created in secrets manager where the relay server's SMTP credentials are stored.</p>
1083
+ * @public
1084
+ */
1085
+ interface SecretArnMember {
1086
+ SecretArn: string;
1087
+ NoAuthentication?: never;
1088
+ $unknown?: never;
1089
+ }
1090
+ /**
1091
+ * <p>Keep an empty structure if the relay destination server does not require SMTP credential authentication.</p>
1092
+ * @public
1093
+ */
1094
+ interface NoAuthenticationMember {
1095
+ SecretArn?: never;
1096
+ NoAuthentication: NoAuthentication;
1097
+ $unknown?: never;
1098
+ }
1099
+ /**
1100
+ * @public
1101
+ */
1102
+ interface $UnknownMember {
1103
+ SecretArn?: never;
1104
+ NoAuthentication?: never;
1105
+ $unknown: [string, any];
1106
+ }
1107
+ interface Visitor<T> {
1108
+ SecretArn: (value: string) => T;
1109
+ NoAuthentication: (value: NoAuthentication) => T;
1110
+ _: (name: string, value: any) => T;
1111
+ }
1112
+ const visit: <T>(value: RelayAuthentication, visitor: Visitor<T>) => T;
1113
+ }
1114
+ /**
1115
+ * @public
1116
+ */
1117
+ export interface CreateRelayRequest {
1118
+ /**
1119
+ * <p>A unique token that Amazon SES uses to recognize subsequent retries of the same
1120
+ * request.</p>
1121
+ * @public
1122
+ */
1123
+ ClientToken?: string;
1124
+ /**
1125
+ * <p>The unique name of the relay resource.</p>
1126
+ * @public
1127
+ */
1128
+ RelayName: string | undefined;
1129
+ /**
1130
+ * <p>The destination relay server address.</p>
1131
+ * @public
1132
+ */
1133
+ ServerName: string | undefined;
1134
+ /**
1135
+ * <p>The destination relay server port.</p>
1136
+ * @public
1137
+ */
1138
+ ServerPort: number | undefined;
1139
+ /**
1140
+ * <p>Authentication for the relay destination server—specify the secretARN where
1141
+ * the SMTP credentials are stored.</p>
1142
+ * @public
1143
+ */
1144
+ Authentication: RelayAuthentication | undefined;
1145
+ /**
1146
+ * <p>The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.</p>
1147
+ * @public
1148
+ */
1149
+ Tags?: Tag[];
1150
+ }
1151
+ /**
1152
+ * @public
1153
+ */
1154
+ export interface CreateRelayResponse {
1155
+ /**
1156
+ * <p>A unique identifier of the created relay resource.</p>
1157
+ * @public
1158
+ */
1159
+ RelayId: string | undefined;
1160
+ }
1161
+ /**
1162
+ * <p>This action to delivers an email to a mailbox.</p>
1163
+ * @public
1164
+ */
1165
+ export interface DeliverToMailboxAction {
1166
+ /**
1167
+ * <p>A policy that states what to do in the case of failure. The action will fail if there
1168
+ * are configuration errors. For example, the mailbox ARN is no longer valid.</p>
1169
+ * @public
1170
+ */
1171
+ ActionFailurePolicy?: ActionFailurePolicy;
1172
+ /**
1173
+ * <p>The Amazon Resource Name (ARN) of a WorkMail organization to deliver the email to.</p>
1174
+ * @public
1175
+ */
1176
+ MailboxArn: string | undefined;
1177
+ /**
1178
+ * <p>The Amazon Resource Name (ARN) of an IAM role to use to execute this action. The role must have access to
1179
+ * the workmail:DeliverToMailbox API.</p>
1180
+ * @public
1181
+ */
1182
+ RoleArn: string | undefined;
1183
+ }
1184
+ /**
1185
+ * <p>This action causes processing to stop and the email to be dropped. If the action
1186
+ * applies only to certain recipients, only those recipients are dropped, and processing
1187
+ * continues for other recipients.</p>
1188
+ * @public
1189
+ */
1190
+ export interface DropAction {
1191
+ }
1192
+ /**
1193
+ * @public
1194
+ * @enum
1195
+ */
1196
+ export declare const MailFrom: {
1197
+ readonly PRESERVE: "PRESERVE";
1198
+ readonly REPLACE: "REPLACE";
1199
+ };
1200
+ /**
1201
+ * @public
1202
+ */
1203
+ export type MailFrom = (typeof MailFrom)[keyof typeof MailFrom];
1204
+ /**
1205
+ * <p>The action relays the email via SMTP to another specific SMTP server.</p>
1206
+ * @public
1207
+ */
1208
+ export interface RelayAction {
1209
+ /**
1210
+ * <p>A policy that states what to do in the case of failure. The action will fail if there
1211
+ * are configuration errors. For example, the specified relay has been deleted.</p>
1212
+ * @public
1213
+ */
1214
+ ActionFailurePolicy?: ActionFailurePolicy;
1215
+ /**
1216
+ * <p>The identifier of the relay resource to be used when relaying an email.</p>
1217
+ * @public
1218
+ */
1219
+ Relay: string | undefined;
1220
+ /**
1221
+ * <p>This action specifies whether to preserve or replace original mail from address while
1222
+ * relaying received emails to a destination server.</p>
1223
+ * @public
1224
+ */
1225
+ MailFrom?: MailFrom;
1226
+ }
1227
+ /**
1228
+ * <p>This action replaces the email envelope recipients with the given list of recipients.
1229
+ * If the condition of this action applies only to a subset of recipients, only those
1230
+ * recipients are replaced with the recipients specified in the action. The message
1231
+ * contents and headers are unaffected by this action, only the envelope recipients are
1232
+ * updated.</p>
1233
+ * @public
1234
+ */
1235
+ export interface ReplaceRecipientAction {
1236
+ /**
1237
+ * <p>This action specifies the replacement recipient email addresses to insert.</p>
1238
+ * @public
1239
+ */
1240
+ ReplaceWith?: string[];
1241
+ }
1242
+ /**
1243
+ * <p>Sends the email to the internet using the ses:SendRawEmail API.</p>
1244
+ * @public
1245
+ */
1246
+ export interface SendAction {
1247
+ /**
1248
+ * <p>A policy that states what to do in the case of failure. The action will fail if there
1249
+ * are configuration errors. For example, the caller does not have the permissions to call
1250
+ * the sendRawEmail API.</p>
1251
+ * @public
1252
+ */
1253
+ ActionFailurePolicy?: ActionFailurePolicy;
1254
+ /**
1255
+ * <p>The Amazon Resource Name (ARN) of the role to use for this action. This role must have access to the
1256
+ * ses:SendRawEmail API.</p>
1257
+ * @public
1258
+ */
1259
+ RoleArn: string | undefined;
1260
+ }
1261
+ /**
1262
+ * <p>Writes the MIME content of the email to an S3 bucket.</p>
1263
+ * @public
1264
+ */
1265
+ export interface S3Action {
1266
+ /**
1267
+ * <p>A policy that states what to do in the case of failure. The action will fail if there
1268
+ * are configuration errors. For example, the specified the bucket has been deleted.</p>
1269
+ * @public
1270
+ */
1271
+ ActionFailurePolicy?: ActionFailurePolicy;
1272
+ /**
1273
+ * <p>The Amazon Resource Name (ARN) of the IAM Role to use while writing to S3. This role must have access to
1274
+ * the s3:PutObject, kms:Encrypt, and kms:GenerateDataKey APIs for the given bucket.</p>
1275
+ * @public
1276
+ */
1277
+ RoleArn: string | undefined;
1278
+ /**
1279
+ * <p>The bucket name of the S3 bucket to write to.</p>
1280
+ * @public
1281
+ */
1282
+ S3Bucket: string | undefined;
1283
+ /**
1284
+ * <p>The S3 prefix to use for the write to the s3 bucket.</p>
1285
+ * @public
1286
+ */
1287
+ S3Prefix?: string;
1288
+ /**
1289
+ * <p>The KMS Key ID to use to encrypt the message in S3.</p>
1290
+ * @public
1291
+ */
1292
+ S3SseKmsKeyId?: string;
1293
+ }
1294
+ /**
1295
+ * <p>The action for a rule to take. Only one of the contained actions can be set.</p>
1296
+ * @public
1297
+ */
1298
+ export type RuleAction = RuleAction.AddHeaderMember | RuleAction.ArchiveMember | RuleAction.DeliverToMailboxMember | RuleAction.DropMember | RuleAction.RelayMember | RuleAction.ReplaceRecipientMember | RuleAction.SendMember | RuleAction.WriteToS3Member | RuleAction.$UnknownMember;
1299
+ /**
1300
+ * @public
1301
+ */
1302
+ export declare namespace RuleAction {
1303
+ /**
1304
+ * <p>This action terminates the evaluation of rules in the rule set.</p>
1305
+ * @public
1306
+ */
1307
+ interface DropMember {
1308
+ Drop: DropAction;
1309
+ Relay?: never;
1310
+ Archive?: never;
1311
+ WriteToS3?: never;
1312
+ Send?: never;
1313
+ AddHeader?: never;
1314
+ ReplaceRecipient?: never;
1315
+ DeliverToMailbox?: never;
1316
+ $unknown?: never;
1317
+ }
1318
+ /**
1319
+ * <p>This action relays the email to another SMTP server.</p>
1320
+ * @public
1321
+ */
1322
+ interface RelayMember {
1323
+ Drop?: never;
1324
+ Relay: RelayAction;
1325
+ Archive?: never;
1326
+ WriteToS3?: never;
1327
+ Send?: never;
1328
+ AddHeader?: never;
1329
+ ReplaceRecipient?: never;
1330
+ DeliverToMailbox?: never;
1331
+ $unknown?: never;
1332
+ }
1333
+ /**
1334
+ * <p>This action archives the email. This can be used to deliver an email to an
1335
+ * archive.</p>
1336
+ * @public
1337
+ */
1338
+ interface ArchiveMember {
1339
+ Drop?: never;
1340
+ Relay?: never;
1341
+ Archive: ArchiveAction;
1342
+ WriteToS3?: never;
1343
+ Send?: never;
1344
+ AddHeader?: never;
1345
+ ReplaceRecipient?: never;
1346
+ DeliverToMailbox?: never;
1347
+ $unknown?: never;
1348
+ }
1349
+ /**
1350
+ * <p>This action writes the MIME content of the email to an S3 bucket.</p>
1351
+ * @public
1352
+ */
1353
+ interface WriteToS3Member {
1354
+ Drop?: never;
1355
+ Relay?: never;
1356
+ Archive?: never;
1357
+ WriteToS3: S3Action;
1358
+ Send?: never;
1359
+ AddHeader?: never;
1360
+ ReplaceRecipient?: never;
1361
+ DeliverToMailbox?: never;
1362
+ $unknown?: never;
1363
+ }
1364
+ /**
1365
+ * <p>This action sends the email to the internet.</p>
1366
+ * @public
1367
+ */
1368
+ interface SendMember {
1369
+ Drop?: never;
1370
+ Relay?: never;
1371
+ Archive?: never;
1372
+ WriteToS3?: never;
1373
+ Send: SendAction;
1374
+ AddHeader?: never;
1375
+ ReplaceRecipient?: never;
1376
+ DeliverToMailbox?: never;
1377
+ $unknown?: never;
1378
+ }
1379
+ /**
1380
+ * <p>This action adds a header. This can be used to add arbitrary email headers.</p>
1381
+ * @public
1382
+ */
1383
+ interface AddHeaderMember {
1384
+ Drop?: never;
1385
+ Relay?: never;
1386
+ Archive?: never;
1387
+ WriteToS3?: never;
1388
+ Send?: never;
1389
+ AddHeader: AddHeaderAction;
1390
+ ReplaceRecipient?: never;
1391
+ DeliverToMailbox?: never;
1392
+ $unknown?: never;
1393
+ }
1394
+ /**
1395
+ * <p>The action replaces certain or all recipients with a different set of
1396
+ * recipients.</p>
1397
+ * @public
1398
+ */
1399
+ interface ReplaceRecipientMember {
1400
+ Drop?: never;
1401
+ Relay?: never;
1402
+ Archive?: never;
1403
+ WriteToS3?: never;
1404
+ Send?: never;
1405
+ AddHeader?: never;
1406
+ ReplaceRecipient: ReplaceRecipientAction;
1407
+ DeliverToMailbox?: never;
1408
+ $unknown?: never;
1409
+ }
1410
+ /**
1411
+ * <p>This action delivers an email to a WorkMail mailbox.</p>
1412
+ * @public
1413
+ */
1414
+ interface DeliverToMailboxMember {
1415
+ Drop?: never;
1416
+ Relay?: never;
1417
+ Archive?: never;
1418
+ WriteToS3?: never;
1419
+ Send?: never;
1420
+ AddHeader?: never;
1421
+ ReplaceRecipient?: never;
1422
+ DeliverToMailbox: DeliverToMailboxAction;
1423
+ $unknown?: never;
1424
+ }
1425
+ /**
1426
+ * @public
1427
+ */
1428
+ interface $UnknownMember {
1429
+ Drop?: never;
1430
+ Relay?: never;
1431
+ Archive?: never;
1432
+ WriteToS3?: never;
1433
+ Send?: never;
1434
+ AddHeader?: never;
1435
+ ReplaceRecipient?: never;
1436
+ DeliverToMailbox?: never;
1437
+ $unknown: [string, any];
1438
+ }
1439
+ interface Visitor<T> {
1440
+ Drop: (value: DropAction) => T;
1441
+ Relay: (value: RelayAction) => T;
1442
+ Archive: (value: ArchiveAction) => T;
1443
+ WriteToS3: (value: S3Action) => T;
1444
+ Send: (value: SendAction) => T;
1445
+ AddHeader: (value: AddHeaderAction) => T;
1446
+ ReplaceRecipient: (value: ReplaceRecipientAction) => T;
1447
+ DeliverToMailbox: (value: DeliverToMailboxAction) => T;
1448
+ _: (name: string, value: any) => T;
1449
+ }
1450
+ const visit: <T>(value: RuleAction, visitor: Visitor<T>) => T;
1451
+ }
1452
+ /**
1453
+ * @public
1454
+ * @enum
1455
+ */
1456
+ export declare const RuleBooleanEmailAttribute: {
1457
+ readonly READ_RECEIPT_REQUESTED: "READ_RECEIPT_REQUESTED";
1458
+ readonly TLS: "TLS";
1459
+ readonly TLS_WRAPPED: "TLS_WRAPPED";
1460
+ };
1461
+ /**
1462
+ * @public
1463
+ */
1464
+ export type RuleBooleanEmailAttribute = (typeof RuleBooleanEmailAttribute)[keyof typeof RuleBooleanEmailAttribute];
1465
+ /**
1466
+ * <p>The union type representing the allowed types of operands for a boolean
1467
+ * condition.</p>
1468
+ * @public
1469
+ */
1470
+ export type RuleBooleanToEvaluate = RuleBooleanToEvaluate.AttributeMember | RuleBooleanToEvaluate.$UnknownMember;
1471
+ /**
1472
+ * @public
1473
+ */
1474
+ export declare namespace RuleBooleanToEvaluate {
1475
+ /**
1476
+ * <p>The boolean type representing the allowed attribute types for an email.</p>
1477
+ * @public
1478
+ */
1479
+ interface AttributeMember {
1480
+ Attribute: RuleBooleanEmailAttribute;
1481
+ $unknown?: never;
1482
+ }
1483
+ /**
1484
+ * @public
1485
+ */
1486
+ interface $UnknownMember {
1487
+ Attribute?: never;
1488
+ $unknown: [string, any];
1489
+ }
1490
+ interface Visitor<T> {
1491
+ Attribute: (value: RuleBooleanEmailAttribute) => T;
1492
+ _: (name: string, value: any) => T;
1493
+ }
1494
+ const visit: <T>(value: RuleBooleanToEvaluate, visitor: Visitor<T>) => T;
1495
+ }
1496
+ /**
1497
+ * @public
1498
+ * @enum
1499
+ */
1500
+ export declare const RuleBooleanOperator: {
1501
+ readonly IS_FALSE: "IS_FALSE";
1502
+ readonly IS_TRUE: "IS_TRUE";
1503
+ };
1504
+ /**
1505
+ * @public
1506
+ */
1507
+ export type RuleBooleanOperator = (typeof RuleBooleanOperator)[keyof typeof RuleBooleanOperator];
1508
+ /**
1509
+ * <p>A boolean expression to be used in a rule condition.</p>
1510
+ * @public
1511
+ */
1512
+ export interface RuleBooleanExpression {
1513
+ /**
1514
+ * <p>The operand on which to perform a boolean condition operation.</p>
1515
+ * @public
1516
+ */
1517
+ Evaluate: RuleBooleanToEvaluate | undefined;
1518
+ /**
1519
+ * <p>The matching operator for a boolean condition expression.</p>
1520
+ * @public
1521
+ */
1522
+ Operator: RuleBooleanOperator | undefined;
1523
+ }
1524
+ /**
1525
+ * @public
1526
+ * @enum
1527
+ */
1528
+ export declare const RuleDmarcOperator: {
1529
+ readonly EQUALS: "EQUALS";
1530
+ readonly NOT_EQUALS: "NOT_EQUALS";
1531
+ };
1532
+ /**
1533
+ * @public
1534
+ */
1535
+ export type RuleDmarcOperator = (typeof RuleDmarcOperator)[keyof typeof RuleDmarcOperator];
1536
+ /**
1537
+ * @public
1538
+ * @enum
1539
+ */
1540
+ export declare const RuleDmarcPolicy: {
1541
+ readonly NONE: "NONE";
1542
+ readonly QUARANTINE: "QUARANTINE";
1543
+ readonly REJECT: "REJECT";
1544
+ };
1545
+ /**
1546
+ * @public
1547
+ */
1548
+ export type RuleDmarcPolicy = (typeof RuleDmarcPolicy)[keyof typeof RuleDmarcPolicy];
1549
+ /**
1550
+ * <p>A DMARC policy expression. The condition matches if the given DMARC policy matches
1551
+ * that of the incoming email.</p>
1552
+ * @public
1553
+ */
1554
+ export interface RuleDmarcExpression {
1555
+ /**
1556
+ * <p>The operator to apply to the DMARC policy of the incoming email.</p>
1557
+ * @public
1558
+ */
1559
+ Operator: RuleDmarcOperator | undefined;
1560
+ /**
1561
+ * <p>The values to use for the given DMARC policy operator. For the operator EQUALS, if
1562
+ * multiple values are given, they are evaluated as an OR. That is, if any of the given
1563
+ * values match, the condition is deemed to match. For the operator NOT_EQUALS, if multiple
1564
+ * values are given, they are evaluated as an AND. That is, only if the email's DMARC
1565
+ * policy is not equal to any of the given values, then the condition is deemed to
1566
+ * match.</p>
1567
+ * @public
1568
+ */
1569
+ Values: RuleDmarcPolicy[] | undefined;
1570
+ }
1571
+ /**
1572
+ * @public
1573
+ * @enum
1574
+ */
1575
+ export declare const RuleIpEmailAttribute: {
1576
+ readonly SOURCE_IP: "SOURCE_IP";
1577
+ };
1578
+ /**
1579
+ * @public
1580
+ */
1581
+ export type RuleIpEmailAttribute = (typeof RuleIpEmailAttribute)[keyof typeof RuleIpEmailAttribute];
1582
+ /**
1583
+ * <p>The IP address to evaluate for this condition.</p>
1584
+ * @public
1585
+ */
1586
+ export type RuleIpToEvaluate = RuleIpToEvaluate.AttributeMember | RuleIpToEvaluate.$UnknownMember;
1587
+ /**
1588
+ * @public
1589
+ */
1590
+ export declare namespace RuleIpToEvaluate {
1591
+ /**
1592
+ * <p>The attribute of the email to evaluate.</p>
1593
+ * @public
1594
+ */
1595
+ interface AttributeMember {
1596
+ Attribute: RuleIpEmailAttribute;
1597
+ $unknown?: never;
1598
+ }
1599
+ /**
1600
+ * @public
1601
+ */
1602
+ interface $UnknownMember {
1603
+ Attribute?: never;
1604
+ $unknown: [string, any];
1605
+ }
1606
+ interface Visitor<T> {
1607
+ Attribute: (value: RuleIpEmailAttribute) => T;
1608
+ _: (name: string, value: any) => T;
1609
+ }
1610
+ const visit: <T>(value: RuleIpToEvaluate, visitor: Visitor<T>) => T;
1611
+ }
1612
+ /**
1613
+ * @public
1614
+ * @enum
1615
+ */
1616
+ export declare const RuleIpOperator: {
1617
+ readonly CIDR_MATCHES: "CIDR_MATCHES";
1618
+ readonly NOT_CIDR_MATCHES: "NOT_CIDR_MATCHES";
1619
+ };
1620
+ /**
1621
+ * @public
1622
+ */
1623
+ export type RuleIpOperator = (typeof RuleIpOperator)[keyof typeof RuleIpOperator];
1624
+ /**
1625
+ * <p>An IP address expression matching certain IP addresses within a given range of IP
1626
+ * addresses.</p>
1627
+ * @public
1628
+ */
1629
+ export interface RuleIpExpression {
1630
+ /**
1631
+ * <p>The IP address to evaluate in this condition.</p>
1632
+ * @public
1633
+ */
1634
+ Evaluate: RuleIpToEvaluate | undefined;
1635
+ /**
1636
+ * <p>The operator to evaluate the IP address.</p>
1637
+ * @public
1638
+ */
1639
+ Operator: RuleIpOperator | undefined;
1640
+ /**
1641
+ * <p>The IP CIDR blocks in format "x.y.z.w/n" (eg 10.0.0.0/8) to match with the
1642
+ * email's IP address. For the operator CIDR_MATCHES, if multiple values are given, they
1643
+ * are evaluated as an OR. That is, if the IP address is contained within any of the given
1644
+ * CIDR ranges, the condition is deemed to match. For NOT_CIDR_MATCHES, if multiple CIDR
1645
+ * ranges are given, the condition is deemed to match if the IP address is not contained in
1646
+ * any of the given CIDR ranges.</p>
1647
+ * @public
1648
+ */
1649
+ Values: string[] | undefined;
1650
+ }
1651
+ /**
1652
+ * @public
1653
+ * @enum
1654
+ */
1655
+ export declare const RuleNumberEmailAttribute: {
1656
+ readonly MESSAGE_SIZE: "MESSAGE_SIZE";
1657
+ };
1658
+ /**
1659
+ * @public
1660
+ */
1661
+ export type RuleNumberEmailAttribute = (typeof RuleNumberEmailAttribute)[keyof typeof RuleNumberEmailAttribute];
1662
+ /**
1663
+ * <p>The number to evaluate in a numeric condition expression.</p>
1664
+ * @public
1665
+ */
1666
+ export type RuleNumberToEvaluate = RuleNumberToEvaluate.AttributeMember | RuleNumberToEvaluate.$UnknownMember;
1667
+ /**
1668
+ * @public
1669
+ */
1670
+ export declare namespace RuleNumberToEvaluate {
1671
+ /**
1672
+ * <p>An email attribute that is used as the number to evaluate.</p>
1673
+ * @public
1674
+ */
1675
+ interface AttributeMember {
1676
+ Attribute: RuleNumberEmailAttribute;
1677
+ $unknown?: never;
1678
+ }
1679
+ /**
1680
+ * @public
1681
+ */
1682
+ interface $UnknownMember {
1683
+ Attribute?: never;
1684
+ $unknown: [string, any];
1685
+ }
1686
+ interface Visitor<T> {
1687
+ Attribute: (value: RuleNumberEmailAttribute) => T;
1688
+ _: (name: string, value: any) => T;
1689
+ }
1690
+ const visit: <T>(value: RuleNumberToEvaluate, visitor: Visitor<T>) => T;
1691
+ }
1692
+ /**
1693
+ * @public
1694
+ * @enum
1695
+ */
1696
+ export declare const RuleNumberOperator: {
1697
+ readonly EQUALS: "EQUALS";
1698
+ readonly GREATER_THAN: "GREATER_THAN";
1699
+ readonly GREATER_THAN_OR_EQUAL: "GREATER_THAN_OR_EQUAL";
1700
+ readonly LESS_THAN: "LESS_THAN";
1701
+ readonly LESS_THAN_OR_EQUAL: "LESS_THAN_OR_EQUAL";
1702
+ readonly NOT_EQUALS: "NOT_EQUALS";
1703
+ };
1704
+ /**
1705
+ * @public
1706
+ */
1707
+ export type RuleNumberOperator = (typeof RuleNumberOperator)[keyof typeof RuleNumberOperator];
1708
+ /**
1709
+ * <p>A number expression to match numeric conditions with integers from the incoming
1710
+ * email.</p>
1711
+ * @public
1712
+ */
1713
+ export interface RuleNumberExpression {
1714
+ /**
1715
+ * <p>The number to evaluate in a numeric condition expression.</p>
1716
+ * @public
1717
+ */
1718
+ Evaluate: RuleNumberToEvaluate | undefined;
1719
+ /**
1720
+ * <p>The operator for a numeric condition expression.</p>
1721
+ * @public
1722
+ */
1723
+ Operator: RuleNumberOperator | undefined;
1724
+ /**
1725
+ * <p>The value to evaluate in a numeric condition expression.</p>
1726
+ * @public
1727
+ */
1728
+ Value: number | undefined;
1729
+ }
1730
+ /**
1731
+ * @public
1732
+ * @enum
1733
+ */
1734
+ export declare const RuleStringEmailAttribute: {
1735
+ readonly CC: "CC";
1736
+ readonly FROM: "FROM";
1737
+ readonly HELO: "HELO";
1738
+ readonly MAIL_FROM: "MAIL_FROM";
1739
+ readonly RECIPIENT: "RECIPIENT";
1740
+ readonly SENDER: "SENDER";
1741
+ readonly SUBJECT: "SUBJECT";
1742
+ readonly TO: "TO";
1743
+ };
1744
+ /**
1745
+ * @public
1746
+ */
1747
+ export type RuleStringEmailAttribute = (typeof RuleStringEmailAttribute)[keyof typeof RuleStringEmailAttribute];
1748
+ /**
1749
+ * <p>The string to evaluate in a string condition expression.</p>
1750
+ * @public
1751
+ */
1752
+ export type RuleStringToEvaluate = RuleStringToEvaluate.AttributeMember | RuleStringToEvaluate.$UnknownMember;
1753
+ /**
1754
+ * @public
1755
+ */
1756
+ export declare namespace RuleStringToEvaluate {
1757
+ /**
1758
+ * <p>The email attribute to evaluate in a string condition expression.</p>
1759
+ * @public
1760
+ */
1761
+ interface AttributeMember {
1762
+ Attribute: RuleStringEmailAttribute;
1763
+ $unknown?: never;
1764
+ }
1765
+ /**
1766
+ * @public
1767
+ */
1768
+ interface $UnknownMember {
1769
+ Attribute?: never;
1770
+ $unknown: [string, any];
1771
+ }
1772
+ interface Visitor<T> {
1773
+ Attribute: (value: RuleStringEmailAttribute) => T;
1774
+ _: (name: string, value: any) => T;
1775
+ }
1776
+ const visit: <T>(value: RuleStringToEvaluate, visitor: Visitor<T>) => T;
1777
+ }
1778
+ /**
1779
+ * @public
1780
+ * @enum
1781
+ */
1782
+ export declare const RuleStringOperator: {
1783
+ readonly CONTAINS: "CONTAINS";
1784
+ readonly ENDS_WITH: "ENDS_WITH";
1785
+ readonly EQUALS: "EQUALS";
1786
+ readonly NOT_EQUALS: "NOT_EQUALS";
1787
+ readonly STARTS_WITH: "STARTS_WITH";
1788
+ };
1789
+ /**
1790
+ * @public
1791
+ */
1792
+ export type RuleStringOperator = (typeof RuleStringOperator)[keyof typeof RuleStringOperator];
1793
+ /**
1794
+ * <p>A string expression is evaluated against strings or substrings of the email.</p>
1795
+ * @public
1796
+ */
1797
+ export interface RuleStringExpression {
1798
+ /**
1799
+ * <p>The string to evaluate in a string condition expression.</p>
1800
+ * @public
1801
+ */
1802
+ Evaluate: RuleStringToEvaluate | undefined;
1803
+ /**
1804
+ * <p>The matching operator for a string condition expression.</p>
1805
+ * @public
1806
+ */
1807
+ Operator: RuleStringOperator | undefined;
1808
+ /**
1809
+ * <p>The string(s) to be evaluated in a string condition expression. For all operators,
1810
+ * except for NOT_EQUALS, if multiple values are given, the values are processed as an OR.
1811
+ * That is, if any of the values match the email's string using the given operator, the
1812
+ * condition is deemed to match. However, for NOT_EQUALS, the condition is only deemed to
1813
+ * match if none of the given strings match the email's string.</p>
1814
+ * @public
1815
+ */
1816
+ Values: string[] | undefined;
1817
+ }
1818
+ /**
1819
+ * @public
1820
+ * @enum
1821
+ */
1822
+ export declare const RuleVerdictAttribute: {
1823
+ readonly DKIM: "DKIM";
1824
+ readonly SPF: "SPF";
1825
+ };
1826
+ /**
1827
+ * @public
1828
+ */
1829
+ export type RuleVerdictAttribute = (typeof RuleVerdictAttribute)[keyof typeof RuleVerdictAttribute];
1830
+ /**
1831
+ * <p>The verdict to evaluate in a verdict condition expression.</p>
1832
+ * @public
1833
+ */
1834
+ export type RuleVerdictToEvaluate = RuleVerdictToEvaluate.AnalysisMember | RuleVerdictToEvaluate.AttributeMember | RuleVerdictToEvaluate.$UnknownMember;
1835
+ /**
1836
+ * @public
1837
+ */
1838
+ export declare namespace RuleVerdictToEvaluate {
1839
+ /**
1840
+ * <p>The email verdict attribute to evaluate in a string verdict expression.</p>
1841
+ * @public
1842
+ */
1843
+ interface AttributeMember {
1844
+ Attribute: RuleVerdictAttribute;
1845
+ Analysis?: never;
1846
+ $unknown?: never;
1847
+ }
1848
+ /**
1849
+ * <p>The Add On ARN and its returned value to evaluate in a verdict condition
1850
+ * expression.</p>
1851
+ * @public
1852
+ */
1853
+ interface AnalysisMember {
1854
+ Attribute?: never;
1855
+ Analysis: Analysis;
1856
+ $unknown?: never;
1857
+ }
1858
+ /**
1859
+ * @public
1860
+ */
1861
+ interface $UnknownMember {
1862
+ Attribute?: never;
1863
+ Analysis?: never;
1864
+ $unknown: [string, any];
1865
+ }
1866
+ interface Visitor<T> {
1867
+ Attribute: (value: RuleVerdictAttribute) => T;
1868
+ Analysis: (value: Analysis) => T;
1869
+ _: (name: string, value: any) => T;
1870
+ }
1871
+ const visit: <T>(value: RuleVerdictToEvaluate, visitor: Visitor<T>) => T;
1872
+ }
1873
+ /**
1874
+ * @public
1875
+ * @enum
1876
+ */
1877
+ export declare const RuleVerdictOperator: {
1878
+ readonly EQUALS: "EQUALS";
1879
+ readonly NOT_EQUALS: "NOT_EQUALS";
1880
+ };
1881
+ /**
1882
+ * @public
1883
+ */
1884
+ export type RuleVerdictOperator = (typeof RuleVerdictOperator)[keyof typeof RuleVerdictOperator];
1885
+ /**
1886
+ * @public
1887
+ * @enum
1888
+ */
1889
+ export declare const RuleVerdict: {
1890
+ readonly FAIL: "FAIL";
1891
+ readonly GRAY: "GRAY";
1892
+ readonly PASS: "PASS";
1893
+ readonly PROCESSING_FAILED: "PROCESSING_FAILED";
1894
+ };
1895
+ /**
1896
+ * @public
1897
+ */
1898
+ export type RuleVerdict = (typeof RuleVerdict)[keyof typeof RuleVerdict];
1899
+ /**
1900
+ * <p>A verdict expression is evaluated against verdicts of the email.</p>
1901
+ * @public
1902
+ */
1903
+ export interface RuleVerdictExpression {
1904
+ /**
1905
+ * <p>The verdict to evaluate in a verdict condition expression.</p>
1906
+ * @public
1907
+ */
1908
+ Evaluate: RuleVerdictToEvaluate | undefined;
1909
+ /**
1910
+ * <p>The matching operator for a verdict condition expression.</p>
1911
+ * @public
1912
+ */
1913
+ Operator: RuleVerdictOperator | undefined;
1914
+ /**
1915
+ * <p>The values to match with the email's verdict using the given operator. For the EQUALS
1916
+ * operator, if multiple values are given, the condition is deemed to match if any of the
1917
+ * given verdicts match that of the email. For the NOT_EQUALS operator, if multiple values
1918
+ * are given, the condition is deemed to match of none of the given verdicts match the
1919
+ * verdict of the email.</p>
1920
+ * @public
1921
+ */
1922
+ Values: RuleVerdict[] | undefined;
1923
+ }
1924
+ /**
1925
+ * <p>The conditional expression used to evaluate an email for determining if a rule action
1926
+ * should be taken.</p>
1927
+ * @public
1928
+ */
1929
+ export type RuleCondition = RuleCondition.BooleanExpressionMember | RuleCondition.DmarcExpressionMember | RuleCondition.IpExpressionMember | RuleCondition.NumberExpressionMember | RuleCondition.StringExpressionMember | RuleCondition.VerdictExpressionMember | RuleCondition.$UnknownMember;
1930
+ /**
1931
+ * @public
1932
+ */
1933
+ export declare namespace RuleCondition {
1934
+ /**
1935
+ * <p>The condition applies to a boolean expression passed in this field.</p>
1936
+ * @public
1937
+ */
1938
+ interface BooleanExpressionMember {
1939
+ BooleanExpression: RuleBooleanExpression;
1940
+ StringExpression?: never;
1941
+ NumberExpression?: never;
1942
+ IpExpression?: never;
1943
+ VerdictExpression?: never;
1944
+ DmarcExpression?: never;
1945
+ $unknown?: never;
1946
+ }
1947
+ /**
1948
+ * <p>The condition applies to a string expression passed in this field.</p>
1949
+ * @public
1950
+ */
1951
+ interface StringExpressionMember {
1952
+ BooleanExpression?: never;
1953
+ StringExpression: RuleStringExpression;
1954
+ NumberExpression?: never;
1955
+ IpExpression?: never;
1956
+ VerdictExpression?: never;
1957
+ DmarcExpression?: never;
1958
+ $unknown?: never;
1959
+ }
1960
+ /**
1961
+ * <p>The condition applies to a number expression passed in this field.</p>
1962
+ * @public
1963
+ */
1964
+ interface NumberExpressionMember {
1965
+ BooleanExpression?: never;
1966
+ StringExpression?: never;
1967
+ NumberExpression: RuleNumberExpression;
1968
+ IpExpression?: never;
1969
+ VerdictExpression?: never;
1970
+ DmarcExpression?: never;
1971
+ $unknown?: never;
1972
+ }
1973
+ /**
1974
+ * <p>The condition applies to an IP address expression passed in this field.</p>
1975
+ * @public
1976
+ */
1977
+ interface IpExpressionMember {
1978
+ BooleanExpression?: never;
1979
+ StringExpression?: never;
1980
+ NumberExpression?: never;
1981
+ IpExpression: RuleIpExpression;
1982
+ VerdictExpression?: never;
1983
+ DmarcExpression?: never;
1984
+ $unknown?: never;
1985
+ }
1986
+ /**
1987
+ * <p>The condition applies to a verdict expression passed in this field.</p>
1988
+ * @public
1989
+ */
1990
+ interface VerdictExpressionMember {
1991
+ BooleanExpression?: never;
1992
+ StringExpression?: never;
1993
+ NumberExpression?: never;
1994
+ IpExpression?: never;
1995
+ VerdictExpression: RuleVerdictExpression;
1996
+ DmarcExpression?: never;
1997
+ $unknown?: never;
1998
+ }
1999
+ /**
2000
+ * <p>The condition applies to a DMARC policy expression passed in this field.</p>
2001
+ * @public
2002
+ */
2003
+ interface DmarcExpressionMember {
2004
+ BooleanExpression?: never;
2005
+ StringExpression?: never;
2006
+ NumberExpression?: never;
2007
+ IpExpression?: never;
2008
+ VerdictExpression?: never;
2009
+ DmarcExpression: RuleDmarcExpression;
2010
+ $unknown?: never;
2011
+ }
2012
+ /**
2013
+ * @public
2014
+ */
2015
+ interface $UnknownMember {
2016
+ BooleanExpression?: never;
2017
+ StringExpression?: never;
2018
+ NumberExpression?: never;
2019
+ IpExpression?: never;
2020
+ VerdictExpression?: never;
2021
+ DmarcExpression?: never;
2022
+ $unknown: [string, any];
2023
+ }
2024
+ interface Visitor<T> {
2025
+ BooleanExpression: (value: RuleBooleanExpression) => T;
2026
+ StringExpression: (value: RuleStringExpression) => T;
2027
+ NumberExpression: (value: RuleNumberExpression) => T;
2028
+ IpExpression: (value: RuleIpExpression) => T;
2029
+ VerdictExpression: (value: RuleVerdictExpression) => T;
2030
+ DmarcExpression: (value: RuleDmarcExpression) => T;
2031
+ _: (name: string, value: any) => T;
2032
+ }
2033
+ const visit: <T>(value: RuleCondition, visitor: Visitor<T>) => T;
2034
+ }
2035
+ /**
2036
+ * <p>A rule contains conditions, "unless conditions" and actions. For each
2037
+ * envelope recipient of an email, if all conditions match and none of the "unless
2038
+ * conditions" match, then all of the actions are executed sequentially. If no
2039
+ * conditions are provided, the rule always applies and the actions are implicitly
2040
+ * executed. If only "unless conditions" are provided, the rule applies if the
2041
+ * email does not match the evaluation of the "unless conditions".</p>
2042
+ * @public
2043
+ */
2044
+ export interface Rule {
2045
+ /**
2046
+ * <p>The user-friendly name of the rule.</p>
2047
+ * @public
2048
+ */
2049
+ Name?: string;
2050
+ /**
2051
+ * <p>The conditions of this rule. All conditions must match the email for the actions to be
2052
+ * executed. An empty list of conditions means that all emails match, but are still subject
2053
+ * to any "unless conditions"</p>
2054
+ * @public
2055
+ */
2056
+ Conditions?: RuleCondition[];
2057
+ /**
2058
+ * <p>The "unless conditions" of this rule. None of the conditions can match the
2059
+ * email for the actions to be executed. If any of these conditions do match the email,
2060
+ * then the actions are not executed.</p>
2061
+ * @public
2062
+ */
2063
+ Unless?: RuleCondition[];
2064
+ /**
2065
+ * <p>The list of actions to execute when the conditions match the incoming email, and none
2066
+ * of the "unless conditions" match.</p>
2067
+ * @public
2068
+ */
2069
+ Actions: RuleAction[] | undefined;
2070
+ }
2071
+ /**
2072
+ * @public
2073
+ */
2074
+ export interface CreateRuleSetRequest {
2075
+ /**
2076
+ * <p>A unique token that Amazon SES uses to recognize subsequent retries of the same
2077
+ * request.</p>
2078
+ * @public
2079
+ */
2080
+ ClientToken?: string;
2081
+ /**
2082
+ * <p>A user-friendly name for the rule set.</p>
2083
+ * @public
2084
+ */
2085
+ RuleSetName: string | undefined;
2086
+ /**
2087
+ * <p>Conditional rules that are evaluated for determining actions on email.</p>
2088
+ * @public
2089
+ */
2090
+ Rules: Rule[] | undefined;
2091
+ /**
2092
+ * <p>The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.</p>
2093
+ * @public
2094
+ */
2095
+ Tags?: Tag[];
2096
+ }
2097
+ /**
2098
+ * @public
2099
+ */
2100
+ export interface CreateRuleSetResponse {
2101
+ /**
2102
+ * <p>The identifier of the created rule set.</p>
2103
+ * @public
2104
+ */
2105
+ RuleSetId: string | undefined;
2106
+ }
2107
+ /**
2108
+ * <p>The Add On ARN and its returned value that is evaluated in a policy statement's
2109
+ * conditional expression to either deny or block the incoming email.</p>
2110
+ * @public
2111
+ */
2112
+ export interface IngressAnalysis {
2113
+ /**
2114
+ * <p>The Amazon Resource Name (ARN) of an Add On.</p>
2115
+ * @public
2116
+ */
2117
+ Analyzer: string | undefined;
2118
+ /**
2119
+ * <p>The returned value from an Add On.</p>
2120
+ * @public
2121
+ */
2122
+ ResultField: string | undefined;
2123
+ }
2124
+ /**
2125
+ * <p>The union type representing the allowed types of operands for a boolean
2126
+ * condition.</p>
2127
+ * @public
2128
+ */
2129
+ export type IngressBooleanToEvaluate = IngressBooleanToEvaluate.AnalysisMember | IngressBooleanToEvaluate.$UnknownMember;
2130
+ /**
2131
+ * @public
2132
+ */
2133
+ export declare namespace IngressBooleanToEvaluate {
2134
+ /**
2135
+ * <p>The structure type for a boolean condition stating the Add On ARN and its returned
2136
+ * value.</p>
2137
+ * @public
2138
+ */
2139
+ interface AnalysisMember {
2140
+ Analysis: IngressAnalysis;
2141
+ $unknown?: never;
2142
+ }
2143
+ /**
2144
+ * @public
2145
+ */
2146
+ interface $UnknownMember {
2147
+ Analysis?: never;
2148
+ $unknown: [string, any];
2149
+ }
2150
+ interface Visitor<T> {
2151
+ Analysis: (value: IngressAnalysis) => T;
2152
+ _: (name: string, value: any) => T;
2153
+ }
2154
+ const visit: <T>(value: IngressBooleanToEvaluate, visitor: Visitor<T>) => T;
2155
+ }
2156
+ /**
2157
+ * @public
2158
+ * @enum
2159
+ */
2160
+ export declare const IngressBooleanOperator: {
2161
+ readonly IS_FALSE: "IS_FALSE";
2162
+ readonly IS_TRUE: "IS_TRUE";
2163
+ };
2164
+ /**
2165
+ * @public
2166
+ */
2167
+ export type IngressBooleanOperator = (typeof IngressBooleanOperator)[keyof typeof IngressBooleanOperator];
2168
+ /**
2169
+ * <p>The structure for a boolean condition matching on the incoming mail.</p>
2170
+ * @public
2171
+ */
2172
+ export interface IngressBooleanExpression {
2173
+ /**
2174
+ * <p>The operand on which to perform a boolean condition operation.</p>
2175
+ * @public
2176
+ */
2177
+ Evaluate: IngressBooleanToEvaluate | undefined;
2178
+ /**
2179
+ * <p>The matching operator for a boolean condition expression.</p>
2180
+ * @public
2181
+ */
2182
+ Operator: IngressBooleanOperator | undefined;
2183
+ }
2184
+ /**
2185
+ * @public
2186
+ * @enum
2187
+ */
2188
+ export declare const IngressIpv4Attribute: {
2189
+ readonly SENDER_IP: "SENDER_IP";
2190
+ };
2191
+ /**
2192
+ * @public
2193
+ */
2194
+ export type IngressIpv4Attribute = (typeof IngressIpv4Attribute)[keyof typeof IngressIpv4Attribute];
2195
+ /**
2196
+ * <p>The structure for an IP based condition matching on the incoming mail.</p>
2197
+ * @public
2198
+ */
2199
+ export type IngressIpToEvaluate = IngressIpToEvaluate.AttributeMember | IngressIpToEvaluate.$UnknownMember;
2200
+ /**
2201
+ * @public
2202
+ */
2203
+ export declare namespace IngressIpToEvaluate {
2204
+ /**
2205
+ * <p>An enum type representing the allowed attribute types for an IP condition.</p>
2206
+ * @public
2207
+ */
2208
+ interface AttributeMember {
2209
+ Attribute: IngressIpv4Attribute;
2210
+ $unknown?: never;
2211
+ }
2212
+ /**
2213
+ * @public
2214
+ */
2215
+ interface $UnknownMember {
2216
+ Attribute?: never;
2217
+ $unknown: [string, any];
2218
+ }
2219
+ interface Visitor<T> {
2220
+ Attribute: (value: IngressIpv4Attribute) => T;
2221
+ _: (name: string, value: any) => T;
2222
+ }
2223
+ const visit: <T>(value: IngressIpToEvaluate, visitor: Visitor<T>) => T;
2224
+ }
2225
+ /**
2226
+ * @public
2227
+ * @enum
2228
+ */
2229
+ export declare const IngressIpOperator: {
2230
+ readonly CIDR_MATCHES: "CIDR_MATCHES";
2231
+ readonly NOT_CIDR_MATCHES: "NOT_CIDR_MATCHES";
2232
+ };
2233
+ /**
2234
+ * @public
2235
+ */
2236
+ export type IngressIpOperator = (typeof IngressIpOperator)[keyof typeof IngressIpOperator];
2237
+ /**
2238
+ * <p>The union type representing the allowed types for the left hand side of an IP
2239
+ * condition.</p>
2240
+ * @public
2241
+ */
2242
+ export interface IngressIpv4Expression {
2243
+ /**
2244
+ * <p>The left hand side argument of an IP condition expression.</p>
2245
+ * @public
2246
+ */
2247
+ Evaluate: IngressIpToEvaluate | undefined;
2248
+ /**
2249
+ * <p>The matching operator for an IP condition expression.</p>
2250
+ * @public
2251
+ */
2252
+ Operator: IngressIpOperator | undefined;
2253
+ /**
2254
+ * <p>The right hand side argument of an IP condition expression.</p>
2255
+ * @public
2256
+ */
2257
+ Values: string[] | undefined;
2258
+ }
2259
+ /**
2260
+ * @public
2261
+ * @enum
2262
+ */
2263
+ export declare const IngressStringEmailAttribute: {
2264
+ readonly RECIPIENT: "RECIPIENT";
2265
+ };
2266
+ /**
2267
+ * @public
2268
+ */
2269
+ export type IngressStringEmailAttribute = (typeof IngressStringEmailAttribute)[keyof typeof IngressStringEmailAttribute];
2270
+ /**
2271
+ * <p>The union type representing the allowed types for the left hand side of a string
2272
+ * condition.</p>
2273
+ * @public
2274
+ */
2275
+ export type IngressStringToEvaluate = IngressStringToEvaluate.AttributeMember | IngressStringToEvaluate.$UnknownMember;
2276
+ /**
2277
+ * @public
2278
+ */
2279
+ export declare namespace IngressStringToEvaluate {
2280
+ /**
2281
+ * <p>The enum type representing the allowed attribute types for a string condition.</p>
2282
+ * @public
2283
+ */
2284
+ interface AttributeMember {
2285
+ Attribute: IngressStringEmailAttribute;
2286
+ $unknown?: never;
2287
+ }
2288
+ /**
2289
+ * @public
2290
+ */
2291
+ interface $UnknownMember {
2292
+ Attribute?: never;
2293
+ $unknown: [string, any];
2294
+ }
2295
+ interface Visitor<T> {
2296
+ Attribute: (value: IngressStringEmailAttribute) => T;
2297
+ _: (name: string, value: any) => T;
2298
+ }
2299
+ const visit: <T>(value: IngressStringToEvaluate, visitor: Visitor<T>) => T;
2300
+ }
2301
+ /**
2302
+ * @public
2303
+ * @enum
2304
+ */
2305
+ export declare const IngressStringOperator: {
2306
+ readonly CONTAINS: "CONTAINS";
2307
+ readonly ENDS_WITH: "ENDS_WITH";
2308
+ readonly EQUALS: "EQUALS";
2309
+ readonly NOT_EQUALS: "NOT_EQUALS";
2310
+ readonly STARTS_WITH: "STARTS_WITH";
2311
+ };
2312
+ /**
2313
+ * @public
2314
+ */
2315
+ export type IngressStringOperator = (typeof IngressStringOperator)[keyof typeof IngressStringOperator];
2316
+ /**
2317
+ * <p>The structure for a string based condition matching on the incoming mail.</p>
2318
+ * @public
2319
+ */
2320
+ export interface IngressStringExpression {
2321
+ /**
2322
+ * <p>The left hand side argument of a string condition expression.</p>
2323
+ * @public
2324
+ */
2325
+ Evaluate: IngressStringToEvaluate | undefined;
2326
+ /**
2327
+ * <p>The matching operator for a string condition expression.</p>
2328
+ * @public
2329
+ */
2330
+ Operator: IngressStringOperator | undefined;
2331
+ /**
2332
+ * <p>The right hand side argument of a string condition expression.</p>
2333
+ * @public
2334
+ */
2335
+ Values: string[] | undefined;
2336
+ }
2337
+ /**
2338
+ * @public
2339
+ * @enum
2340
+ */
2341
+ export declare const IngressTlsAttribute: {
2342
+ readonly TLS_PROTOCOL: "TLS_PROTOCOL";
2343
+ };
2344
+ /**
2345
+ * @public
2346
+ */
2347
+ export type IngressTlsAttribute = (typeof IngressTlsAttribute)[keyof typeof IngressTlsAttribute];
2348
+ /**
2349
+ * <p>The union type representing the allowed types for the left hand side of a TLS
2350
+ * condition.</p>
2351
+ * @public
2352
+ */
2353
+ export type IngressTlsProtocolToEvaluate = IngressTlsProtocolToEvaluate.AttributeMember | IngressTlsProtocolToEvaluate.$UnknownMember;
2354
+ /**
2355
+ * @public
2356
+ */
2357
+ export declare namespace IngressTlsProtocolToEvaluate {
2358
+ /**
2359
+ * <p>The enum type representing the allowed attribute types for the TLS condition.</p>
2360
+ * @public
2361
+ */
2362
+ interface AttributeMember {
2363
+ Attribute: IngressTlsAttribute;
2364
+ $unknown?: never;
2365
+ }
2366
+ /**
2367
+ * @public
2368
+ */
2369
+ interface $UnknownMember {
2370
+ Attribute?: never;
2371
+ $unknown: [string, any];
2372
+ }
2373
+ interface Visitor<T> {
2374
+ Attribute: (value: IngressTlsAttribute) => T;
2375
+ _: (name: string, value: any) => T;
2376
+ }
2377
+ const visit: <T>(value: IngressTlsProtocolToEvaluate, visitor: Visitor<T>) => T;
2378
+ }
2379
+ /**
2380
+ * @public
2381
+ * @enum
2382
+ */
2383
+ export declare const IngressTlsProtocolOperator: {
2384
+ readonly IS: "IS";
2385
+ readonly MINIMUM_TLS_VERSION: "MINIMUM_TLS_VERSION";
2386
+ };
2387
+ /**
2388
+ * @public
2389
+ */
2390
+ export type IngressTlsProtocolOperator = (typeof IngressTlsProtocolOperator)[keyof typeof IngressTlsProtocolOperator];
2391
+ /**
2392
+ * @public
2393
+ * @enum
2394
+ */
2395
+ export declare const IngressTlsProtocolAttribute: {
2396
+ readonly TLS1_2: "TLS1_2";
2397
+ readonly TLS1_3: "TLS1_3";
2398
+ };
2399
+ /**
2400
+ * @public
2401
+ */
2402
+ export type IngressTlsProtocolAttribute = (typeof IngressTlsProtocolAttribute)[keyof typeof IngressTlsProtocolAttribute];
2403
+ /**
2404
+ * <p>The structure for a TLS related condition matching on the incoming mail.</p>
2405
+ * @public
2406
+ */
2407
+ export interface IngressTlsProtocolExpression {
2408
+ /**
2409
+ * <p>The left hand side argument of a TLS condition expression.</p>
2410
+ * @public
2411
+ */
2412
+ Evaluate: IngressTlsProtocolToEvaluate | undefined;
2413
+ /**
2414
+ * <p>The matching operator for a TLS condition expression.</p>
2415
+ * @public
2416
+ */
2417
+ Operator: IngressTlsProtocolOperator | undefined;
2418
+ /**
2419
+ * <p>The right hand side argument of a TLS condition expression.</p>
2420
+ * @public
2421
+ */
2422
+ Value: IngressTlsProtocolAttribute | undefined;
2423
+ }
2424
+ /**
2425
+ * <p>The email traffic filtering conditions which are contained in a traffic policy
2426
+ * resource.</p>
2427
+ * @public
2428
+ */
2429
+ export type PolicyCondition = PolicyCondition.BooleanExpressionMember | PolicyCondition.IpExpressionMember | PolicyCondition.StringExpressionMember | PolicyCondition.TlsExpressionMember | PolicyCondition.$UnknownMember;
2430
+ /**
2431
+ * @public
2432
+ */
2433
+ export declare namespace PolicyCondition {
2434
+ /**
2435
+ * <p>This represents a string based condition matching on the incoming mail. It performs
2436
+ * the string operation configured in 'Operator' and evaluates the 'Protocol' object
2437
+ * against the 'Value'.</p>
2438
+ * @public
2439
+ */
2440
+ interface StringExpressionMember {
2441
+ StringExpression: IngressStringExpression;
2442
+ IpExpression?: never;
2443
+ TlsExpression?: never;
2444
+ BooleanExpression?: never;
2445
+ $unknown?: never;
2446
+ }
2447
+ /**
2448
+ * <p>This represents an IP based condition matching on the incoming mail. It performs the
2449
+ * operation configured in 'Operator' and evaluates the 'Protocol' object against the
2450
+ * 'Value'.</p>
2451
+ * @public
2452
+ */
2453
+ interface IpExpressionMember {
2454
+ StringExpression?: never;
2455
+ IpExpression: IngressIpv4Expression;
2456
+ TlsExpression?: never;
2457
+ BooleanExpression?: never;
2458
+ $unknown?: never;
2459
+ }
2460
+ /**
2461
+ * <p>This represents a TLS based condition matching on the incoming mail. It performs the
2462
+ * operation configured in 'Operator' and evaluates the 'Protocol' object against the
2463
+ * 'Value'.</p>
2464
+ * @public
2465
+ */
2466
+ interface TlsExpressionMember {
2467
+ StringExpression?: never;
2468
+ IpExpression?: never;
2469
+ TlsExpression: IngressTlsProtocolExpression;
2470
+ BooleanExpression?: never;
2471
+ $unknown?: never;
2472
+ }
2473
+ /**
2474
+ * <p>This represents a boolean type condition matching on the incoming mail. It performs
2475
+ * the boolean operation configured in 'Operator' and evaluates the 'Protocol' object
2476
+ * against the 'Value'.</p>
2477
+ * @public
2478
+ */
2479
+ interface BooleanExpressionMember {
2480
+ StringExpression?: never;
2481
+ IpExpression?: never;
2482
+ TlsExpression?: never;
2483
+ BooleanExpression: IngressBooleanExpression;
2484
+ $unknown?: never;
2485
+ }
2486
+ /**
2487
+ * @public
2488
+ */
2489
+ interface $UnknownMember {
2490
+ StringExpression?: never;
2491
+ IpExpression?: never;
2492
+ TlsExpression?: never;
2493
+ BooleanExpression?: never;
2494
+ $unknown: [string, any];
2495
+ }
2496
+ interface Visitor<T> {
2497
+ StringExpression: (value: IngressStringExpression) => T;
2498
+ IpExpression: (value: IngressIpv4Expression) => T;
2499
+ TlsExpression: (value: IngressTlsProtocolExpression) => T;
2500
+ BooleanExpression: (value: IngressBooleanExpression) => T;
2501
+ _: (name: string, value: any) => T;
2502
+ }
2503
+ const visit: <T>(value: PolicyCondition, visitor: Visitor<T>) => T;
2504
+ }
2505
+ /**
2506
+ * <p>The structure containing traffic policy conditions and actions.</p>
2507
+ * @public
2508
+ */
2509
+ export interface PolicyStatement {
2510
+ /**
2511
+ * <p>The list of conditions to apply to incoming messages for filtering email
2512
+ * traffic.</p>
2513
+ * @public
2514
+ */
2515
+ Conditions: PolicyCondition[] | undefined;
2516
+ /**
2517
+ * <p>The action that informs a traffic policy resource to either allow or block the email
2518
+ * if it matches a condition in the policy statement.</p>
2519
+ * @public
2520
+ */
2521
+ Action: AcceptAction | undefined;
2522
+ }
2523
+ /**
2524
+ * @public
2525
+ */
2526
+ export interface CreateTrafficPolicyRequest {
2527
+ /**
2528
+ * <p>A unique token that Amazon SES uses to recognize subsequent retries of the same
2529
+ * request.</p>
2530
+ * @public
2531
+ */
2532
+ ClientToken?: string;
2533
+ /**
2534
+ * <p>A user-friendly name for the traffic policy resource.</p>
2535
+ * @public
2536
+ */
2537
+ TrafficPolicyName: string | undefined;
2538
+ /**
2539
+ * <p>Conditional statements for filtering email traffic.</p>
2540
+ * @public
2541
+ */
2542
+ PolicyStatements: PolicyStatement[] | undefined;
2543
+ /**
2544
+ * <p>Default action instructs the traffic policy to either Allow or Deny (block) messages that fall outside of (or not addressed by) the conditions of your policy statements</p>
2545
+ * @public
2546
+ */
2547
+ DefaultAction: AcceptAction | undefined;
2548
+ /**
2549
+ * <p>The maximum message size in bytes of email which is allowed in by this traffic
2550
+ * policy—anything larger will be blocked.</p>
2551
+ * @public
2552
+ */
2553
+ MaxMessageSizeBytes?: number;
2554
+ /**
2555
+ * <p>The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.</p>
2556
+ * @public
2557
+ */
2558
+ Tags?: Tag[];
2559
+ }
2560
+ /**
2561
+ * @public
2562
+ */
2563
+ export interface CreateTrafficPolicyResponse {
2564
+ /**
2565
+ * <p>The identifier of the traffic policy resource.</p>
2566
+ * @public
2567
+ */
2568
+ TrafficPolicyId: string | undefined;
2569
+ }
2570
+ /**
2571
+ * @public
2572
+ */
2573
+ export interface DeleteIngressPointRequest {
2574
+ /**
2575
+ * <p>The identifier of the ingress endpoint resource that you want to delete.</p>
2576
+ * @public
2577
+ */
2578
+ IngressPointId: string | undefined;
2579
+ }
2580
+ /**
2581
+ * @public
2582
+ */
2583
+ export interface DeleteIngressPointResponse {
2584
+ }
2585
+ /**
2586
+ * @public
2587
+ */
2588
+ export interface DeleteRelayRequest {
2589
+ /**
2590
+ * <p>The unique relay identifier.</p>
2591
+ * @public
2592
+ */
2593
+ RelayId: string | undefined;
2594
+ }
2595
+ /**
2596
+ * @public
2597
+ */
2598
+ export interface DeleteRelayResponse {
2599
+ }
2600
+ /**
2601
+ * @public
2602
+ */
2603
+ export interface DeleteRuleSetRequest {
2604
+ /**
2605
+ * <p>The identifier of an existing rule set resource to delete.</p>
2606
+ * @public
2607
+ */
2608
+ RuleSetId: string | undefined;
2609
+ }
2610
+ /**
2611
+ * @public
2612
+ */
2613
+ export interface DeleteRuleSetResponse {
2614
+ }
2615
+ /**
2616
+ * @public
2617
+ */
2618
+ export interface DeleteTrafficPolicyRequest {
2619
+ /**
2620
+ * <p>The identifier of the traffic policy that you want to delete.</p>
2621
+ * @public
2622
+ */
2623
+ TrafficPolicyId: string | undefined;
2624
+ }
2625
+ /**
2626
+ * @public
2627
+ */
2628
+ export interface DeleteTrafficPolicyResponse {
2629
+ }
2630
+ /**
2631
+ * <p>The configuration for exporting email data to an Amazon S3 bucket.</p>
2632
+ * @public
2633
+ */
2634
+ export interface S3ExportDestinationConfiguration {
2635
+ /**
2636
+ * <p>The S3 location to deliver the exported email data.</p>
2637
+ * @public
2638
+ */
2639
+ S3Location?: string;
2640
+ }
2641
+ /**
2642
+ * <p>The destination configuration for delivering exported email data.</p>
2643
+ * @public
2644
+ */
2645
+ export type ExportDestinationConfiguration = ExportDestinationConfiguration.S3Member | ExportDestinationConfiguration.$UnknownMember;
2646
+ /**
2647
+ * @public
2648
+ */
2649
+ export declare namespace ExportDestinationConfiguration {
2650
+ /**
2651
+ * <p>Configuration for delivering to an Amazon S3 bucket.</p>
2652
+ * @public
2653
+ */
2654
+ interface S3Member {
2655
+ S3: S3ExportDestinationConfiguration;
2656
+ $unknown?: never;
2657
+ }
2658
+ /**
2659
+ * @public
2660
+ */
2661
+ interface $UnknownMember {
2662
+ S3?: never;
2663
+ $unknown: [string, any];
2664
+ }
2665
+ interface Visitor<T> {
2666
+ S3: (value: S3ExportDestinationConfiguration) => T;
2667
+ _: (name: string, value: any) => T;
2668
+ }
2669
+ const visit: <T>(value: ExportDestinationConfiguration, visitor: Visitor<T>) => T;
2670
+ }
2671
+ /**
2672
+ * @public
2673
+ * @enum
2674
+ */
2675
+ export declare const ExportState: {
2676
+ readonly CANCELLED: "CANCELLED";
2677
+ readonly COMPLETED: "COMPLETED";
2678
+ readonly FAILED: "FAILED";
2679
+ readonly PREPROCESSING: "PREPROCESSING";
2680
+ readonly PROCESSING: "PROCESSING";
2681
+ readonly QUEUED: "QUEUED";
2682
+ };
2683
+ /**
2684
+ * @public
2685
+ */
2686
+ export type ExportState = (typeof ExportState)[keyof typeof ExportState];
2687
+ /**
2688
+ * <p>The current status of an archive export job.</p>
2689
+ * @public
2690
+ */
2691
+ export interface ExportStatus {
2692
+ /**
2693
+ * <p>The timestamp of when the export job was submitted.</p>
2694
+ * @public
2695
+ */
2696
+ SubmissionTimestamp?: Date;
2697
+ /**
2698
+ * <p>The timestamp of when the export job completed (if finished).</p>
2699
+ * @public
2700
+ */
2701
+ CompletionTimestamp?: Date;
2702
+ /**
2703
+ * <p>The current state of the export job.</p>
2704
+ * @public
2705
+ */
2706
+ State?: ExportState;
2707
+ /**
2708
+ * <p>An error message if the export job failed.</p>
2709
+ * @public
2710
+ */
2711
+ ErrorMessage?: string;
2712
+ }
2713
+ /**
2714
+ * <p>Summary statuses of an archive export job.</p>
2715
+ * @public
2716
+ */
2717
+ export interface ExportSummary {
2718
+ /**
2719
+ * <p>The unique identifier of the export job.</p>
2720
+ * @public
2721
+ */
2722
+ ExportId?: string;
2723
+ /**
2724
+ * <p>The current status of the export job.</p>
2725
+ * @public
2726
+ */
2727
+ Status?: ExportStatus;
2728
+ }
2729
+ /**
2730
+ * <p>The request to retrieve details of a specific archive export job.</p>
2731
+ * @public
2732
+ */
2733
+ export interface GetArchiveExportRequest {
2734
+ /**
2735
+ * <p>The identifier of the export job to get details for.</p>
2736
+ * @public
2737
+ */
2738
+ ExportId: string | undefined;
2739
+ }
2740
+ /**
2741
+ * <p>The response containing details of the specified archive export job.</p>
2742
+ * @public
2743
+ */
2744
+ export interface GetArchiveExportResponse {
2745
+ /**
2746
+ * <p>The identifier of the archive the email export was performed from.</p>
2747
+ * @public
2748
+ */
2749
+ ArchiveId?: string;
2750
+ /**
2751
+ * <p>The criteria used to filter emails included in the export.</p>
2752
+ * @public
2753
+ */
2754
+ Filters?: ArchiveFilters;
2755
+ /**
2756
+ * <p>The start of the timestamp range the exported emails cover.</p>
2757
+ * @public
2758
+ */
2759
+ FromTimestamp?: Date;
2760
+ /**
2761
+ * <p>The end of the date range the exported emails cover.</p>
2762
+ * @public
2763
+ */
2764
+ ToTimestamp?: Date;
2765
+ /**
2766
+ * <p>The maximum number of email items included in the export.</p>
2767
+ * @public
2768
+ */
2769
+ MaxResults?: number;
2770
+ /**
2771
+ * <p>Where the exported emails are being delivered.</p>
2772
+ * @public
2773
+ */
2774
+ ExportDestinationConfiguration?: ExportDestinationConfiguration;
2775
+ /**
2776
+ * <p>The current status of the export job.</p>
2777
+ * @public
2778
+ */
2779
+ Status?: ExportStatus;
2780
+ }
2781
+ /**
2782
+ * <p>The request to get details of a specific email message stored in an archive.</p>
2783
+ * @public
2784
+ */
2785
+ export interface GetArchiveMessageRequest {
2786
+ /**
2787
+ * <p>The unique identifier of the archived email message.</p>
2788
+ * @public
2789
+ */
2790
+ ArchivedMessageId: string | undefined;
2791
+ }
2792
+ /**
2793
+ * <p>The response containing details about the requested archived email message.</p>
2794
+ * @public
2795
+ */
2796
+ export interface GetArchiveMessageResponse {
2797
+ /**
2798
+ * <p>A pre-signed URL to temporarily download the full message content.</p>
2799
+ * @public
2800
+ */
2801
+ MessageDownloadLink?: string;
2802
+ }
2803
+ /**
2804
+ * <p>The request to get the textual content of a specific email message stored in an archive.</p>
2805
+ * @public
2806
+ */
2807
+ export interface GetArchiveMessageContentRequest {
2808
+ /**
2809
+ * <p>The unique identifier of the archived email message.</p>
2810
+ * @public
2811
+ */
2812
+ ArchivedMessageId: string | undefined;
2813
+ }
2814
+ /**
2815
+ * <p>The textual body content of an email message.</p>
2816
+ * @public
2817
+ */
2818
+ export interface MessageBody {
2819
+ /**
2820
+ * <p>The plain text body content of the message.</p>
2821
+ * @public
2822
+ */
2823
+ Text?: string;
2824
+ /**
2825
+ * <p>The HTML body content of the message.</p>
2826
+ * @public
2827
+ */
2828
+ Html?: string;
2829
+ /**
2830
+ * <p>A flag indicating if the email was malformed.</p>
2831
+ * @public
2832
+ */
2833
+ MessageMalformed?: boolean;
2834
+ }
2835
+ /**
2836
+ * <p>The response containing the textual content of the requested archived email message.</p>
2837
+ * @public
2838
+ */
2839
+ export interface GetArchiveMessageContentResponse {
2840
+ /**
2841
+ * <p>The textual body content of the email message.</p>
2842
+ * @public
2843
+ */
2844
+ Body?: MessageBody;
2845
+ }
2846
+ /**
2847
+ * <p>The request to retrieve details of a specific archive search job.</p>
2848
+ * @public
2849
+ */
2850
+ export interface GetArchiveSearchRequest {
2851
+ /**
2852
+ * <p>The identifier of the search job to get details for.</p>
2853
+ * @public
2854
+ */
2855
+ SearchId: string | undefined;
2856
+ }
2857
+ /**
2858
+ * @public
2859
+ * @enum
2860
+ */
2861
+ export declare const SearchState: {
2862
+ readonly CANCELLED: "CANCELLED";
2863
+ readonly COMPLETED: "COMPLETED";
2864
+ readonly FAILED: "FAILED";
2865
+ readonly QUEUED: "QUEUED";
2866
+ readonly RUNNING: "RUNNING";
2867
+ };
2868
+ /**
2869
+ * @public
2870
+ */
2871
+ export type SearchState = (typeof SearchState)[keyof typeof SearchState];
2872
+ /**
2873
+ * <p>The current status of an archive search job.</p>
2874
+ * @public
2875
+ */
2876
+ export interface SearchStatus {
2877
+ /**
2878
+ * <p>The timestamp of when the search was submitted.</p>
2879
+ * @public
2880
+ */
2881
+ SubmissionTimestamp?: Date;
2882
+ /**
2883
+ * <p>The timestamp of when the search completed (if finished).</p>
2884
+ * @public
2885
+ */
2886
+ CompletionTimestamp?: Date;
2887
+ /**
2888
+ * <p>The current state of the search job.</p>
2889
+ * @public
2890
+ */
2891
+ State?: SearchState;
2892
+ /**
2893
+ * <p>An error message if the search failed.</p>
2894
+ * @public
2895
+ */
2896
+ ErrorMessage?: string;
2897
+ }
2898
+ /**
2899
+ * <p>The response containing details of the specified archive search job.</p>
2900
+ * @public
2901
+ */
2902
+ export interface GetArchiveSearchResponse {
2903
+ /**
2904
+ * <p>The identifier of the archive the email search was performed in.</p>
2905
+ * @public
2906
+ */
2907
+ ArchiveId?: string;
2908
+ /**
2909
+ * <p>The criteria used to filter emails included in the search.</p>
2910
+ * @public
2911
+ */
2912
+ Filters?: ArchiveFilters;
2913
+ /**
2914
+ * <p>The start timestamp of the range the searched emails cover.</p>
2915
+ * @public
2916
+ */
2917
+ FromTimestamp?: Date;
2918
+ /**
2919
+ * <p>The end timestamp of the range the searched emails cover.</p>
2920
+ * @public
2921
+ */
2922
+ ToTimestamp?: Date;
2923
+ /**
2924
+ * <p>The maximum number of search results to return.</p>
2925
+ * @public
2926
+ */
2927
+ MaxResults?: number;
2928
+ /**
2929
+ * <p>The current status of the search job.</p>
2930
+ * @public
2931
+ */
2932
+ Status?: SearchStatus;
2933
+ }
2934
+ /**
2935
+ * <p>The request to retrieve results from a completed archive search job.</p>
2936
+ * @public
2937
+ */
2938
+ export interface GetArchiveSearchResultsRequest {
2939
+ /**
2940
+ * <p>The identifier of the completed search job.</p>
2941
+ * @public
2942
+ */
2943
+ SearchId: string | undefined;
2944
+ }
2945
+ /**
2946
+ * <p>A result row containing metadata for an archived email message.</p>
2947
+ * @public
2948
+ */
2949
+ export interface Row {
2950
+ /**
2951
+ * <p>The unique identifier of the archived message.</p>
2952
+ * @public
2953
+ */
2954
+ ArchivedMessageId?: string;
2955
+ /**
2956
+ * <p>The timestamp of when the email was received.</p>
2957
+ * @public
2958
+ */
2959
+ ReceivedTimestamp?: Date;
2960
+ /**
2961
+ * <p>The date the email was sent.</p>
2962
+ * @public
2963
+ */
2964
+ Date?: string;
2965
+ /**
2966
+ * <p>The email addresses in the To header.</p>
2967
+ * @public
2968
+ */
2969
+ To?: string;
2970
+ /**
2971
+ * <p>The email address of the sender.</p>
2972
+ * @public
2973
+ */
2974
+ From?: string;
2975
+ /**
2976
+ * <p>The email addresses in the CC header.</p>
2977
+ * @public
2978
+ */
2979
+ Cc?: string;
2980
+ /**
2981
+ * <p>The subject header value of the email.</p>
2982
+ * @public
2983
+ */
2984
+ Subject?: string;
2985
+ /**
2986
+ * <p>The unique message ID of the email.</p>
2987
+ * @public
2988
+ */
2989
+ MessageId?: string;
2990
+ /**
2991
+ * <p>A flag indicating if the email has attachments.</p>
2992
+ * @public
2993
+ */
2994
+ HasAttachments?: boolean;
2995
+ /**
2996
+ * <p>The received headers from the email delivery path.</p>
2997
+ * @public
2998
+ */
2999
+ ReceivedHeaders?: string[];
3000
+ /**
3001
+ * <p>The email message ID this is a reply to.</p>
3002
+ * @public
3003
+ */
3004
+ InReplyTo?: string;
3005
+ /**
3006
+ * <p>The user agent that sent the email.</p>
3007
+ * @public
3008
+ */
3009
+ XMailer?: string;
3010
+ /**
3011
+ * <p>The original user agent that sent the email.</p>
3012
+ * @public
3013
+ */
3014
+ XOriginalMailer?: string;
3015
+ /**
3016
+ * <p>The priority level of the email.</p>
3017
+ * @public
3018
+ */
3019
+ XPriority?: string;
3020
+ }
3021
+ /**
3022
+ * <p>The response containing search results from a completed archive search.</p>
3023
+ * @public
3024
+ */
3025
+ export interface GetArchiveSearchResultsResponse {
3026
+ /**
3027
+ * <p>The list of email result objects matching the search criteria.</p>
3028
+ * @public
3029
+ */
3030
+ Rows?: Row[];
3031
+ }
3032
+ /**
3033
+ * @public
3034
+ */
3035
+ export interface GetIngressPointRequest {
3036
+ /**
3037
+ * <p>The identifier of an ingress endpoint.</p>
3038
+ * @public
3039
+ */
3040
+ IngressPointId: string | undefined;
3041
+ }
3042
+ /**
3043
+ * <p>The password configuration of the ingress endpoint resource.</p>
3044
+ * @public
3045
+ */
3046
+ export interface IngressPointPasswordConfiguration {
3047
+ /**
3048
+ * <p>The current password expiry timestamp of the ingress endpoint resource.</p>
3049
+ * @public
3050
+ */
3051
+ SmtpPasswordVersion?: string;
3052
+ /**
3053
+ * <p>The previous password version of the ingress endpoint resource.</p>
3054
+ * @public
3055
+ */
3056
+ PreviousSmtpPasswordVersion?: string;
3057
+ /**
3058
+ * <p>The previous password expiry timestamp of the ingress endpoint resource.</p>
3059
+ * @public
3060
+ */
3061
+ PreviousSmtpPasswordExpiryTimestamp?: Date;
3062
+ }
3063
+ /**
3064
+ * <p>The authentication configuration for the ingress endpoint resource.</p>
3065
+ * @public
3066
+ */
3067
+ export interface IngressPointAuthConfiguration {
3068
+ /**
3069
+ * <p>The ingress endpoint password configuration for the ingress endpoint resource.</p>
3070
+ * @public
3071
+ */
3072
+ IngressPointPasswordConfiguration?: IngressPointPasswordConfiguration;
3073
+ /**
3074
+ * <p>The ingress endpoint SecretsManager::Secret ARN configuration for the ingress endpoint
3075
+ * resource.</p>
3076
+ * @public
3077
+ */
3078
+ SecretArn?: string;
3079
+ }
3080
+ /**
3081
+ * @public
3082
+ * @enum
3083
+ */
3084
+ export declare const IngressPointStatus: {
3085
+ readonly ACTIVE: "ACTIVE";
3086
+ readonly CLOSED: "CLOSED";
3087
+ readonly DEPROVISIONING: "DEPROVISIONING";
3088
+ readonly FAILED: "FAILED";
3089
+ readonly PROVISIONING: "PROVISIONING";
3090
+ readonly UPDATING: "UPDATING";
3091
+ };
3092
+ /**
3093
+ * @public
3094
+ */
3095
+ export type IngressPointStatus = (typeof IngressPointStatus)[keyof typeof IngressPointStatus];
3096
+ /**
3097
+ * @public
3098
+ */
3099
+ export interface GetIngressPointResponse {
3100
+ /**
3101
+ * <p>The identifier of an ingress endpoint resource.</p>
3102
+ * @public
3103
+ */
3104
+ IngressPointId: string | undefined;
3105
+ /**
3106
+ * <p>A user friendly name for the ingress endpoint.</p>
3107
+ * @public
3108
+ */
3109
+ IngressPointName: string | undefined;
3110
+ /**
3111
+ * <p>The Amazon Resource Name (ARN) of the ingress endpoint resource.</p>
3112
+ * @public
3113
+ */
3114
+ IngressPointArn?: string;
3115
+ /**
3116
+ * <p>The status of the ingress endpoint resource.</p>
3117
+ * @public
3118
+ */
3119
+ Status?: IngressPointStatus;
3120
+ /**
3121
+ * <p>The type of ingress endpoint.</p>
3122
+ * @public
3123
+ */
3124
+ Type?: IngressPointType;
3125
+ /**
3126
+ * <p>
3127
+ * The DNS A Record that identifies your ingress endpoint. Configure your DNS Mail Exchange (MX) record with this value to route emails to Mail Manager.
3128
+ * </p>
3129
+ * @public
3130
+ */
3131
+ ARecord?: string;
3132
+ /**
3133
+ * <p>The identifier of a rule set resource associated with the ingress endpoint.</p>
3134
+ * @public
3135
+ */
3136
+ RuleSetId?: string;
3137
+ /**
3138
+ * <p>The identifier of the traffic policy resource associated with the ingress
3139
+ * endpoint.</p>
3140
+ * @public
3141
+ */
3142
+ TrafficPolicyId?: string;
3143
+ /**
3144
+ * <p>The authentication configuration of the ingress endpoint resource.</p>
3145
+ * @public
3146
+ */
3147
+ IngressPointAuthConfiguration?: IngressPointAuthConfiguration;
3148
+ /**
3149
+ * <p>The timestamp of when the ingress endpoint was created.</p>
3150
+ * @public
3151
+ */
3152
+ CreatedTimestamp?: Date;
3153
+ /**
3154
+ * <p>The timestamp of when the ingress endpoint was last updated.</p>
3155
+ * @public
3156
+ */
3157
+ LastUpdatedTimestamp?: Date;
3158
+ }
3159
+ /**
3160
+ * @public
3161
+ */
3162
+ export interface GetRelayRequest {
3163
+ /**
3164
+ * <p>A unique relay identifier.</p>
3165
+ * @public
3166
+ */
3167
+ RelayId: string | undefined;
3168
+ }
3169
+ /**
3170
+ * @public
3171
+ */
3172
+ export interface GetRelayResponse {
3173
+ /**
3174
+ * <p>The unique relay identifier.</p>
3175
+ * @public
3176
+ */
3177
+ RelayId: string | undefined;
3178
+ /**
3179
+ * <p>The Amazon Resource Name (ARN) of the relay.</p>
3180
+ * @public
3181
+ */
3182
+ RelayArn?: string;
3183
+ /**
3184
+ * <p>The unique name of the relay.</p>
3185
+ * @public
3186
+ */
3187
+ RelayName?: string;
3188
+ /**
3189
+ * <p>The destination relay server address.</p>
3190
+ * @public
3191
+ */
3192
+ ServerName?: string;
3193
+ /**
3194
+ * <p>The destination relay server port.</p>
3195
+ * @public
3196
+ */
3197
+ ServerPort?: number;
3198
+ /**
3199
+ * <p>The authentication attribute—contains the secret ARN where the customer relay
3200
+ * server credentials are stored. </p>
3201
+ * @public
3202
+ */
3203
+ Authentication?: RelayAuthentication;
3204
+ /**
3205
+ * <p>The timestamp of when the relay was created.</p>
3206
+ * @public
3207
+ */
3208
+ CreatedTimestamp?: Date;
3209
+ /**
3210
+ * <p>The timestamp of when relay was last updated.</p>
3211
+ * @public
3212
+ */
3213
+ LastModifiedTimestamp?: Date;
3214
+ }
3215
+ /**
3216
+ * @public
3217
+ */
3218
+ export interface GetRuleSetRequest {
3219
+ /**
3220
+ * <p>The identifier of an existing rule set to be retrieved.</p>
3221
+ * @public
3222
+ */
3223
+ RuleSetId: string | undefined;
3224
+ }
3225
+ /**
3226
+ * @public
3227
+ */
3228
+ export interface GetRuleSetResponse {
3229
+ /**
3230
+ * <p>The identifier of the rule set resource.</p>
3231
+ * @public
3232
+ */
3233
+ RuleSetId: string | undefined;
3234
+ /**
3235
+ * <p>The Amazon Resource Name (ARN) of the rule set resource.</p>
3236
+ * @public
3237
+ */
3238
+ RuleSetArn: string | undefined;
3239
+ /**
3240
+ * <p>A user-friendly name for the rule set resource.</p>
3241
+ * @public
3242
+ */
3243
+ RuleSetName: string | undefined;
3244
+ /**
3245
+ * <p>The date of when then rule set was created.</p>
3246
+ * @public
3247
+ */
3248
+ CreatedDate: Date | undefined;
3249
+ /**
3250
+ * <p>The date of when the rule set was last modified.</p>
3251
+ * @public
3252
+ */
3253
+ LastModificationDate: Date | undefined;
3254
+ /**
3255
+ * <p>The rules contained in the rule set.</p>
3256
+ * @public
3257
+ */
3258
+ Rules: Rule[] | undefined;
3259
+ }
3260
+ /**
3261
+ * @public
3262
+ */
3263
+ export interface GetTrafficPolicyRequest {
3264
+ /**
3265
+ * <p>The identifier of the traffic policy resource.</p>
3266
+ * @public
3267
+ */
3268
+ TrafficPolicyId: string | undefined;
3269
+ }
3270
+ /**
3271
+ * @public
3272
+ */
3273
+ export interface GetTrafficPolicyResponse {
3274
+ /**
3275
+ * <p>A user-friendly name for the traffic policy resource.</p>
3276
+ * @public
3277
+ */
3278
+ TrafficPolicyName: string | undefined;
3279
+ /**
3280
+ * <p>The identifier of the traffic policy resource.</p>
3281
+ * @public
3282
+ */
3283
+ TrafficPolicyId: string | undefined;
3284
+ /**
3285
+ * <p>The Amazon Resource Name (ARN) of the traffic policy resource.</p>
3286
+ * @public
3287
+ */
3288
+ TrafficPolicyArn?: string;
3289
+ /**
3290
+ * <p>The list of conditions which are in the traffic policy resource.</p>
3291
+ * @public
3292
+ */
3293
+ PolicyStatements?: PolicyStatement[];
3294
+ /**
3295
+ * <p>The maximum message size in bytes of email which is allowed in by this traffic
3296
+ * policy—anything larger will be blocked.</p>
3297
+ * @public
3298
+ */
3299
+ MaxMessageSizeBytes?: number;
3300
+ /**
3301
+ * <p>The default action of the traffic policy.</p>
3302
+ * @public
3303
+ */
3304
+ DefaultAction?: AcceptAction;
3305
+ /**
3306
+ * <p>The timestamp of when the traffic policy was created.</p>
3307
+ * @public
3308
+ */
3309
+ CreatedTimestamp?: Date;
3310
+ /**
3311
+ * <p>The timestamp of when the traffic policy was last updated.</p>
3312
+ * @public
3313
+ */
3314
+ LastUpdatedTimestamp?: Date;
3315
+ }
3316
+ /**
3317
+ * <p>The structure of an ingress endpoint resource.</p>
3318
+ * @public
3319
+ */
3320
+ export interface IngressPoint {
3321
+ /**
3322
+ * <p>A user friendly name for the ingress endpoint resource.</p>
3323
+ * @public
3324
+ */
3325
+ IngressPointName: string | undefined;
3326
+ /**
3327
+ * <p>The identifier of the ingress endpoint resource.</p>
3328
+ * @public
3329
+ */
3330
+ IngressPointId: string | undefined;
3331
+ /**
3332
+ * <p>The status of the ingress endpoint resource.</p>
3333
+ * @public
3334
+ */
3335
+ Status: IngressPointStatus | undefined;
3336
+ /**
3337
+ * <p>The type of ingress endpoint resource.</p>
3338
+ * @public
3339
+ */
3340
+ Type: IngressPointType | undefined;
3341
+ /**
3342
+ * <p>
3343
+ * The DNS A Record that identifies your ingress endpoint. Configure your DNS Mail Exchange (MX) record with this value to route emails to Mail Manager.
3344
+ * </p>
3345
+ * @public
3346
+ */
3347
+ ARecord?: string;
3348
+ }
3349
+ /**
3350
+ * @public
3351
+ */
3352
+ export interface ListIngressPointsRequest {
3353
+ /**
3354
+ * <p>The maximum number of ingress endpoint resources that are returned per call. You can
3355
+ * use NextToken to obtain further ingress endpoints.</p>
3356
+ * @public
3357
+ */
3358
+ PageSize?: number;
3359
+ /**
3360
+ * <p>If you received a pagination token from a previous call to this API, you can provide it here to continue paginating through the next page of results.</p>
3361
+ * @public
3362
+ */
3363
+ NextToken?: string;
3364
+ }
3365
+ /**
3366
+ * @public
3367
+ */
3368
+ export interface ListIngressPointsResponse {
3369
+ /**
3370
+ * <p>The list of ingress endpoints.</p>
3371
+ * @public
3372
+ */
3373
+ IngressPoints?: IngressPoint[];
3374
+ /**
3375
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.</p>
3376
+ * @public
3377
+ */
3378
+ NextToken?: string;
3379
+ }
3380
+ /**
3381
+ * @public
3382
+ * @enum
3383
+ */
3384
+ export declare const IngressPointStatusToUpdate: {
3385
+ readonly ACTIVE: "ACTIVE";
3386
+ readonly CLOSED: "CLOSED";
3387
+ };
3388
+ /**
3389
+ * @public
3390
+ */
3391
+ export type IngressPointStatusToUpdate = (typeof IngressPointStatusToUpdate)[keyof typeof IngressPointStatusToUpdate];
3392
+ /**
3393
+ * @public
3394
+ */
3395
+ export interface UpdateIngressPointRequest {
3396
+ /**
3397
+ * <p>The identifier for the ingress endpoint you want to update.</p>
3398
+ * @public
3399
+ */
3400
+ IngressPointId: string | undefined;
3401
+ /**
3402
+ * <p>A user friendly name for the ingress endpoint resource.</p>
3403
+ * @public
3404
+ */
3405
+ IngressPointName?: string;
3406
+ /**
3407
+ * <p>The update status of an ingress endpoint.</p>
3408
+ * @public
3409
+ */
3410
+ StatusToUpdate?: IngressPointStatusToUpdate;
3411
+ /**
3412
+ * <p>The identifier of an existing rule set that you attach to an ingress endpoint
3413
+ * resource.</p>
3414
+ * @public
3415
+ */
3416
+ RuleSetId?: string;
3417
+ /**
3418
+ * <p>The identifier of an existing traffic policy that you attach to an ingress endpoint
3419
+ * resource.</p>
3420
+ * @public
3421
+ */
3422
+ TrafficPolicyId?: string;
3423
+ /**
3424
+ * <p>If you choose an Authenticated ingress endpoint, you must configure either an SMTP password or a secret
3425
+ * ARN.</p>
3426
+ * @public
3427
+ */
3428
+ IngressPointConfiguration?: IngressPointConfiguration;
3429
+ }
3430
+ /**
3431
+ * @public
3432
+ */
3433
+ export interface UpdateIngressPointResponse {
3434
+ }
3435
+ /**
3436
+ * <p>The request to list archive export jobs in your account.</p>
3437
+ * @public
3438
+ */
3439
+ export interface ListArchiveExportsRequest {
3440
+ /**
3441
+ * <p>The identifier of the archive.</p>
3442
+ * @public
3443
+ */
3444
+ ArchiveId: string | undefined;
3445
+ /**
3446
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is a unique pagination
3447
+ * token for each page. Make the call again using the returned token to retrieve the next page.
3448
+ * </p>
3449
+ * @public
3450
+ */
3451
+ NextToken?: string;
3452
+ /**
3453
+ * <p>The maximum number of archive export jobs that are returned per call. You can use NextToken to obtain
3454
+ * further pages of archives.
3455
+ * </p>
3456
+ * @public
3457
+ */
3458
+ PageSize?: number;
3459
+ }
3460
+ /**
3461
+ * <p>The response containing a list of archive export jobs and their statuses.</p>
3462
+ * @public
3463
+ */
3464
+ export interface ListArchiveExportsResponse {
3465
+ /**
3466
+ * <p>The list of export job identifiers and statuses.</p>
3467
+ * @public
3468
+ */
3469
+ Exports?: ExportSummary[];
3470
+ /**
3471
+ * <p>If present, use to retrieve the next page of results.</p>
3472
+ * @public
3473
+ */
3474
+ NextToken?: string;
3475
+ }
3476
+ /**
3477
+ * <p>The request to list archive search jobs in your account.</p>
3478
+ * @public
3479
+ */
3480
+ export interface ListArchiveSearchesRequest {
3481
+ /**
3482
+ * <p>The identifier of the archive.</p>
3483
+ * @public
3484
+ */
3485
+ ArchiveId: string | undefined;
3486
+ /**
3487
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is a unique pagination
3488
+ * token for each page. Make the call again using the returned token to retrieve the next page.
3489
+ * </p>
3490
+ * @public
3491
+ */
3492
+ NextToken?: string;
3493
+ /**
3494
+ * <p>The maximum number of archive search jobs that are returned per call. You can use NextToken to obtain
3495
+ * further pages of archives.
3496
+ * </p>
3497
+ * @public
3498
+ */
3499
+ PageSize?: number;
3500
+ }
3501
+ /**
3502
+ * <p>Summary details of an archive search job.</p>
3503
+ * @public
3504
+ */
3505
+ export interface SearchSummary {
3506
+ /**
3507
+ * <p>The unique identifier of the search job.</p>
3508
+ * @public
3509
+ */
3510
+ SearchId?: string;
3511
+ /**
3512
+ * <p>The current status of the search job.</p>
3513
+ * @public
3514
+ */
3515
+ Status?: SearchStatus;
3516
+ }
3517
+ /**
3518
+ * <p>The response containing a list of archive search jobs and their statuses.</p>
3519
+ * @public
3520
+ */
3521
+ export interface ListArchiveSearchesResponse {
3522
+ /**
3523
+ * <p>The list of search job identifiers and statuses.</p>
3524
+ * @public
3525
+ */
3526
+ Searches?: SearchSummary[];
3527
+ /**
3528
+ * <p>If present, use to retrieve the next page of results.</p>
3529
+ * @public
3530
+ */
3531
+ NextToken?: string;
3532
+ }
3533
+ /**
3534
+ * @public
3535
+ */
3536
+ export interface ListRelaysRequest {
3537
+ /**
3538
+ * <p>The number of relays to be returned in one request.</p>
3539
+ * @public
3540
+ */
3541
+ PageSize?: number;
3542
+ /**
3543
+ * <p>If you received a pagination token from a previous call to this API, you can provide it here to continue paginating through the next page of results.</p>
3544
+ * @public
3545
+ */
3546
+ NextToken?: string;
3547
+ }
3548
+ /**
3549
+ * <p>The relay resource that can be used as a rule to relay receiving emails to the destination
3550
+ * relay server.</p>
3551
+ * @public
3552
+ */
3553
+ export interface Relay {
3554
+ /**
3555
+ * <p>The unique relay identifier.</p>
3556
+ * @public
3557
+ */
3558
+ RelayId?: string;
3559
+ /**
3560
+ * <p>The unique relay name.</p>
3561
+ * @public
3562
+ */
3563
+ RelayName?: string;
3564
+ /**
3565
+ * <p>The timestamp of when the relay was last modified.</p>
3566
+ * @public
3567
+ */
3568
+ LastModifiedTimestamp?: Date;
3569
+ }
3570
+ /**
3571
+ * @public
3572
+ */
3573
+ export interface ListRelaysResponse {
3574
+ /**
3575
+ * <p>The list of returned relays.</p>
3576
+ * @public
3577
+ */
3578
+ Relays: Relay[] | undefined;
3579
+ /**
3580
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.</p>
3581
+ * @public
3582
+ */
3583
+ NextToken?: string;
3584
+ }
3585
+ /**
3586
+ * @public
3587
+ */
3588
+ export interface ListRuleSetsRequest {
3589
+ /**
3590
+ * <p>If you received a pagination token from a previous call to this API, you can provide it here to continue paginating through the next page of results.</p>
3591
+ * @public
3592
+ */
3593
+ NextToken?: string;
3594
+ /**
3595
+ * <p>The maximum number of rule set resources that are returned per call. You can use
3596
+ * NextToken to obtain further rule sets.</p>
3597
+ * @public
3598
+ */
3599
+ PageSize?: number;
3600
+ }
3601
+ /**
3602
+ * <p>A rule set contains a list of rules that are evaluated in order. Each rule is
3603
+ * evaluated sequentially for each email.</p>
3604
+ * @public
3605
+ */
3606
+ export interface RuleSet {
3607
+ /**
3608
+ * <p>The identifier of the rule set.</p>
3609
+ * @public
3610
+ */
3611
+ RuleSetId?: string;
3612
+ /**
3613
+ * <p>A user-friendly name for the rule set.</p>
3614
+ * @public
3615
+ */
3616
+ RuleSetName?: string;
3617
+ /**
3618
+ * <p>The last modification date of the rule set.</p>
3619
+ * @public
3620
+ */
3621
+ LastModificationDate?: Date;
3622
+ }
3623
+ /**
3624
+ * @public
3625
+ */
3626
+ export interface ListRuleSetsResponse {
3627
+ /**
3628
+ * <p>The list of rule sets.</p>
3629
+ * @public
3630
+ */
3631
+ RuleSets: RuleSet[] | undefined;
3632
+ /**
3633
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.</p>
3634
+ * @public
3635
+ */
3636
+ NextToken?: string;
3637
+ }
3638
+ /**
3639
+ * @public
3640
+ */
3641
+ export interface ListTagsForResourceRequest {
3642
+ /**
3643
+ * <p>The Amazon Resource Name (ARN) of the resource to retrieve tags from.</p>
3644
+ * @public
3645
+ */
3646
+ ResourceArn: string | undefined;
3647
+ }
3648
+ /**
3649
+ * @public
3650
+ */
3651
+ export interface ListTagsForResourceResponse {
3652
+ /**
3653
+ * <p>The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.</p>
3654
+ * @public
3655
+ */
3656
+ Tags: Tag[] | undefined;
3657
+ }
3658
+ /**
3659
+ * @public
3660
+ */
3661
+ export interface ListTrafficPoliciesRequest {
3662
+ /**
3663
+ * <p>The maximum number of traffic policy resources that are returned per call. You can use
3664
+ * NextToken to obtain further traffic policies.</p>
3665
+ * @public
3666
+ */
3667
+ PageSize?: number;
3668
+ /**
3669
+ * <p>If you received a pagination token from a previous call to this API, you can provide it here to continue paginating through the next page of results.</p>
3670
+ * @public
3671
+ */
3672
+ NextToken?: string;
3673
+ }
3674
+ /**
3675
+ * <p>The structure of a traffic policy resource which is a container for policy
3676
+ * statements.</p>
3677
+ * @public
3678
+ */
3679
+ export interface TrafficPolicy {
3680
+ /**
3681
+ * <p>A user-friendly name of the traffic policy resource.</p>
3682
+ * @public
3683
+ */
3684
+ TrafficPolicyName: string | undefined;
3685
+ /**
3686
+ * <p>The identifier of the traffic policy resource.</p>
3687
+ * @public
3688
+ */
3689
+ TrafficPolicyId: string | undefined;
3690
+ /**
3691
+ * <p>Default action instructs the traffic policy to either Allow or Deny (block) messages that fall outside of (or not addressed by) the conditions of your policy statements</p>
3692
+ * @public
3693
+ */
3694
+ DefaultAction: AcceptAction | undefined;
3695
+ }
3696
+ /**
3697
+ * @public
3698
+ */
3699
+ export interface ListTrafficPoliciesResponse {
3700
+ /**
3701
+ * <p>The list of traffic policies.</p>
3702
+ * @public
3703
+ */
3704
+ TrafficPolicies?: TrafficPolicy[];
3705
+ /**
3706
+ * <p>If NextToken is returned, there are more results available. The value of NextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.</p>
3707
+ * @public
3708
+ */
3709
+ NextToken?: string;
3710
+ }
3711
+ /**
3712
+ * @public
3713
+ */
3714
+ export interface UpdateRelayRequest {
3715
+ /**
3716
+ * <p>The unique relay identifier.</p>
3717
+ * @public
3718
+ */
3719
+ RelayId: string | undefined;
3720
+ /**
3721
+ * <p>The name of the relay resource.</p>
3722
+ * @public
3723
+ */
3724
+ RelayName?: string;
3725
+ /**
3726
+ * <p>The destination relay server address.</p>
3727
+ * @public
3728
+ */
3729
+ ServerName?: string;
3730
+ /**
3731
+ * <p>The destination relay server port.</p>
3732
+ * @public
3733
+ */
3734
+ ServerPort?: number;
3735
+ /**
3736
+ * <p>Authentication for the relay destination server—specify the secretARN where
3737
+ * the SMTP credentials are stored.</p>
3738
+ * @public
3739
+ */
3740
+ Authentication?: RelayAuthentication;
3741
+ }
3742
+ /**
3743
+ * @public
3744
+ */
3745
+ export interface UpdateRelayResponse {
3746
+ }
3747
+ /**
3748
+ * @public
3749
+ */
3750
+ export interface UpdateRuleSetRequest {
3751
+ /**
3752
+ * <p>The identifier of a rule set you want to update.</p>
3753
+ * @public
3754
+ */
3755
+ RuleSetId: string | undefined;
3756
+ /**
3757
+ * <p>A user-friendly name for the rule set resource.</p>
3758
+ * @public
3759
+ */
3760
+ RuleSetName?: string;
3761
+ /**
3762
+ * <p>A new set of rules to replace the current rules of the rule set—these rules will
3763
+ * override all the rules of the rule set.</p>
3764
+ * @public
3765
+ */
3766
+ Rules?: Rule[];
3767
+ }
3768
+ /**
3769
+ * @public
3770
+ */
3771
+ export interface UpdateRuleSetResponse {
3772
+ }
3773
+ /**
3774
+ * <p>The request to initiate an export of emails from an archive.</p>
3775
+ * @public
3776
+ */
3777
+ export interface StartArchiveExportRequest {
3778
+ /**
3779
+ * <p>The identifier of the archive to export emails from.</p>
3780
+ * @public
3781
+ */
3782
+ ArchiveId: string | undefined;
3783
+ /**
3784
+ * <p>Criteria to filter which emails are included in the export.</p>
3785
+ * @public
3786
+ */
3787
+ Filters?: ArchiveFilters;
3788
+ /**
3789
+ * <p>The start of the timestamp range to include emails from.</p>
3790
+ * @public
3791
+ */
3792
+ FromTimestamp: Date | undefined;
3793
+ /**
3794
+ * <p>The end of the timestamp range to include emails from.</p>
3795
+ * @public
3796
+ */
3797
+ ToTimestamp: Date | undefined;
3798
+ /**
3799
+ * <p>The maximum number of email items to include in the export.</p>
3800
+ * @public
3801
+ */
3802
+ MaxResults?: number;
3803
+ /**
3804
+ * <p>Details on where to deliver the exported email data.</p>
3805
+ * @public
3806
+ */
3807
+ ExportDestinationConfiguration: ExportDestinationConfiguration | undefined;
3808
+ }
3809
+ /**
3810
+ * <p>The response from initiating an archive export.</p>
3811
+ * @public
3812
+ */
3813
+ export interface StartArchiveExportResponse {
3814
+ /**
3815
+ * <p>The unique identifier for the initiated export job.</p>
3816
+ * @public
3817
+ */
3818
+ ExportId?: string;
3819
+ }
3820
+ /**
3821
+ * <p>The request to initiate a search across emails in an archive.</p>
3822
+ * @public
3823
+ */
3824
+ export interface StartArchiveSearchRequest {
3825
+ /**
3826
+ * <p>The identifier of the archive to search emails in.</p>
3827
+ * @public
3828
+ */
3829
+ ArchiveId: string | undefined;
3830
+ /**
3831
+ * <p>Criteria to filter which emails are included in the search results.</p>
3832
+ * @public
3833
+ */
3834
+ Filters?: ArchiveFilters;
3835
+ /**
3836
+ * <p>The start timestamp of the range to search emails from.</p>
3837
+ * @public
3838
+ */
3839
+ FromTimestamp: Date | undefined;
3840
+ /**
3841
+ * <p>The end timestamp of the range to search emails from.</p>
3842
+ * @public
3843
+ */
3844
+ ToTimestamp: Date | undefined;
3845
+ /**
3846
+ * <p>The maximum number of search results to return.</p>
3847
+ * @public
3848
+ */
3849
+ MaxResults: number | undefined;
3850
+ }
3851
+ /**
3852
+ * <p>The response from initiating an archive search.</p>
3853
+ * @public
3854
+ */
3855
+ export interface StartArchiveSearchResponse {
3856
+ /**
3857
+ * <p>The unique identifier for the initiated search job.</p>
3858
+ * @public
3859
+ */
3860
+ SearchId?: string;
3861
+ }
3862
+ /**
3863
+ * <p>The request to stop an in-progress archive export job.</p>
3864
+ * @public
3865
+ */
3866
+ export interface StopArchiveExportRequest {
3867
+ /**
3868
+ * <p>The identifier of the export job to stop.</p>
3869
+ * @public
3870
+ */
3871
+ ExportId: string | undefined;
3872
+ }
3873
+ /**
3874
+ * <p>The response indicating if the request to stop the export job succeeded.</p>
3875
+ * <p>On success, returns an HTTP 200 status code. On failure, returns an error message.</p>
3876
+ * @public
3877
+ */
3878
+ export interface StopArchiveExportResponse {
3879
+ }
3880
+ /**
3881
+ * <p>The request to stop an in-progress archive search job.</p>
3882
+ * @public
3883
+ */
3884
+ export interface StopArchiveSearchRequest {
3885
+ /**
3886
+ * <p>The identifier of the search job to stop.</p>
3887
+ * @public
3888
+ */
3889
+ SearchId: string | undefined;
3890
+ }
3891
+ /**
3892
+ * <p>The response indicating if the request to stop the search job succeeded.</p>
3893
+ * <p>On success, returns an HTTP 200 status code. On failure, returns an error message.</p>
3894
+ * @public
3895
+ */
3896
+ export interface StopArchiveSearchResponse {
3897
+ }
3898
+ /**
3899
+ * @public
3900
+ */
3901
+ export interface TagResourceRequest {
3902
+ /**
3903
+ * <p> The Amazon Resource Name (ARN) of the resource that you want to tag. </p>
3904
+ * @public
3905
+ */
3906
+ ResourceArn: string | undefined;
3907
+ /**
3908
+ * <p> The tags used to organize, track, or control access for the resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}. </p>
3909
+ * @public
3910
+ */
3911
+ Tags: Tag[] | undefined;
3912
+ }
3913
+ /**
3914
+ * @public
3915
+ */
3916
+ export interface TagResourceResponse {
3917
+ }
3918
+ /**
3919
+ * @public
3920
+ */
3921
+ export interface UpdateTrafficPolicyRequest {
3922
+ /**
3923
+ * <p>The identifier of the traffic policy that you want to update.</p>
3924
+ * @public
3925
+ */
3926
+ TrafficPolicyId: string | undefined;
3927
+ /**
3928
+ * <p>A user-friendly name for the traffic policy resource.</p>
3929
+ * @public
3930
+ */
3931
+ TrafficPolicyName?: string;
3932
+ /**
3933
+ * <p>The list of conditions to be updated for filtering email traffic.</p>
3934
+ * @public
3935
+ */
3936
+ PolicyStatements?: PolicyStatement[];
3937
+ /**
3938
+ * <p>Default action instructs the traffic policy to either Allow or Deny (block) messages that fall outside of (or not addressed by) the conditions of your policy statements</p>
3939
+ * @public
3940
+ */
3941
+ DefaultAction?: AcceptAction;
3942
+ /**
3943
+ * <p>The maximum message size in bytes of email which is allowed in by this traffic
3944
+ * policy—anything larger will be blocked.</p>
3945
+ * @public
3946
+ */
3947
+ MaxMessageSizeBytes?: number;
3948
+ }
3949
+ /**
3950
+ * @public
3951
+ */
3952
+ export interface UpdateTrafficPolicyResponse {
3953
+ }
3954
+ /**
3955
+ * @public
3956
+ */
3957
+ export interface UntagResourceRequest {
3958
+ /**
3959
+ * <p> The Amazon Resource Name (ARN) of the resource that you want to untag. </p>
3960
+ * @public
3961
+ */
3962
+ ResourceArn: string | undefined;
3963
+ /**
3964
+ * <p> The keys of the key-value pairs for the tag or tags you want to remove from the
3965
+ * specified resource. </p>
3966
+ * @public
3967
+ */
3968
+ TagKeys: string[] | undefined;
3969
+ }
3970
+ /**
3971
+ * @public
3972
+ */
3973
+ export interface UntagResourceResponse {
3974
+ }
3975
+ /**
3976
+ * @internal
3977
+ */
3978
+ export declare const TagFilterSensitiveLog: (obj: Tag) => any;
3979
+ /**
3980
+ * @internal
3981
+ */
3982
+ export declare const CreateAddonInstanceRequestFilterSensitiveLog: (obj: CreateAddonInstanceRequest) => any;
3983
+ /**
3984
+ * @internal
3985
+ */
3986
+ export declare const CreateAddonSubscriptionRequestFilterSensitiveLog: (obj: CreateAddonSubscriptionRequest) => any;
3987
+ /**
3988
+ * @internal
3989
+ */
3990
+ export declare const CreateArchiveRequestFilterSensitiveLog: (obj: CreateArchiveRequest) => any;
3991
+ /**
3992
+ * @internal
3993
+ */
3994
+ export declare const IngressPointConfigurationFilterSensitiveLog: (obj: IngressPointConfiguration) => any;
3995
+ /**
3996
+ * @internal
3997
+ */
3998
+ export declare const CreateIngressPointRequestFilterSensitiveLog: (obj: CreateIngressPointRequest) => any;
3999
+ /**
4000
+ * @internal
4001
+ */
4002
+ export declare const CreateRelayRequestFilterSensitiveLog: (obj: CreateRelayRequest) => any;
4003
+ /**
4004
+ * @internal
4005
+ */
4006
+ export declare const ReplaceRecipientActionFilterSensitiveLog: (obj: ReplaceRecipientAction) => any;
4007
+ /**
4008
+ * @internal
4009
+ */
4010
+ export declare const RuleActionFilterSensitiveLog: (obj: RuleAction) => any;
4011
+ /**
4012
+ * @internal
4013
+ */
4014
+ export declare const RuleFilterSensitiveLog: (obj: Rule) => any;
4015
+ /**
4016
+ * @internal
4017
+ */
4018
+ export declare const CreateRuleSetRequestFilterSensitiveLog: (obj: CreateRuleSetRequest) => any;
4019
+ /**
4020
+ * @internal
4021
+ */
4022
+ export declare const CreateTrafficPolicyRequestFilterSensitiveLog: (obj: CreateTrafficPolicyRequest) => any;
4023
+ /**
4024
+ * @internal
4025
+ */
4026
+ export declare const GetRuleSetResponseFilterSensitiveLog: (obj: GetRuleSetResponse) => any;
4027
+ /**
4028
+ * @internal
4029
+ */
4030
+ export declare const UpdateIngressPointRequestFilterSensitiveLog: (obj: UpdateIngressPointRequest) => any;
4031
+ /**
4032
+ * @internal
4033
+ */
4034
+ export declare const ListTagsForResourceResponseFilterSensitiveLog: (obj: ListTagsForResourceResponse) => any;
4035
+ /**
4036
+ * @internal
4037
+ */
4038
+ export declare const UpdateRuleSetRequestFilterSensitiveLog: (obj: UpdateRuleSetRequest) => any;
4039
+ /**
4040
+ * @internal
4041
+ */
4042
+ export declare const TagResourceRequestFilterSensitiveLog: (obj: TagResourceRequest) => any;
4043
+ /**
4044
+ * @internal
4045
+ */
4046
+ export declare const UntagResourceRequestFilterSensitiveLog: (obj: UntagResourceRequest) => any;