@aws-sdk/client-route53globalresolver 3.942.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 (245) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +581 -0
  3. package/dist-cjs/auth/httpAuthSchemeProvider.js +47 -0
  4. package/dist-cjs/endpoint/endpointResolver.js +18 -0
  5. package/dist-cjs/endpoint/ruleset.js +7 -0
  6. package/dist-cjs/index.js +2674 -0
  7. package/dist-cjs/runtimeConfig.browser.js +39 -0
  8. package/dist-cjs/runtimeConfig.js +56 -0
  9. package/dist-cjs/runtimeConfig.native.js +15 -0
  10. package/dist-cjs/runtimeConfig.shared.js +36 -0
  11. package/dist-es/Route53GlobalResolver.js +101 -0
  12. package/dist-es/Route53GlobalResolverClient.js +50 -0
  13. package/dist-es/auth/httpAuthExtensionConfiguration.js +38 -0
  14. package/dist-es/auth/httpAuthSchemeProvider.js +41 -0
  15. package/dist-es/commands/AssociateHostedZoneCommand.js +16 -0
  16. package/dist-es/commands/BatchCreateFirewallRuleCommand.js +16 -0
  17. package/dist-es/commands/BatchDeleteFirewallRuleCommand.js +16 -0
  18. package/dist-es/commands/BatchUpdateFirewallRuleCommand.js +16 -0
  19. package/dist-es/commands/CreateAccessSourceCommand.js +16 -0
  20. package/dist-es/commands/CreateAccessTokenCommand.js +16 -0
  21. package/dist-es/commands/CreateDNSViewCommand.js +16 -0
  22. package/dist-es/commands/CreateFirewallDomainListCommand.js +16 -0
  23. package/dist-es/commands/CreateFirewallRuleCommand.js +16 -0
  24. package/dist-es/commands/CreateGlobalResolverCommand.js +16 -0
  25. package/dist-es/commands/DeleteAccessSourceCommand.js +16 -0
  26. package/dist-es/commands/DeleteAccessTokenCommand.js +16 -0
  27. package/dist-es/commands/DeleteDNSViewCommand.js +16 -0
  28. package/dist-es/commands/DeleteFirewallDomainListCommand.js +16 -0
  29. package/dist-es/commands/DeleteFirewallRuleCommand.js +16 -0
  30. package/dist-es/commands/DeleteGlobalResolverCommand.js +16 -0
  31. package/dist-es/commands/DisableDNSViewCommand.js +16 -0
  32. package/dist-es/commands/DisassociateHostedZoneCommand.js +16 -0
  33. package/dist-es/commands/EnableDNSViewCommand.js +16 -0
  34. package/dist-es/commands/GetAccessSourceCommand.js +16 -0
  35. package/dist-es/commands/GetAccessTokenCommand.js +16 -0
  36. package/dist-es/commands/GetDNSViewCommand.js +16 -0
  37. package/dist-es/commands/GetFirewallDomainListCommand.js +16 -0
  38. package/dist-es/commands/GetFirewallRuleCommand.js +16 -0
  39. package/dist-es/commands/GetGlobalResolverCommand.js +16 -0
  40. package/dist-es/commands/GetHostedZoneAssociationCommand.js +16 -0
  41. package/dist-es/commands/GetManagedFirewallDomainListCommand.js +16 -0
  42. package/dist-es/commands/ImportFirewallDomainsCommand.js +16 -0
  43. package/dist-es/commands/ListAccessSourcesCommand.js +16 -0
  44. package/dist-es/commands/ListAccessTokensCommand.js +16 -0
  45. package/dist-es/commands/ListDNSViewsCommand.js +16 -0
  46. package/dist-es/commands/ListFirewallDomainListsCommand.js +16 -0
  47. package/dist-es/commands/ListFirewallDomainsCommand.js +16 -0
  48. package/dist-es/commands/ListFirewallRulesCommand.js +16 -0
  49. package/dist-es/commands/ListGlobalResolversCommand.js +16 -0
  50. package/dist-es/commands/ListHostedZoneAssociationsCommand.js +16 -0
  51. package/dist-es/commands/ListManagedFirewallDomainListsCommand.js +16 -0
  52. package/dist-es/commands/ListTagsForResourceCommand.js +16 -0
  53. package/dist-es/commands/TagResourceCommand.js +16 -0
  54. package/dist-es/commands/UntagResourceCommand.js +16 -0
  55. package/dist-es/commands/UpdateAccessSourceCommand.js +16 -0
  56. package/dist-es/commands/UpdateAccessTokenCommand.js +16 -0
  57. package/dist-es/commands/UpdateDNSViewCommand.js +16 -0
  58. package/dist-es/commands/UpdateFirewallDomainsCommand.js +16 -0
  59. package/dist-es/commands/UpdateFirewallRuleCommand.js +16 -0
  60. package/dist-es/commands/UpdateGlobalResolverCommand.js +16 -0
  61. package/dist-es/commands/UpdateHostedZoneAssociationCommand.js +16 -0
  62. package/dist-es/commands/index.js +47 -0
  63. package/dist-es/endpoint/EndpointParameters.js +11 -0
  64. package/dist-es/endpoint/endpointResolver.js +14 -0
  65. package/dist-es/endpoint/ruleset.js +4 -0
  66. package/dist-es/extensionConfiguration.js +1 -0
  67. package/dist-es/index.js +7 -0
  68. package/dist-es/models/Route53GlobalResolverServiceException.js +8 -0
  69. package/dist-es/models/enums.js +74 -0
  70. package/dist-es/models/errors.js +117 -0
  71. package/dist-es/models/models_0.js +1 -0
  72. package/dist-es/pagination/Interfaces.js +1 -0
  73. package/dist-es/pagination/ListAccessSourcesPaginator.js +4 -0
  74. package/dist-es/pagination/ListAccessTokensPaginator.js +4 -0
  75. package/dist-es/pagination/ListDNSViewsPaginator.js +4 -0
  76. package/dist-es/pagination/ListFirewallDomainListsPaginator.js +4 -0
  77. package/dist-es/pagination/ListFirewallDomainsPaginator.js +4 -0
  78. package/dist-es/pagination/ListFirewallRulesPaginator.js +4 -0
  79. package/dist-es/pagination/ListGlobalResolversPaginator.js +4 -0
  80. package/dist-es/pagination/ListHostedZoneAssociationsPaginator.js +4 -0
  81. package/dist-es/pagination/ListManagedFirewallDomainListsPaginator.js +4 -0
  82. package/dist-es/pagination/index.js +10 -0
  83. package/dist-es/runtimeConfig.browser.js +34 -0
  84. package/dist-es/runtimeConfig.js +51 -0
  85. package/dist-es/runtimeConfig.native.js +11 -0
  86. package/dist-es/runtimeConfig.shared.js +32 -0
  87. package/dist-es/runtimeExtensions.js +9 -0
  88. package/dist-es/schemas/schemas_0.js +1651 -0
  89. package/dist-types/Route53GlobalResolver.d.ts +342 -0
  90. package/dist-types/Route53GlobalResolverClient.d.ts +243 -0
  91. package/dist-types/auth/httpAuthExtensionConfiguration.d.ts +29 -0
  92. package/dist-types/auth/httpAuthSchemeProvider.d.ts +75 -0
  93. package/dist-types/commands/AssociateHostedZoneCommand.d.ts +104 -0
  94. package/dist-types/commands/BatchCreateFirewallRuleCommand.d.ts +156 -0
  95. package/dist-types/commands/BatchDeleteFirewallRuleCommand.d.ts +113 -0
  96. package/dist-types/commands/BatchUpdateFirewallRuleCommand.d.ts +151 -0
  97. package/dist-types/commands/CreateAccessSourceCommand.d.ts +144 -0
  98. package/dist-types/commands/CreateAccessTokenCommand.d.ts +109 -0
  99. package/dist-types/commands/CreateDNSViewCommand.d.ts +115 -0
  100. package/dist-types/commands/CreateFirewallDomainListCommand.d.ts +109 -0
  101. package/dist-types/commands/CreateFirewallRuleCommand.d.ts +124 -0
  102. package/dist-types/commands/CreateGlobalResolverCommand.d.ts +116 -0
  103. package/dist-types/commands/DeleteAccessSourceCommand.d.ts +101 -0
  104. package/dist-types/commands/DeleteAccessTokenCommand.d.ts +91 -0
  105. package/dist-types/commands/DeleteDNSViewCommand.d.ts +103 -0
  106. package/dist-types/commands/DeleteFirewallDomainListCommand.d.ts +95 -0
  107. package/dist-types/commands/DeleteFirewallRuleCommand.d.ts +108 -0
  108. package/dist-types/commands/DeleteGlobalResolverCommand.d.ts +107 -0
  109. package/dist-types/commands/DisableDNSViewCommand.d.ts +103 -0
  110. package/dist-types/commands/DisassociateHostedZoneCommand.d.ts +100 -0
  111. package/dist-types/commands/EnableDNSViewCommand.d.ts +103 -0
  112. package/dist-types/commands/GetAccessSourceCommand.d.ts +98 -0
  113. package/dist-types/commands/GetAccessTokenCommand.d.ts +99 -0
  114. package/dist-types/commands/GetDNSViewCommand.d.ts +100 -0
  115. package/dist-types/commands/GetFirewallDomainListCommand.d.ts +99 -0
  116. package/dist-types/commands/GetFirewallRuleCommand.d.ts +105 -0
  117. package/dist-types/commands/GetGlobalResolverCommand.d.ts +104 -0
  118. package/dist-types/commands/GetHostedZoneAssociationCommand.d.ts +96 -0
  119. package/dist-types/commands/GetManagedFirewallDomainListCommand.d.ts +92 -0
  120. package/dist-types/commands/ImportFirewallDomainsCommand.d.ts +96 -0
  121. package/dist-types/commands/ListAccessSourcesCommand.d.ts +106 -0
  122. package/dist-types/commands/ListAccessTokensCommand.d.ts +109 -0
  123. package/dist-types/commands/ListDNSViewsCommand.d.ts +107 -0
  124. package/dist-types/commands/ListFirewallDomainListsCommand.d.ts +103 -0
  125. package/dist-types/commands/ListFirewallDomainsCommand.d.ts +94 -0
  126. package/dist-types/commands/ListFirewallRulesCommand.d.ts +117 -0
  127. package/dist-types/commands/ListGlobalResolversCommand.d.ts +107 -0
  128. package/dist-types/commands/ListHostedZoneAssociationsCommand.d.ts +103 -0
  129. package/dist-types/commands/ListManagedFirewallDomainListsCommand.d.ts +96 -0
  130. package/dist-types/commands/ListTagsForResourceCommand.d.ts +79 -0
  131. package/dist-types/commands/TagResourceCommand.d.ts +84 -0
  132. package/dist-types/commands/UntagResourceCommand.d.ts +81 -0
  133. package/dist-types/commands/UpdateAccessSourceCommand.d.ts +108 -0
  134. package/dist-types/commands/UpdateAccessTokenCommand.d.ts +94 -0
  135. package/dist-types/commands/UpdateDNSViewCommand.d.ts +108 -0
  136. package/dist-types/commands/UpdateFirewallDomainsCommand.d.ts +98 -0
  137. package/dist-types/commands/UpdateFirewallRuleCommand.d.ts +119 -0
  138. package/dist-types/commands/UpdateGlobalResolverCommand.d.ts +110 -0
  139. package/dist-types/commands/UpdateHostedZoneAssociationCommand.d.ts +100 -0
  140. package/dist-types/commands/index.d.ts +47 -0
  141. package/dist-types/endpoint/EndpointParameters.d.ts +32 -0
  142. package/dist-types/endpoint/endpointResolver.d.ts +5 -0
  143. package/dist-types/endpoint/ruleset.d.ts +2 -0
  144. package/dist-types/extensionConfiguration.d.ts +9 -0
  145. package/dist-types/index.d.ts +16 -0
  146. package/dist-types/models/Route53GlobalResolverServiceException.d.ts +14 -0
  147. package/dist-types/models/enums.d.ts +194 -0
  148. package/dist-types/models/errors.d.ts +162 -0
  149. package/dist-types/models/models_0.d.ts +3784 -0
  150. package/dist-types/pagination/Interfaces.d.ts +8 -0
  151. package/dist-types/pagination/ListAccessSourcesPaginator.d.ts +7 -0
  152. package/dist-types/pagination/ListAccessTokensPaginator.d.ts +7 -0
  153. package/dist-types/pagination/ListDNSViewsPaginator.d.ts +7 -0
  154. package/dist-types/pagination/ListFirewallDomainListsPaginator.d.ts +7 -0
  155. package/dist-types/pagination/ListFirewallDomainsPaginator.d.ts +7 -0
  156. package/dist-types/pagination/ListFirewallRulesPaginator.d.ts +7 -0
  157. package/dist-types/pagination/ListGlobalResolversPaginator.d.ts +7 -0
  158. package/dist-types/pagination/ListHostedZoneAssociationsPaginator.d.ts +7 -0
  159. package/dist-types/pagination/ListManagedFirewallDomainListsPaginator.d.ts +7 -0
  160. package/dist-types/pagination/index.d.ts +10 -0
  161. package/dist-types/runtimeConfig.browser.d.ts +51 -0
  162. package/dist-types/runtimeConfig.d.ts +51 -0
  163. package/dist-types/runtimeConfig.native.d.ts +50 -0
  164. package/dist-types/runtimeConfig.shared.d.ts +22 -0
  165. package/dist-types/runtimeExtensions.d.ts +17 -0
  166. package/dist-types/schemas/schemas_0.d.ts +192 -0
  167. package/dist-types/ts3.4/Route53GlobalResolver.d.ts +809 -0
  168. package/dist-types/ts3.4/Route53GlobalResolverClient.d.ts +408 -0
  169. package/dist-types/ts3.4/auth/httpAuthExtensionConfiguration.d.ts +32 -0
  170. package/dist-types/ts3.4/auth/httpAuthSchemeProvider.d.ts +47 -0
  171. package/dist-types/ts3.4/commands/AssociateHostedZoneCommand.d.ts +51 -0
  172. package/dist-types/ts3.4/commands/BatchCreateFirewallRuleCommand.d.ts +51 -0
  173. package/dist-types/ts3.4/commands/BatchDeleteFirewallRuleCommand.d.ts +51 -0
  174. package/dist-types/ts3.4/commands/BatchUpdateFirewallRuleCommand.d.ts +51 -0
  175. package/dist-types/ts3.4/commands/CreateAccessSourceCommand.d.ts +51 -0
  176. package/dist-types/ts3.4/commands/CreateAccessTokenCommand.d.ts +50 -0
  177. package/dist-types/ts3.4/commands/CreateDNSViewCommand.d.ts +47 -0
  178. package/dist-types/ts3.4/commands/CreateFirewallDomainListCommand.d.ts +51 -0
  179. package/dist-types/ts3.4/commands/CreateFirewallRuleCommand.d.ts +51 -0
  180. package/dist-types/ts3.4/commands/CreateGlobalResolverCommand.d.ts +51 -0
  181. package/dist-types/ts3.4/commands/DeleteAccessSourceCommand.d.ts +51 -0
  182. package/dist-types/ts3.4/commands/DeleteAccessTokenCommand.d.ts +50 -0
  183. package/dist-types/ts3.4/commands/DeleteDNSViewCommand.d.ts +47 -0
  184. package/dist-types/ts3.4/commands/DeleteFirewallDomainListCommand.d.ts +51 -0
  185. package/dist-types/ts3.4/commands/DeleteFirewallRuleCommand.d.ts +51 -0
  186. package/dist-types/ts3.4/commands/DeleteGlobalResolverCommand.d.ts +51 -0
  187. package/dist-types/ts3.4/commands/DisableDNSViewCommand.d.ts +47 -0
  188. package/dist-types/ts3.4/commands/DisassociateHostedZoneCommand.d.ts +51 -0
  189. package/dist-types/ts3.4/commands/EnableDNSViewCommand.d.ts +47 -0
  190. package/dist-types/ts3.4/commands/GetAccessSourceCommand.d.ts +50 -0
  191. package/dist-types/ts3.4/commands/GetAccessTokenCommand.d.ts +47 -0
  192. package/dist-types/ts3.4/commands/GetDNSViewCommand.d.ts +47 -0
  193. package/dist-types/ts3.4/commands/GetFirewallDomainListCommand.d.ts +51 -0
  194. package/dist-types/ts3.4/commands/GetFirewallRuleCommand.d.ts +50 -0
  195. package/dist-types/ts3.4/commands/GetGlobalResolverCommand.d.ts +50 -0
  196. package/dist-types/ts3.4/commands/GetHostedZoneAssociationCommand.d.ts +51 -0
  197. package/dist-types/ts3.4/commands/GetManagedFirewallDomainListCommand.d.ts +51 -0
  198. package/dist-types/ts3.4/commands/ImportFirewallDomainsCommand.d.ts +51 -0
  199. package/dist-types/ts3.4/commands/ListAccessSourcesCommand.d.ts +50 -0
  200. package/dist-types/ts3.4/commands/ListAccessTokensCommand.d.ts +50 -0
  201. package/dist-types/ts3.4/commands/ListDNSViewsCommand.d.ts +47 -0
  202. package/dist-types/ts3.4/commands/ListFirewallDomainListsCommand.d.ts +51 -0
  203. package/dist-types/ts3.4/commands/ListFirewallDomainsCommand.d.ts +51 -0
  204. package/dist-types/ts3.4/commands/ListFirewallRulesCommand.d.ts +50 -0
  205. package/dist-types/ts3.4/commands/ListGlobalResolversCommand.d.ts +51 -0
  206. package/dist-types/ts3.4/commands/ListHostedZoneAssociationsCommand.d.ts +51 -0
  207. package/dist-types/ts3.4/commands/ListManagedFirewallDomainListsCommand.d.ts +51 -0
  208. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +51 -0
  209. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +47 -0
  210. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +50 -0
  211. package/dist-types/ts3.4/commands/UpdateAccessSourceCommand.d.ts +51 -0
  212. package/dist-types/ts3.4/commands/UpdateAccessTokenCommand.d.ts +50 -0
  213. package/dist-types/ts3.4/commands/UpdateDNSViewCommand.d.ts +47 -0
  214. package/dist-types/ts3.4/commands/UpdateFirewallDomainsCommand.d.ts +51 -0
  215. package/dist-types/ts3.4/commands/UpdateFirewallRuleCommand.d.ts +51 -0
  216. package/dist-types/ts3.4/commands/UpdateGlobalResolverCommand.d.ts +51 -0
  217. package/dist-types/ts3.4/commands/UpdateHostedZoneAssociationCommand.d.ts +51 -0
  218. package/dist-types/ts3.4/commands/index.d.ts +47 -0
  219. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +45 -0
  220. package/dist-types/ts3.4/endpoint/endpointResolver.d.ts +8 -0
  221. package/dist-types/ts3.4/endpoint/ruleset.d.ts +2 -0
  222. package/dist-types/ts3.4/extensionConfiguration.d.ts +9 -0
  223. package/dist-types/ts3.4/index.d.ts +11 -0
  224. package/dist-types/ts3.4/models/Route53GlobalResolverServiceException.d.ts +9 -0
  225. package/dist-types/ts3.4/models/enums.d.ts +101 -0
  226. package/dist-types/ts3.4/models/errors.d.ts +69 -0
  227. package/dist-types/ts3.4/models/models_0.d.ts +879 -0
  228. package/dist-types/ts3.4/pagination/Interfaces.d.ts +6 -0
  229. package/dist-types/ts3.4/pagination/ListAccessSourcesPaginator.d.ts +11 -0
  230. package/dist-types/ts3.4/pagination/ListAccessTokensPaginator.d.ts +11 -0
  231. package/dist-types/ts3.4/pagination/ListDNSViewsPaginator.d.ts +11 -0
  232. package/dist-types/ts3.4/pagination/ListFirewallDomainListsPaginator.d.ts +11 -0
  233. package/dist-types/ts3.4/pagination/ListFirewallDomainsPaginator.d.ts +11 -0
  234. package/dist-types/ts3.4/pagination/ListFirewallRulesPaginator.d.ts +11 -0
  235. package/dist-types/ts3.4/pagination/ListGlobalResolversPaginator.d.ts +11 -0
  236. package/dist-types/ts3.4/pagination/ListHostedZoneAssociationsPaginator.d.ts +11 -0
  237. package/dist-types/ts3.4/pagination/ListManagedFirewallDomainListsPaginator.d.ts +11 -0
  238. package/dist-types/ts3.4/pagination/index.d.ts +10 -0
  239. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +97 -0
  240. package/dist-types/ts3.4/runtimeConfig.d.ts +93 -0
  241. package/dist-types/ts3.4/runtimeConfig.native.d.ts +101 -0
  242. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +27 -0
  243. package/dist-types/ts3.4/runtimeExtensions.d.ts +13 -0
  244. package/dist-types/ts3.4/schemas/schemas_0.d.ts +199 -0
  245. package/package.json +99 -0
@@ -0,0 +1,3784 @@
1
+ import { BlockOverrideDnsQueryType, ConfidenceThreshold, CRResourceStatus, DnsAdvancedProtection, DnsProtocol, DnsSecValidationType, EdnsClientSubnetType, FirewallBlockResponse, FirewallRuleAction, FirewallRulesFailOpenType, HostedZoneAssociationStatus, IpAddressType, ProfileResourceStatus, TokenStatus } from "./enums";
2
+ /**
3
+ * @public
4
+ */
5
+ export interface CreateAccessSourceInput {
6
+ /**
7
+ * <p>The IP address or CIDR range that is allowed to send DNS queries to the Route 53 Global Resolver.</p>
8
+ * @public
9
+ */
10
+ cidr: string | undefined;
11
+ /**
12
+ * <p>A unique string that identifies the request and ensures idempotency.</p>
13
+ * @public
14
+ */
15
+ clientToken?: string | undefined;
16
+ /**
17
+ * <p>The IP address type for this access source. Valid values are IPv4 and IPv6 (if the Route 53 Global Resolver supports dual-stack).</p>
18
+ * @public
19
+ */
20
+ ipAddressType?: IpAddressType | undefined;
21
+ /**
22
+ * <p>A descriptive name for the access source.</p>
23
+ * @public
24
+ */
25
+ name?: string | undefined;
26
+ /**
27
+ * <p>The ID of the DNS view to associate with this access source.</p>
28
+ * @public
29
+ */
30
+ dnsViewId: string | undefined;
31
+ /**
32
+ * <p>The DNS protocol that is permitted for this access source. Valid values are Do53 (DNS over port 53), DoT (DNS over TLS), and DoH (DNS over HTTPS).</p>
33
+ * @public
34
+ */
35
+ protocol: DnsProtocol | undefined;
36
+ /**
37
+ * <p>Tags to associate with the access source.</p>
38
+ * @public
39
+ */
40
+ tags?: Record<string, string> | undefined;
41
+ }
42
+ /**
43
+ * @public
44
+ */
45
+ export interface CreateAccessSourceOutput {
46
+ /**
47
+ * <p>The Amazon Resource Name (ARN) of the access source.</p>
48
+ * @public
49
+ */
50
+ arn: string | undefined;
51
+ /**
52
+ * <p>The IP address or CIDR range that is allowed to send DNS queries to the Route 53 Global Resolver.</p>
53
+ * @public
54
+ */
55
+ cidr: string | undefined;
56
+ /**
57
+ * <p>The date and time when the access source was created.</p>
58
+ * @public
59
+ */
60
+ createdAt: Date | undefined;
61
+ /**
62
+ * <p>The unique identifier for the access source.</p>
63
+ * @public
64
+ */
65
+ id: string | undefined;
66
+ /**
67
+ * <p>The IP address type for this access source (IPv4 or IPv6).</p>
68
+ * @public
69
+ */
70
+ ipAddressType: IpAddressType | undefined;
71
+ /**
72
+ * <p>The descriptive name of the access source.</p>
73
+ * @public
74
+ */
75
+ name?: string | undefined;
76
+ /**
77
+ * <p>The ID of the DNS view associated with this access source.</p>
78
+ * @public
79
+ */
80
+ dnsViewId: string | undefined;
81
+ /**
82
+ * <p>The DNS protocol that is permitted for this access source (Do53, DoT, or DoH).</p>
83
+ * @public
84
+ */
85
+ protocol: DnsProtocol | undefined;
86
+ /**
87
+ * <p>The operational status of the access source.</p>
88
+ * @public
89
+ */
90
+ status: CRResourceStatus | undefined;
91
+ /**
92
+ * <p>The date and time when the access source was last updated.</p>
93
+ * @public
94
+ */
95
+ updatedAt: Date | undefined;
96
+ }
97
+ /**
98
+ * <p>Information about a field that failed validation.</p>
99
+ * @public
100
+ */
101
+ export interface ValidationExceptionField {
102
+ /**
103
+ * <p>The name of the field that failed validation.</p>
104
+ * @public
105
+ */
106
+ name: string | undefined;
107
+ /**
108
+ * <p>The validation error message for the field.</p>
109
+ * @public
110
+ */
111
+ message: string | undefined;
112
+ }
113
+ /**
114
+ * @public
115
+ */
116
+ export interface DeleteAccessSourceInput {
117
+ /**
118
+ * <p>The unique identifier of the access source to delete.</p>
119
+ * @public
120
+ */
121
+ accessSourceId: string | undefined;
122
+ }
123
+ /**
124
+ * @public
125
+ */
126
+ export interface DeleteAccessSourceOutput {
127
+ /**
128
+ * <p>The Amazon Resource Name (ARN) of the deleted access source.</p>
129
+ * @public
130
+ */
131
+ arn: string | undefined;
132
+ /**
133
+ * <p>The IP address or CIDR range of the deleted access source.</p>
134
+ * @public
135
+ */
136
+ cidr: string | undefined;
137
+ /**
138
+ * <p>The date and time when the access source was originally created.</p>
139
+ * @public
140
+ */
141
+ createdAt: Date | undefined;
142
+ /**
143
+ * <p>The unique identifier of the deleted access source.</p>
144
+ * @public
145
+ */
146
+ id: string | undefined;
147
+ /**
148
+ * <p>The IP address type of the deleted access source (IPv4 or IPv6).</p>
149
+ * @public
150
+ */
151
+ ipAddressType: IpAddressType | undefined;
152
+ /**
153
+ * <p>The name of the deleted access source.</p>
154
+ * @public
155
+ */
156
+ name?: string | undefined;
157
+ /**
158
+ * <p>The ID of the DNS view that was associated with the deleted access source.</p>
159
+ * @public
160
+ */
161
+ dnsViewId: string | undefined;
162
+ /**
163
+ * <p>The DNS protocol that was permitted for the deleted access source.</p>
164
+ * @public
165
+ */
166
+ protocol: DnsProtocol | undefined;
167
+ /**
168
+ * <p>The final status of the deleted access source.</p>
169
+ * @public
170
+ */
171
+ status: CRResourceStatus | undefined;
172
+ /**
173
+ * <p>The date and time when the access source was last updated before deletion.</p>
174
+ * @public
175
+ */
176
+ updatedAt: Date | undefined;
177
+ }
178
+ /**
179
+ * @public
180
+ */
181
+ export interface GetAccessSourceInput {
182
+ /**
183
+ * <p>The unique identifier of the access source to retrieve.</p>
184
+ * @public
185
+ */
186
+ accessSourceId: string | undefined;
187
+ }
188
+ /**
189
+ * @public
190
+ */
191
+ export interface GetAccessSourceOutput {
192
+ /**
193
+ * <p>The Amazon Resource Name (ARN) of the access source.</p>
194
+ * @public
195
+ */
196
+ arn: string | undefined;
197
+ /**
198
+ * <p>The IP range for the rule's parameters in CIDR notation.</p>
199
+ * @public
200
+ */
201
+ cidr: string | undefined;
202
+ /**
203
+ * <p>The time and date the rule was created.</p>
204
+ * @public
205
+ */
206
+ createdAt: Date | undefined;
207
+ /**
208
+ * <p>ID for the rule.</p>
209
+ * @public
210
+ */
211
+ id: string | undefined;
212
+ /**
213
+ * <p>The IP address type.</p>
214
+ * @public
215
+ */
216
+ ipAddressType: IpAddressType | undefined;
217
+ /**
218
+ * <p>Name for the access source.</p>
219
+ * @public
220
+ */
221
+ name?: string | undefined;
222
+ /**
223
+ * <p>ID for the DNS view that the rule is associated to.</p>
224
+ * @public
225
+ */
226
+ dnsViewId: string | undefined;
227
+ /**
228
+ * <p>The protocol determines how data is transmitted to a Global Resolver instance.</p>
229
+ * @public
230
+ */
231
+ protocol: DnsProtocol | undefined;
232
+ /**
233
+ * <p>Information about the status of the rule.</p>
234
+ * @public
235
+ */
236
+ status: CRResourceStatus | undefined;
237
+ /**
238
+ * <p>The time and date the access source was updated.</p>
239
+ * @public
240
+ */
241
+ updatedAt: Date | undefined;
242
+ }
243
+ /**
244
+ * @public
245
+ */
246
+ export interface ListAccessSourcesInput {
247
+ /**
248
+ * <p>The maximum number of results to retrieve in a single call.</p>
249
+ * @public
250
+ */
251
+ maxResults?: number | undefined;
252
+ /**
253
+ * <p>A pagination token used for large sets of results that can't be returned in a single response.</p>
254
+ * @public
255
+ */
256
+ nextToken?: string | undefined;
257
+ /**
258
+ * <p>Values to filter the results.</p>
259
+ * @public
260
+ */
261
+ filters?: Record<string, string[]> | undefined;
262
+ }
263
+ /**
264
+ * <p>Summary information about an access source.</p>
265
+ * @public
266
+ */
267
+ export interface AccessSourcesItem {
268
+ /**
269
+ * <p>The Amazon Resource Name (ARN) of the access source.</p>
270
+ * @public
271
+ */
272
+ arn: string | undefined;
273
+ /**
274
+ * <p>The CIDR block that defines the IP address range for the access source.</p>
275
+ * @public
276
+ */
277
+ cidr: string | undefined;
278
+ /**
279
+ * <p>The date and time when the access source was created.</p>
280
+ * @public
281
+ */
282
+ createdAt: Date | undefined;
283
+ /**
284
+ * <p>The unique identifier of the access source.</p>
285
+ * @public
286
+ */
287
+ id: string | undefined;
288
+ /**
289
+ * <p>The IP address type of the access source.</p>
290
+ * @public
291
+ */
292
+ ipAddressType: IpAddressType | undefined;
293
+ /**
294
+ * <p>The name of the access source.</p>
295
+ * @public
296
+ */
297
+ name?: string | undefined;
298
+ /**
299
+ * <p>The ID of the DNS view that the access source is associated with.</p>
300
+ * @public
301
+ */
302
+ dnsViewId: string | undefined;
303
+ /**
304
+ * <p>The protocol used by the access source.</p>
305
+ * @public
306
+ */
307
+ protocol: DnsProtocol | undefined;
308
+ /**
309
+ * <p>The current status of the access source.</p>
310
+ * @public
311
+ */
312
+ status: CRResourceStatus | undefined;
313
+ /**
314
+ * <p>The date and time when the access source was last updated.</p>
315
+ * @public
316
+ */
317
+ updatedAt: Date | undefined;
318
+ }
319
+ /**
320
+ * @public
321
+ */
322
+ export interface ListAccessSourcesOutput {
323
+ /**
324
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
325
+ * @public
326
+ */
327
+ nextToken?: string | undefined;
328
+ /**
329
+ * <p>An array containing information about the access sources, such as the ID, CIDR etc.</p>
330
+ * @public
331
+ */
332
+ accessSources: AccessSourcesItem[] | undefined;
333
+ }
334
+ /**
335
+ * @public
336
+ */
337
+ export interface UpdateAccessSourceInput {
338
+ /**
339
+ * <p>The unique identifier of the access source to update.</p>
340
+ * @public
341
+ */
342
+ accessSourceId: string | undefined;
343
+ /**
344
+ * <p>The CIDR block for the access source.</p>
345
+ * @public
346
+ */
347
+ cidr?: string | undefined;
348
+ /**
349
+ * <p>The IP address type for the access source.</p>
350
+ * @public
351
+ */
352
+ ipAddressType?: IpAddressType | undefined;
353
+ /**
354
+ * <p>The name of the access source.</p>
355
+ * @public
356
+ */
357
+ name?: string | undefined;
358
+ /**
359
+ * <p>The protocol for the access source.</p>
360
+ * @public
361
+ */
362
+ protocol?: DnsProtocol | undefined;
363
+ }
364
+ /**
365
+ * @public
366
+ */
367
+ export interface UpdateAccessSourceOutput {
368
+ /**
369
+ * <p>The Amazon Resource Name (ARN) of the updated access source.</p>
370
+ * @public
371
+ */
372
+ arn: string | undefined;
373
+ /**
374
+ * <p>The CIDR block of the updated access source.</p>
375
+ * @public
376
+ */
377
+ cidr: string | undefined;
378
+ /**
379
+ * <p>The date and time when the access source was originally created.</p>
380
+ * @public
381
+ */
382
+ createdAt: Date | undefined;
383
+ /**
384
+ * <p>The unique identifier of the updated access source.</p>
385
+ * @public
386
+ */
387
+ id: string | undefined;
388
+ /**
389
+ * <p>The IP address type of the updated access source.</p>
390
+ * @public
391
+ */
392
+ ipAddressType: IpAddressType | undefined;
393
+ /**
394
+ * <p>The name of the updated access source.</p>
395
+ * @public
396
+ */
397
+ name?: string | undefined;
398
+ /**
399
+ * <p>The ID of the DNS view associated with the updated access source.</p>
400
+ * @public
401
+ */
402
+ dnsViewId: string | undefined;
403
+ /**
404
+ * <p>The protocol of the updated access source.</p>
405
+ * @public
406
+ */
407
+ protocol: DnsProtocol | undefined;
408
+ /**
409
+ * <p>The current status of the updated access source.</p>
410
+ * @public
411
+ */
412
+ status: CRResourceStatus | undefined;
413
+ /**
414
+ * <p>The date and time when the access source was last updated.</p>
415
+ * @public
416
+ */
417
+ updatedAt: Date | undefined;
418
+ }
419
+ /**
420
+ * @public
421
+ */
422
+ export interface CreateAccessTokenInput {
423
+ /**
424
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
425
+ * @public
426
+ */
427
+ clientToken?: string | undefined;
428
+ /**
429
+ * <p>The ID of the DNS view to associate with this token.</p>
430
+ * @public
431
+ */
432
+ dnsViewId: string | undefined;
433
+ /**
434
+ * <p>The date and time when the token expires. Tokens can have a minimum expiration of 30 days and maximum of 365 days from creation.</p>
435
+ * @public
436
+ */
437
+ expiresAt?: Date | undefined;
438
+ /**
439
+ * <p>A descriptive name for the access token.</p>
440
+ * @public
441
+ */
442
+ name?: string | undefined;
443
+ /**
444
+ * <p>An array of user-defined keys and optional values. These tags can be used for categorization and organization.</p>
445
+ * @public
446
+ */
447
+ tags?: Record<string, string> | undefined;
448
+ }
449
+ /**
450
+ * @public
451
+ */
452
+ export interface CreateAccessTokenOutput {
453
+ /**
454
+ * <p>The unique identifier for the access token.</p>
455
+ * @public
456
+ */
457
+ id: string | undefined;
458
+ /**
459
+ * <p>The Amazon Resource Name (ARN) of the access token.</p>
460
+ * @public
461
+ */
462
+ arn: string | undefined;
463
+ /**
464
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
465
+ * @public
466
+ */
467
+ clientToken?: string | undefined;
468
+ /**
469
+ * <p>The date and time when the access token was created.</p>
470
+ * @public
471
+ */
472
+ createdAt: Date | undefined;
473
+ /**
474
+ * <p>The ID of the DNS view associated with this access token.</p>
475
+ * @public
476
+ */
477
+ dnsViewId: string | undefined;
478
+ /**
479
+ * <p>The date and time when the access token expires.</p>
480
+ * @public
481
+ */
482
+ expiresAt: Date | undefined;
483
+ /**
484
+ * <p>The name of the access token.</p>
485
+ * @public
486
+ */
487
+ name?: string | undefined;
488
+ /**
489
+ * <p>The operational status of the access token.</p>
490
+ * @public
491
+ */
492
+ status: TokenStatus | undefined;
493
+ /**
494
+ * <p>The access token value. This token should be included in DoH and DoT requests for authentication. Keep this value secure as it provides access to your Route 53 Global Resolver.</p>
495
+ * @public
496
+ */
497
+ value: string | undefined;
498
+ }
499
+ /**
500
+ * @public
501
+ */
502
+ export interface DeleteAccessTokenInput {
503
+ /**
504
+ * <p>The unique identifier of the access token to delete.</p>
505
+ * @public
506
+ */
507
+ accessTokenId: string | undefined;
508
+ }
509
+ /**
510
+ * @public
511
+ */
512
+ export interface DeleteAccessTokenOutput {
513
+ /**
514
+ * <p>The unique identifier of the deleted access token.</p>
515
+ * @public
516
+ */
517
+ id: string | undefined;
518
+ /**
519
+ * <p>The final status of the deleted access token.</p>
520
+ * @public
521
+ */
522
+ status: TokenStatus | undefined;
523
+ /**
524
+ * <p>The date and time when the access token was deleted.</p>
525
+ * @public
526
+ */
527
+ deletedAt: Date | undefined;
528
+ }
529
+ /**
530
+ * @public
531
+ */
532
+ export interface GetAccessTokenInput {
533
+ /**
534
+ * <p>ID of the token.</p>
535
+ * @public
536
+ */
537
+ accessTokenId: string | undefined;
538
+ }
539
+ /**
540
+ * @public
541
+ */
542
+ export interface GetAccessTokenOutput {
543
+ /**
544
+ * <p>ID of the token.</p>
545
+ * @public
546
+ */
547
+ id: string | undefined;
548
+ /**
549
+ * <p>The Amazon Resource Name (ARN) of the token.</p>
550
+ * @public
551
+ */
552
+ arn: string | undefined;
553
+ /**
554
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
555
+ * @public
556
+ */
557
+ clientToken?: string | undefined;
558
+ /**
559
+ * <p>The time and date the token was created.</p>
560
+ * @public
561
+ */
562
+ createdAt: Date | undefined;
563
+ /**
564
+ * <p>ID of the DNS view the token is associated to.</p>
565
+ * @public
566
+ */
567
+ dnsViewId: string | undefined;
568
+ /**
569
+ * <p>The token's expiration time and date.</p>
570
+ * @public
571
+ */
572
+ expiresAt: Date | undefined;
573
+ /**
574
+ * <p>ID of the Global Resolver.</p>
575
+ * @public
576
+ */
577
+ globalResolverId: string | undefined;
578
+ /**
579
+ * <p>Name of the token.</p>
580
+ * @public
581
+ */
582
+ name?: string | undefined;
583
+ /**
584
+ * <p>The operational status of the token.</p>
585
+ * @public
586
+ */
587
+ status: TokenStatus | undefined;
588
+ /**
589
+ * <p>The time and date the token was created.</p>
590
+ * @public
591
+ */
592
+ updatedAt: Date | undefined;
593
+ /**
594
+ * <p>The value of the token.</p>
595
+ * @public
596
+ */
597
+ value: string | undefined;
598
+ }
599
+ /**
600
+ * @public
601
+ */
602
+ export interface ListAccessTokensInput {
603
+ /**
604
+ * <p>The maximum number of results to retrieve in a single call.</p>
605
+ * @public
606
+ */
607
+ maxResults?: number | undefined;
608
+ /**
609
+ * <p>A pagination token used for large sets of results that can't be returned in a single response.</p>
610
+ * @public
611
+ */
612
+ nextToken?: string | undefined;
613
+ /**
614
+ * <p>The ID of the DNS view to list the tokens for.</p>
615
+ * @public
616
+ */
617
+ dnsViewId: string | undefined;
618
+ /**
619
+ * <p>Filtering parameters.</p>
620
+ * @public
621
+ */
622
+ filters?: Record<string, string[]> | undefined;
623
+ }
624
+ /**
625
+ * <p>Summary information about a token.</p>
626
+ * @public
627
+ */
628
+ export interface AccessTokenItem {
629
+ /**
630
+ * <p>The unique identifier of the token.</p>
631
+ * @public
632
+ */
633
+ id: string | undefined;
634
+ /**
635
+ * <p>The Amazon Resource Name (ARN) of the token.</p>
636
+ * @public
637
+ */
638
+ arn: string | undefined;
639
+ /**
640
+ * <p>The date and time when the token was created.</p>
641
+ * @public
642
+ */
643
+ createdAt: Date | undefined;
644
+ /**
645
+ * <p>The ID of the DNS view associated with the token.</p>
646
+ * @public
647
+ */
648
+ dnsViewId: string | undefined;
649
+ /**
650
+ * <p>The date and time when the token expires.</p>
651
+ * @public
652
+ */
653
+ expiresAt: Date | undefined;
654
+ /**
655
+ * <p>The ID of the global resolver associated with the token.</p>
656
+ * @public
657
+ */
658
+ globalResolverId: string | undefined;
659
+ /**
660
+ * <p>The name of the token.</p>
661
+ * @public
662
+ */
663
+ name?: string | undefined;
664
+ /**
665
+ * <p>The current status of the token.</p>
666
+ * @public
667
+ */
668
+ status: TokenStatus | undefined;
669
+ /**
670
+ * <p>The date and time when the token was last updated.</p>
671
+ * @public
672
+ */
673
+ updatedAt: Date | undefined;
674
+ }
675
+ /**
676
+ * @public
677
+ */
678
+ export interface ListAccessTokensOutput {
679
+ /**
680
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
681
+ * @public
682
+ */
683
+ nextToken?: string | undefined;
684
+ /**
685
+ * <p>List of the tokens.</p>
686
+ * @public
687
+ */
688
+ accessTokens?: AccessTokenItem[] | undefined;
689
+ }
690
+ /**
691
+ * @public
692
+ */
693
+ export interface UpdateAccessTokenInput {
694
+ /**
695
+ * <p>The ID of the token.</p>
696
+ * @public
697
+ */
698
+ accessTokenId: string | undefined;
699
+ /**
700
+ * <p>The new name of the token.</p>
701
+ * @public
702
+ */
703
+ name: string | undefined;
704
+ }
705
+ /**
706
+ * @public
707
+ */
708
+ export interface UpdateAccessTokenOutput {
709
+ /**
710
+ * <p>The ID of the token.</p>
711
+ * @public
712
+ */
713
+ id: string | undefined;
714
+ /**
715
+ * <p>The name of the token.</p>
716
+ * @public
717
+ */
718
+ name: string | undefined;
719
+ }
720
+ /**
721
+ * @public
722
+ */
723
+ export interface AssociateHostedZoneInput {
724
+ /**
725
+ * <p>The ID of the Route 53 private hosted zone to associate with the Route 53 Global Resolver resource.</p>
726
+ * @public
727
+ */
728
+ hostedZoneId: string | undefined;
729
+ /**
730
+ * <p>An Amazon Resource Name (ARN) of the Route 53 Global Resolver the private hosted zone will be associated to.</p>
731
+ * @public
732
+ */
733
+ resourceArn: string | undefined;
734
+ /**
735
+ * <p>Name for the private hosted zone association.</p>
736
+ * @public
737
+ */
738
+ name: string | undefined;
739
+ }
740
+ /**
741
+ * @public
742
+ */
743
+ export interface AssociateHostedZoneOutput {
744
+ /**
745
+ * <p>ID of the association.</p>
746
+ * @public
747
+ */
748
+ id: string | undefined;
749
+ /**
750
+ * <p>An Amazon Resource Name (ARN) of the Route 53 Global Resolver the private hosted zone is associated to.</p>
751
+ * @public
752
+ */
753
+ resourceArn: string | undefined;
754
+ /**
755
+ * <p>ID of the private hosted zone.</p>
756
+ * @public
757
+ */
758
+ hostedZoneId: string | undefined;
759
+ /**
760
+ * <p>Name of the hosted zone (also the domain associated with the hosted zone).</p>
761
+ * @public
762
+ */
763
+ hostedZoneName: string | undefined;
764
+ /**
765
+ * <p>Name for the private hosted zone association.</p>
766
+ * @public
767
+ */
768
+ name: string | undefined;
769
+ /**
770
+ * <p>The date and time the private hosted zone association was created.</p>
771
+ * @public
772
+ */
773
+ createdAt: Date | undefined;
774
+ /**
775
+ * <p>The date and time the private hosted zone association was modified.</p>
776
+ * @public
777
+ */
778
+ updatedAt: Date | undefined;
779
+ /**
780
+ * <p>Aggregate status for all the AWS Regions in which the Route 53 Global Resolver exists.</p>
781
+ * @public
782
+ */
783
+ status: HostedZoneAssociationStatus | undefined;
784
+ }
785
+ /**
786
+ * <p>Information about a DNS Firewall rule to create in a batch operation.</p>
787
+ * @public
788
+ */
789
+ export interface BatchCreateFirewallRuleInputItem {
790
+ /**
791
+ * <p>The action to take when a DNS query matches the firewall rule.</p>
792
+ * @public
793
+ */
794
+ action: FirewallRuleAction | undefined;
795
+ /**
796
+ * <p>The DNS record type for the custom response when the action is BLOCK.</p>
797
+ * @public
798
+ */
799
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
800
+ /**
801
+ * <p>The custom domain name for the BLOCK response.</p>
802
+ * @public
803
+ */
804
+ blockOverrideDomain?: string | undefined;
805
+ /**
806
+ * <p>The TTL value for the custom response when the action is BLOCK.</p>
807
+ * @public
808
+ */
809
+ blockOverrideTtl?: number | undefined;
810
+ /**
811
+ * <p>The type of block response to return when the action is BLOCK.</p>
812
+ * @public
813
+ */
814
+ blockResponse?: FirewallBlockResponse | undefined;
815
+ /**
816
+ * <p>A unique string that identifies the request and ensures idempotency.</p>
817
+ * @public
818
+ */
819
+ clientToken: string | undefined;
820
+ /**
821
+ * <p>The confidence threshold for advanced threat detection.</p>
822
+ * @public
823
+ */
824
+ confidenceThreshold?: ConfidenceThreshold | undefined;
825
+ /**
826
+ * <p>A description of the firewall rule.</p>
827
+ * @public
828
+ */
829
+ description?: string | undefined;
830
+ /**
831
+ * <p>Whether to enable advanced DNS threat protection for the firewall rule.</p>
832
+ * @public
833
+ */
834
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
835
+ /**
836
+ * <p>The ID of the firewall domain list to associate with the rule.</p>
837
+ * @public
838
+ */
839
+ firewallDomainListId?: string | undefined;
840
+ /**
841
+ * <p>A name for the firewall rule.</p>
842
+ * @public
843
+ */
844
+ name: string | undefined;
845
+ /**
846
+ * <p>The priority of the firewall rule.</p>
847
+ * @public
848
+ */
849
+ priority?: number | undefined;
850
+ /**
851
+ * <p>The ID of the DNS view to associate the firewall rule with.</p>
852
+ * @public
853
+ */
854
+ dnsViewId: string | undefined;
855
+ /**
856
+ * <p>The DNS query type that the firewall rule should match.</p>
857
+ * @public
858
+ */
859
+ qType?: string | undefined;
860
+ }
861
+ /**
862
+ * @public
863
+ */
864
+ export interface BatchCreateFirewallRuleInput {
865
+ /**
866
+ * <p>The <code>BatchCreateFirewallRuleInputItem</code> objects contain the information for each Firewall rule.</p>
867
+ * @public
868
+ */
869
+ firewallRules: BatchCreateFirewallRuleInputItem[] | undefined;
870
+ }
871
+ /**
872
+ * <p>The result of creating a firewall rule in a batch operation.</p>
873
+ * @public
874
+ */
875
+ export interface BatchCreateFirewallRuleResult {
876
+ /**
877
+ * <p>The action configured for the created firewall rule.</p>
878
+ * @public
879
+ */
880
+ action: FirewallRuleAction | undefined;
881
+ /**
882
+ * <p>The DNS record type configured for the created firewall rule's custom response.</p>
883
+ * @public
884
+ */
885
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
886
+ /**
887
+ * <p>The custom domain name configured for the created firewall rule's BLOCK response.</p>
888
+ * @public
889
+ */
890
+ blockOverrideDomain?: string | undefined;
891
+ /**
892
+ * <p>The TTL value configured for the created firewall rule's custom response.</p>
893
+ * @public
894
+ */
895
+ blockOverrideTtl?: number | undefined;
896
+ /**
897
+ * <p>The type of block response configured for the created firewall rule.</p>
898
+ * @public
899
+ */
900
+ blockResponse?: FirewallBlockResponse | undefined;
901
+ /**
902
+ * <p>The unique string that identified the request and ensured idempotency.</p>
903
+ * @public
904
+ */
905
+ clientToken: string | undefined;
906
+ /**
907
+ * <p>The confidence threshold configured for the created firewall rule's advanced threat detection.</p>
908
+ * @public
909
+ */
910
+ confidenceThreshold?: ConfidenceThreshold | undefined;
911
+ /**
912
+ * <p>The date and time when the firewall rule was created.</p>
913
+ * @public
914
+ */
915
+ createdAt?: Date | undefined;
916
+ /**
917
+ * <p>The description of the created firewall rule.</p>
918
+ * @public
919
+ */
920
+ description?: string | undefined;
921
+ /**
922
+ * <p>Whether advanced DNS threat protection is enabled for the created firewall rule.</p>
923
+ * @public
924
+ */
925
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
926
+ /**
927
+ * <p>The ID of the firewall domain list associated with the created firewall rule.</p>
928
+ * @public
929
+ */
930
+ firewallDomainListId?: string | undefined;
931
+ /**
932
+ * <p>The unique identifier of the created firewall rule.</p>
933
+ * @public
934
+ */
935
+ id?: string | undefined;
936
+ /**
937
+ * <p>The name of the managed domain list associated with the created firewall rule.</p>
938
+ * @public
939
+ */
940
+ managedDomainListName?: string | undefined;
941
+ /**
942
+ * <p>The name of the created firewall rule.</p>
943
+ * @public
944
+ */
945
+ name: string | undefined;
946
+ /**
947
+ * <p>The priority of the created firewall rule.</p>
948
+ * @public
949
+ */
950
+ priority?: number | undefined;
951
+ /**
952
+ * <p>The ID of the DNS view associated with the created firewall rule.</p>
953
+ * @public
954
+ */
955
+ dnsViewId: string | undefined;
956
+ /**
957
+ * <p>The DNS query type that the created firewall rule matches.</p>
958
+ * @public
959
+ */
960
+ queryType?: string | undefined;
961
+ /**
962
+ * <p>The current status of the created firewall rule.</p>
963
+ * @public
964
+ */
965
+ status?: CRResourceStatus | undefined;
966
+ /**
967
+ * <p>The date and time when the firewall rule was last updated.</p>
968
+ * @public
969
+ */
970
+ updatedAt?: Date | undefined;
971
+ }
972
+ /**
973
+ * <p>Information about the result of creating a DNS Firewall rule in a batch operation.</p>
974
+ * @public
975
+ */
976
+ export interface BatchCreateFirewallRuleOutputItem {
977
+ /**
978
+ * <p>The firewall rule that was created in the batch operation.</p>
979
+ * @public
980
+ */
981
+ firewallRule: BatchCreateFirewallRuleResult | undefined;
982
+ /**
983
+ * <p>The HTTP response code for the batch operation result.</p>
984
+ * @public
985
+ */
986
+ code: number | undefined;
987
+ /**
988
+ * <p>A message describing the result of the batch operation, including error details if applicable.</p>
989
+ * @public
990
+ */
991
+ message?: string | undefined;
992
+ }
993
+ /**
994
+ * @public
995
+ */
996
+ export interface BatchCreateFirewallRuleOutput {
997
+ /**
998
+ * <p>High level information about the DNS Firewall rules that failed to create.</p>
999
+ * @public
1000
+ */
1001
+ failures: BatchCreateFirewallRuleOutputItem[] | undefined;
1002
+ /**
1003
+ * <p>High level information about the DNS Firewall rules that were created.</p>
1004
+ * @public
1005
+ */
1006
+ successes: BatchCreateFirewallRuleOutputItem[] | undefined;
1007
+ }
1008
+ /**
1009
+ * <p>Information about a DNS Firewall rule to delete in a batch operation.</p>
1010
+ * @public
1011
+ */
1012
+ export interface BatchDeleteFirewallRuleInputItem {
1013
+ /**
1014
+ * <p>The ID of the DNS Firewall rule to delete.</p>
1015
+ * @public
1016
+ */
1017
+ firewallRuleId: string | undefined;
1018
+ }
1019
+ /**
1020
+ * @public
1021
+ */
1022
+ export interface BatchDeleteFirewallRuleInput {
1023
+ /**
1024
+ * <p>An array of the DNS Firewall IDs to be deleted.</p>
1025
+ * @public
1026
+ */
1027
+ firewallRules: BatchDeleteFirewallRuleInputItem[] | undefined;
1028
+ }
1029
+ /**
1030
+ * <p>Information about a firewall rule that was deleted in a batch operation.</p>
1031
+ * @public
1032
+ */
1033
+ export interface BatchDeleteFirewallRuleResult {
1034
+ /**
1035
+ * <p>The unique string that identified the request and ensured idempotency.</p>
1036
+ * @public
1037
+ */
1038
+ clientToken?: string | undefined;
1039
+ /**
1040
+ * <p>The unique identifier of the deleted firewall rule.</p>
1041
+ * @public
1042
+ */
1043
+ id: string | undefined;
1044
+ /**
1045
+ * <p>The name of the deleted firewall rule.</p>
1046
+ * @public
1047
+ */
1048
+ name?: string | undefined;
1049
+ /**
1050
+ * <p>The final status of the deleted firewall rule.</p>
1051
+ * @public
1052
+ */
1053
+ status?: CRResourceStatus | undefined;
1054
+ }
1055
+ /**
1056
+ * <p>The result of deleting a firewall rule in a batch operation.</p>
1057
+ * @public
1058
+ */
1059
+ export interface BatchDeleteFirewallRuleOutputItem {
1060
+ /**
1061
+ * <p>The firewall rule that was deleted in the batch operation.</p>
1062
+ * @public
1063
+ */
1064
+ firewallRule: BatchDeleteFirewallRuleResult | undefined;
1065
+ /**
1066
+ * <p>The response code for the delete operation.</p>
1067
+ * @public
1068
+ */
1069
+ code: number | undefined;
1070
+ /**
1071
+ * <p>The response message for the delete operation.</p>
1072
+ * @public
1073
+ */
1074
+ message?: string | undefined;
1075
+ }
1076
+ /**
1077
+ * @public
1078
+ */
1079
+ export interface BatchDeleteFirewallRuleOutput {
1080
+ /**
1081
+ * <p>High level information about the DNS Firewall rules that failed to delete.</p>
1082
+ * @public
1083
+ */
1084
+ failures: BatchDeleteFirewallRuleOutputItem[] | undefined;
1085
+ /**
1086
+ * <p>High level information about the DNS Firewall rules that were deleted successfully.</p>
1087
+ * @public
1088
+ */
1089
+ successes: BatchDeleteFirewallRuleOutputItem[] | undefined;
1090
+ }
1091
+ /**
1092
+ * <p>Information for updating a firewall rule in a batch operation.</p>
1093
+ * @public
1094
+ */
1095
+ export interface BatchUpdateFirewallRuleInputItem {
1096
+ /**
1097
+ * <p>The action to take when a DNS query matches the firewall rule.</p>
1098
+ * @public
1099
+ */
1100
+ action?: FirewallRuleAction | undefined;
1101
+ /**
1102
+ * <p>The DNS record type for the custom response when the action is BLOCK.</p>
1103
+ * @public
1104
+ */
1105
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
1106
+ /**
1107
+ * <p>The custom domain name for the BLOCK response.</p>
1108
+ * @public
1109
+ */
1110
+ blockOverrideDomain?: string | undefined;
1111
+ /**
1112
+ * <p>The TTL value for the custom response when the action is BLOCK.</p>
1113
+ * @public
1114
+ */
1115
+ blockOverrideTtl?: number | undefined;
1116
+ /**
1117
+ * <p>The type of block response to return when the action is BLOCK.</p>
1118
+ * @public
1119
+ */
1120
+ blockResponse?: FirewallBlockResponse | undefined;
1121
+ /**
1122
+ * <p>The confidence threshold for advanced threat detection.</p>
1123
+ * @public
1124
+ */
1125
+ confidenceThreshold?: ConfidenceThreshold | undefined;
1126
+ /**
1127
+ * <p>A description of the firewall rule.</p>
1128
+ * @public
1129
+ */
1130
+ description?: string | undefined;
1131
+ /**
1132
+ * <p>Whether to enable advanced DNS threat protection for the firewall rule.</p>
1133
+ * @public
1134
+ */
1135
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
1136
+ /**
1137
+ * <p>The unique identifier of the firewall rule to update.</p>
1138
+ * @public
1139
+ */
1140
+ firewallRuleId: string | undefined;
1141
+ /**
1142
+ * <p>A name for the firewall rule.</p>
1143
+ * @public
1144
+ */
1145
+ name?: string | undefined;
1146
+ /**
1147
+ * <p>The priority of the firewall rule.</p>
1148
+ * @public
1149
+ */
1150
+ priority?: number | undefined;
1151
+ }
1152
+ /**
1153
+ * @public
1154
+ */
1155
+ export interface BatchUpdateFirewallRuleInput {
1156
+ /**
1157
+ * <p>The DNS Firewall rule IDs to be updated.</p>
1158
+ * @public
1159
+ */
1160
+ firewallRules: BatchUpdateFirewallRuleInputItem[] | undefined;
1161
+ }
1162
+ /**
1163
+ * <p>Information about a firewall rule that was updated in a batch operation.</p>
1164
+ * @public
1165
+ */
1166
+ export interface BatchUpdateFirewallRuleResult {
1167
+ /**
1168
+ * <p>The action configured for the updated firewall rule.</p>
1169
+ * @public
1170
+ */
1171
+ action?: FirewallRuleAction | undefined;
1172
+ /**
1173
+ * <p>The DNS record type configured for the updated firewall rule's custom response.</p>
1174
+ * @public
1175
+ */
1176
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
1177
+ /**
1178
+ * <p>The custom domain name configured for the updated firewall rule's BLOCK response.</p>
1179
+ * @public
1180
+ */
1181
+ blockOverrideDomain?: string | undefined;
1182
+ /**
1183
+ * <p>The TTL value configured for the updated firewall rule's custom response.</p>
1184
+ * @public
1185
+ */
1186
+ blockOverrideTtl?: number | undefined;
1187
+ /**
1188
+ * <p>The type of block response configured for the updated firewall rule.</p>
1189
+ * @public
1190
+ */
1191
+ blockResponse?: FirewallBlockResponse | undefined;
1192
+ /**
1193
+ * <p>The unique string that identified the request and ensured idempotency.</p>
1194
+ * @public
1195
+ */
1196
+ clientToken?: string | undefined;
1197
+ /**
1198
+ * <p>The confidence threshold configured for the updated firewall rule's advanced threat detection.</p>
1199
+ * @public
1200
+ */
1201
+ confidenceThreshold?: ConfidenceThreshold | undefined;
1202
+ /**
1203
+ * <p>The date and time when the firewall rule was originally created.</p>
1204
+ * @public
1205
+ */
1206
+ createdAt?: Date | undefined;
1207
+ /**
1208
+ * <p>The description of the updated firewall rule.</p>
1209
+ * @public
1210
+ */
1211
+ description?: string | undefined;
1212
+ /**
1213
+ * <p>Whether advanced DNS threat protection is enabled for the updated firewall rule.</p>
1214
+ * @public
1215
+ */
1216
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
1217
+ /**
1218
+ * <p>The ID of the firewall domain list associated with the updated firewall rule.</p>
1219
+ * @public
1220
+ */
1221
+ firewallDomainListId?: string | undefined;
1222
+ /**
1223
+ * <p>The unique identifier of the updated firewall rule.</p>
1224
+ * @public
1225
+ */
1226
+ id: string | undefined;
1227
+ /**
1228
+ * <p>The name of the updated firewall rule.</p>
1229
+ * @public
1230
+ */
1231
+ name?: string | undefined;
1232
+ /**
1233
+ * <p>The priority of the updated firewall rule.</p>
1234
+ * @public
1235
+ */
1236
+ priority?: number | undefined;
1237
+ /**
1238
+ * <p>The ID of the DNS view associated with the updated firewall rule.</p>
1239
+ * @public
1240
+ */
1241
+ dnsViewId?: string | undefined;
1242
+ /**
1243
+ * <p>The DNS query type that the updated firewall rule matches.</p>
1244
+ * @public
1245
+ */
1246
+ queryType?: string | undefined;
1247
+ /**
1248
+ * <p>The current status of the updated firewall rule.</p>
1249
+ * @public
1250
+ */
1251
+ status?: CRResourceStatus | undefined;
1252
+ /**
1253
+ * <p>The date and time when the firewall rule was last updated.</p>
1254
+ * @public
1255
+ */
1256
+ updatedAt?: Date | undefined;
1257
+ }
1258
+ /**
1259
+ * <p>The result of updating a firewall rule in a batch operation.</p>
1260
+ * @public
1261
+ */
1262
+ export interface BatchUpdateFirewallRuleOutputItem {
1263
+ /**
1264
+ * <p>The firewall rule that was updated in the batch operation.</p>
1265
+ * @public
1266
+ */
1267
+ firewallRule: BatchUpdateFirewallRuleResult | undefined;
1268
+ /**
1269
+ * <p>The response code for the update operation.</p>
1270
+ * @public
1271
+ */
1272
+ code: number | undefined;
1273
+ /**
1274
+ * <p>The response message for the update operation.</p>
1275
+ * @public
1276
+ */
1277
+ message?: string | undefined;
1278
+ }
1279
+ /**
1280
+ * @public
1281
+ */
1282
+ export interface BatchUpdateFirewallRuleOutput {
1283
+ /**
1284
+ * <p>High level information about the DNS Firewall rules that failed to update.</p>
1285
+ * @public
1286
+ */
1287
+ failures: BatchUpdateFirewallRuleOutputItem[] | undefined;
1288
+ /**
1289
+ * <p>High level information about the DNS Firewall rules that were successfully updated.</p>
1290
+ * @public
1291
+ */
1292
+ successes: BatchUpdateFirewallRuleOutputItem[] | undefined;
1293
+ }
1294
+ /**
1295
+ * @public
1296
+ */
1297
+ export interface CreateDNSViewInput {
1298
+ /**
1299
+ * <p>The ID of the Route 53 Global Resolver to associate with this DNS view.</p>
1300
+ * @public
1301
+ */
1302
+ globalResolverId: string | undefined;
1303
+ /**
1304
+ * <p>A unique string that identifies the request and ensures idempotency.</p>
1305
+ * @public
1306
+ */
1307
+ clientToken?: string | undefined;
1308
+ /**
1309
+ * <p>A descriptive name for the DNS view.</p>
1310
+ * @public
1311
+ */
1312
+ name: string | undefined;
1313
+ /**
1314
+ * <p>Whether to enable DNSSEC validation for DNS queries in this DNS view. When enabled, the resolver verifies the authenticity and integrity of DNS responses from public name servers for DNSSEC-signed domains.</p>
1315
+ * @public
1316
+ */
1317
+ dnssecValidation?: DnsSecValidationType | undefined;
1318
+ /**
1319
+ * <p>Whether to enable EDNS Client Subnet injection for DNS queries in this DNS view. When enabled, client subnet information is forwarded to provide more accurate geographic-based DNS responses.</p>
1320
+ * @public
1321
+ */
1322
+ ednsClientSubnet?: EdnsClientSubnetType | undefined;
1323
+ /**
1324
+ * <p>Determines the behavior when Route 53 Global Resolver cannot apply DNS firewall rules due to service impairment. When enabled, DNS queries are allowed through; when disabled, queries are blocked.</p>
1325
+ * @public
1326
+ */
1327
+ firewallRulesFailOpen?: FirewallRulesFailOpenType | undefined;
1328
+ /**
1329
+ * <p>An optional description for the DNS view.</p>
1330
+ * @public
1331
+ */
1332
+ description?: string | undefined;
1333
+ /**
1334
+ * <p>Tags to associate with the DNS view.</p>
1335
+ * @public
1336
+ */
1337
+ tags?: Record<string, string> | undefined;
1338
+ }
1339
+ /**
1340
+ * @public
1341
+ */
1342
+ export interface CreateDNSViewOutput {
1343
+ /**
1344
+ * <p>The unique identifier for the DNS view.</p>
1345
+ * @public
1346
+ */
1347
+ id: string | undefined;
1348
+ /**
1349
+ * <p>The Amazon Resource Name (ARN) of the DNS view.</p>
1350
+ * @public
1351
+ */
1352
+ arn: string | undefined;
1353
+ /**
1354
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
1355
+ * @public
1356
+ */
1357
+ clientToken?: string | undefined;
1358
+ /**
1359
+ * <p>Whether DNSSEC validation is enabled for DNS queries in this DNS view.</p>
1360
+ * @public
1361
+ */
1362
+ dnssecValidation: DnsSecValidationType | undefined;
1363
+ /**
1364
+ * <p>Whether EDNS Client Subnet injection is enabled for DNS queries in this DNS view.</p>
1365
+ * @public
1366
+ */
1367
+ ednsClientSubnet: EdnsClientSubnetType | undefined;
1368
+ /**
1369
+ * <p>The behavior when Route 53 Global Resolver cannot apply DNS firewall rules due to service impairment.</p>
1370
+ * @public
1371
+ */
1372
+ firewallRulesFailOpen: FirewallRulesFailOpenType | undefined;
1373
+ /**
1374
+ * <p>The descriptive name of the DNS view.</p>
1375
+ * @public
1376
+ */
1377
+ name: string | undefined;
1378
+ /**
1379
+ * <p>The description of the DNS view.</p>
1380
+ * @public
1381
+ */
1382
+ description?: string | undefined;
1383
+ /**
1384
+ * <p>The ID of the Route 53 Global Resolver instance the DNS view is created for.</p>
1385
+ * @public
1386
+ */
1387
+ globalResolverId: string | undefined;
1388
+ /**
1389
+ * <p>The date and time when the DNS view was created.</p>
1390
+ * @public
1391
+ */
1392
+ createdAt: Date | undefined;
1393
+ /**
1394
+ * <p>The date and time when the DNS view was last updated.</p>
1395
+ * @public
1396
+ */
1397
+ updatedAt: Date | undefined;
1398
+ /**
1399
+ * <p>The operational status of the DNS view.</p>
1400
+ * @public
1401
+ */
1402
+ status: ProfileResourceStatus | undefined;
1403
+ }
1404
+ /**
1405
+ * @public
1406
+ */
1407
+ export interface CreateFirewallDomainListInput {
1408
+ /**
1409
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
1410
+ * @public
1411
+ */
1412
+ clientToken?: string | undefined;
1413
+ /**
1414
+ * <p>The ID of the Route 53 Global Resolver that the domain list will be associated with.</p>
1415
+ * @public
1416
+ */
1417
+ globalResolverId: string | undefined;
1418
+ /**
1419
+ * <p>An optional description for the firewall domain list.</p>
1420
+ * @public
1421
+ */
1422
+ description?: string | undefined;
1423
+ /**
1424
+ * <p>A descriptive name for the firewall domain list.</p>
1425
+ * @public
1426
+ */
1427
+ name: string | undefined;
1428
+ /**
1429
+ * <p>An array of user-defined keys and optional values. These tags can be used for categorization and organization.</p>
1430
+ * @public
1431
+ */
1432
+ tags?: Record<string, string> | undefined;
1433
+ }
1434
+ /**
1435
+ * @public
1436
+ */
1437
+ export interface CreateFirewallDomainListOutput {
1438
+ /**
1439
+ * <p>An Amazon Resource Name (ARN) for the domain list.</p>
1440
+ * @public
1441
+ */
1442
+ arn: string | undefined;
1443
+ /**
1444
+ * <p>The ID of the Route 53 Global Resolver that the domain list is associated with.</p>
1445
+ * @public
1446
+ */
1447
+ globalResolverId: string | undefined;
1448
+ /**
1449
+ * <p>The time and date the domain list was created on.</p>
1450
+ * @public
1451
+ */
1452
+ createdAt: Date | undefined;
1453
+ /**
1454
+ * <p>Description for the domain list.</p>
1455
+ * @public
1456
+ */
1457
+ description?: string | undefined;
1458
+ /**
1459
+ * <p>Number of domains in the domain list.</p>
1460
+ * @public
1461
+ */
1462
+ domainCount: number | undefined;
1463
+ /**
1464
+ * <p>ID of the domain list.</p>
1465
+ * @public
1466
+ */
1467
+ id: string | undefined;
1468
+ /**
1469
+ * <p>Name of the domain list.</p>
1470
+ * @public
1471
+ */
1472
+ name: string | undefined;
1473
+ /**
1474
+ * <p>Creation status of the domain list.</p>
1475
+ * @public
1476
+ */
1477
+ status: CRResourceStatus | undefined;
1478
+ /**
1479
+ * <p>The time and date the domain list was updated.</p>
1480
+ * @public
1481
+ */
1482
+ updatedAt: Date | undefined;
1483
+ }
1484
+ /**
1485
+ * @public
1486
+ */
1487
+ export interface CreateFirewallRuleInput {
1488
+ /**
1489
+ * <p>The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list:</p> <ul> <li> <p> <code>ALLOW</code> - Permit the request to go through.</p> </li> <li> <p> <code>ALERT</code> - Permit the request and send metrics and logs to CloudWatch.</p> </li> <li> <p> <code>BLOCK</code> - Disallow the request. This option requires additional details in the rule's <code>BlockResponse</code>.</p> </li> </ul>
1490
+ * @public
1491
+ */
1492
+ action: FirewallRuleAction | undefined;
1493
+ /**
1494
+ * <p>The DNS record's type. This determines the format of the record value that you provided in <code>BlockOverrideDomain</code>. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p> <p>This setting is required if the <code>BlockResponse</code> setting is <code>OVERRIDE</code>.</p>
1495
+ * @public
1496
+ */
1497
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
1498
+ /**
1499
+ * <p>The custom DNS record to send back in response to the query. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p> <p>This setting is required if the <code>BlockResponse</code> setting is <code>OVERRIDE</code>.</p>
1500
+ * @public
1501
+ */
1502
+ blockOverrideDomain?: string | undefined;
1503
+ /**
1504
+ * <p>The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p> <p>This setting is required if the <code>BlockResponse</code> setting is <code>OVERRIDE</code>.</p>
1505
+ * @public
1506
+ */
1507
+ blockOverrideTtl?: number | undefined;
1508
+ /**
1509
+ * <p>The response to return when the action is BLOCK. Valid values are NXDOMAIN (domain does not exist), NODATA (domain exists but no records), or OVERRIDE (return custom response).</p>
1510
+ * @public
1511
+ */
1512
+ blockResponse?: FirewallBlockResponse | undefined;
1513
+ /**
1514
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
1515
+ * @public
1516
+ */
1517
+ clientToken?: string | undefined;
1518
+ /**
1519
+ * <p>The confidence threshold for advanced threat detection. Valid values are HIGH, MEDIUM, or LOW, indicating the accuracy level required for threat detection.</p>
1520
+ * @public
1521
+ */
1522
+ confidenceThreshold?: ConfidenceThreshold | undefined;
1523
+ /**
1524
+ * <p>An optional description for the firewall rule.</p>
1525
+ * @public
1526
+ */
1527
+ description?: string | undefined;
1528
+ /**
1529
+ * <p>Whether to enable advanced DNS threat protection for this rule. Advanced protection can detect and block DNS tunneling and Domain Generation Algorithm (DGA) threats.</p>
1530
+ * @public
1531
+ */
1532
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
1533
+ /**
1534
+ * <p>The ID of the firewall domain list to use in this rule.</p>
1535
+ * @public
1536
+ */
1537
+ firewallDomainListId?: string | undefined;
1538
+ /**
1539
+ * <p>A descriptive name for the firewall rule.</p>
1540
+ * @public
1541
+ */
1542
+ name: string | undefined;
1543
+ /**
1544
+ * <p>The priority of this rule. Rules are evaluated in priority order, with lower numbers having higher priority. When a DNS query matches multiple rules, the rule with the highest priority (lowest number) is applied.</p>
1545
+ * @public
1546
+ */
1547
+ priority?: number | undefined;
1548
+ /**
1549
+ * <p>The ID of the DNS view to associate with this firewall rule.</p>
1550
+ * @public
1551
+ */
1552
+ dnsViewId: string | undefined;
1553
+ /**
1554
+ * <p>The DNS query type to match for this rule. Examples include A (IPv4 address), AAAA (IPv6 address), MX (mail exchange), or TXT (text record).</p>
1555
+ * @public
1556
+ */
1557
+ qType?: string | undefined;
1558
+ }
1559
+ /**
1560
+ * @public
1561
+ */
1562
+ export interface CreateFirewallRuleOutput {
1563
+ /**
1564
+ * <p>The action that DNS Firewall takes on DNS queries that match this rule.</p>
1565
+ * @public
1566
+ */
1567
+ action: FirewallRuleAction | undefined;
1568
+ /**
1569
+ * <p>The DNS record type for the custom response when blockResponse is OVERRIDE.</p>
1570
+ * @public
1571
+ */
1572
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
1573
+ /**
1574
+ * <p>The custom domain to return when the action is BLOCK and blockResponse is OVERRIDE.</p>
1575
+ * @public
1576
+ */
1577
+ blockOverrideDomain?: string | undefined;
1578
+ /**
1579
+ * <p>The time-to-live (TTL) value for the custom response when blockResponse is OVERRIDE.</p>
1580
+ * @public
1581
+ */
1582
+ blockOverrideTtl?: number | undefined;
1583
+ /**
1584
+ * <p>The response to return when the action is BLOCK.</p>
1585
+ * @public
1586
+ */
1587
+ blockResponse?: FirewallBlockResponse | undefined;
1588
+ /**
1589
+ * <p>The confidence threshold for advanced threat detection.</p>
1590
+ * @public
1591
+ */
1592
+ confidenceThreshold?: ConfidenceThreshold | undefined;
1593
+ /**
1594
+ * <p>The date and time when the firewall rule was created.</p>
1595
+ * @public
1596
+ */
1597
+ createdAt: Date | undefined;
1598
+ /**
1599
+ * <p>The description of the firewall rule.</p>
1600
+ * @public
1601
+ */
1602
+ description?: string | undefined;
1603
+ /**
1604
+ * <p>Whether advanced DNS threat protection is enabled for this rule.</p>
1605
+ * @public
1606
+ */
1607
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
1608
+ /**
1609
+ * <p>The ID of the firewall domain list used in this rule.</p>
1610
+ * @public
1611
+ */
1612
+ firewallDomainListId?: string | undefined;
1613
+ /**
1614
+ * <p>The unique identifier for the firewall rule.</p>
1615
+ * @public
1616
+ */
1617
+ id: string | undefined;
1618
+ /**
1619
+ * <p>The name of the firewall rule.</p>
1620
+ * @public
1621
+ */
1622
+ name: string | undefined;
1623
+ /**
1624
+ * <p>The priority of the firewall rule.</p>
1625
+ * @public
1626
+ */
1627
+ priority: number | undefined;
1628
+ /**
1629
+ * <p>The ID of the DNS view associated with this firewall rule.</p>
1630
+ * @public
1631
+ */
1632
+ dnsViewId: string | undefined;
1633
+ /**
1634
+ * <p>The DNS query type that this rule matches.</p>
1635
+ * @public
1636
+ */
1637
+ queryType?: string | undefined;
1638
+ /**
1639
+ * <p>The operational status of the firewall rule.</p>
1640
+ * @public
1641
+ */
1642
+ status: CRResourceStatus | undefined;
1643
+ /**
1644
+ * <p>The date and time when the firewall rule was last updated.</p>
1645
+ * @public
1646
+ */
1647
+ updatedAt: Date | undefined;
1648
+ }
1649
+ /**
1650
+ * @public
1651
+ */
1652
+ export interface CreateGlobalResolverInput {
1653
+ /**
1654
+ * <p>A unique string that identifies the request and ensures idempotency. If you make multiple requests with the same client token, only one Route 53 Global Resolver is created.</p>
1655
+ * @public
1656
+ */
1657
+ clientToken?: string | undefined;
1658
+ /**
1659
+ * <p>An optional description for the Route 53 Global Resolver instance. Maximum length of 1024 characters.</p>
1660
+ * @public
1661
+ */
1662
+ description?: string | undefined;
1663
+ /**
1664
+ * <p>A descriptive name for the Route 53 Global Resolver instance. Maximum length of 64 characters.</p>
1665
+ * @public
1666
+ */
1667
+ name: string | undefined;
1668
+ /**
1669
+ * <p>The AWS region where query resolution logs and metrics will be aggregated and delivered. If not specified, logging is not enabled.</p>
1670
+ * @public
1671
+ */
1672
+ observabilityRegion?: string | undefined;
1673
+ /**
1674
+ * <p>List of AWS regions where the Route 53 Global Resolver will operate. The resolver will be distributed across these regions to provide global availability and low-latency DNS resolution.</p>
1675
+ * @public
1676
+ */
1677
+ regions: string[] | undefined;
1678
+ /**
1679
+ * <p>Tags to associate with the Route 53 Global Resolver. Tags are key-value pairs that help you organize and identify your resources.</p>
1680
+ * @public
1681
+ */
1682
+ tags?: Record<string, string> | undefined;
1683
+ }
1684
+ /**
1685
+ * @public
1686
+ */
1687
+ export interface CreateGlobalResolverOutput {
1688
+ /**
1689
+ * <p>The unique identifier for the Route 53 Global Resolver.</p>
1690
+ * @public
1691
+ */
1692
+ id: string | undefined;
1693
+ /**
1694
+ * <p>The Amazon Resource Name (ARN) of the Route 53 Global Resolver.</p>
1695
+ * @public
1696
+ */
1697
+ arn: string | undefined;
1698
+ /**
1699
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
1700
+ * @public
1701
+ */
1702
+ clientToken: string | undefined;
1703
+ /**
1704
+ * <p>The date and time when the Route 53 Global Resolver was created.</p>
1705
+ * @public
1706
+ */
1707
+ createdAt: Date | undefined;
1708
+ /**
1709
+ * <p>The description of the Route 53 Global Resolver.</p>
1710
+ * @public
1711
+ */
1712
+ description?: string | undefined;
1713
+ /**
1714
+ * <p>The hostname that DNS clients should use for TLS certificate validation when connecting to the Route 53 Global Resolver. This value resolves to the global anycast IP addresses for the resolver.</p>
1715
+ * @public
1716
+ */
1717
+ dnsName: string | undefined;
1718
+ /**
1719
+ * <p>The global anycast IPv4 addresses associated with the Route 53 Global Resolver. DNS clients can send queries to these addresses from anywhere on the internet.</p>
1720
+ * @public
1721
+ */
1722
+ ipv4Addresses: string[] | undefined;
1723
+ /**
1724
+ * <p>The name of the Route 53 Global Resolver.</p>
1725
+ * @public
1726
+ */
1727
+ name: string | undefined;
1728
+ /**
1729
+ * <p>The AWS Region where observability data for the Route 53 Global Resolver is stored.</p>
1730
+ * @public
1731
+ */
1732
+ observabilityRegion?: string | undefined;
1733
+ /**
1734
+ * <p>The AWS Regions where the Route 53 Global Resolver is deployed and operational.</p>
1735
+ * @public
1736
+ */
1737
+ regions: string[] | undefined;
1738
+ /**
1739
+ * <p>The current status of the Route 53 Global Resolver. Possible values are CREATING (being provisioned), UPDATING (being modified), OPERATIONAL (ready to serve queries), or DELETING (being removed).</p>
1740
+ * @public
1741
+ */
1742
+ status: CRResourceStatus | undefined;
1743
+ /**
1744
+ * <p>The date and time when the Route 53 Global Resolver was last updated.</p>
1745
+ * @public
1746
+ */
1747
+ updatedAt: Date | undefined;
1748
+ }
1749
+ /**
1750
+ * @public
1751
+ */
1752
+ export interface DeleteDNSViewInput {
1753
+ /**
1754
+ * <p>The unique identifier of the DNS view to delete.</p>
1755
+ * @public
1756
+ */
1757
+ dnsViewId: string | undefined;
1758
+ }
1759
+ /**
1760
+ * @public
1761
+ */
1762
+ export interface DeleteDNSViewOutput {
1763
+ /**
1764
+ * <p>The unique identifier of the deleted DNS view.</p>
1765
+ * @public
1766
+ */
1767
+ id: string | undefined;
1768
+ /**
1769
+ * <p>The Amazon Resource Name (ARN) of the deleted DNS view.</p>
1770
+ * @public
1771
+ */
1772
+ arn: string | undefined;
1773
+ /**
1774
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
1775
+ * @public
1776
+ */
1777
+ clientToken?: string | undefined;
1778
+ /**
1779
+ * <p>Whether DNSSEC validation was enabled for the deleted DNS view.</p>
1780
+ * @public
1781
+ */
1782
+ dnssecValidation: DnsSecValidationType | undefined;
1783
+ /**
1784
+ * <p>Whether EDNS Client Subnet injection was enabled for the deleted DNS view.</p>
1785
+ * @public
1786
+ */
1787
+ ednsClientSubnet: EdnsClientSubnetType | undefined;
1788
+ /**
1789
+ * <p>The firewall rules fail-open behavior that was configured for the deleted DNS view.</p>
1790
+ * @public
1791
+ */
1792
+ firewallRulesFailOpen: FirewallRulesFailOpenType | undefined;
1793
+ /**
1794
+ * <p>The name of the deleted DNS view.</p>
1795
+ * @public
1796
+ */
1797
+ name: string | undefined;
1798
+ /**
1799
+ * <p>The description of the deleted DNS view.</p>
1800
+ * @public
1801
+ */
1802
+ description?: string | undefined;
1803
+ /**
1804
+ * <p>The ID of the Route 53 Global Resolver that the deleted DNS view was associated with.</p>
1805
+ * @public
1806
+ */
1807
+ globalResolverId: string | undefined;
1808
+ /**
1809
+ * <p>The date and time when the DNS view was originally created.</p>
1810
+ * @public
1811
+ */
1812
+ createdAt: Date | undefined;
1813
+ /**
1814
+ * <p>The date and time when the DNS view was last updated before deletion.</p>
1815
+ * @public
1816
+ */
1817
+ updatedAt: Date | undefined;
1818
+ /**
1819
+ * <p>The final status of the deleted DNS view.</p>
1820
+ * @public
1821
+ */
1822
+ status: ProfileResourceStatus | undefined;
1823
+ }
1824
+ /**
1825
+ * @public
1826
+ */
1827
+ export interface DeleteFirewallDomainListInput {
1828
+ /**
1829
+ * <p>The unique identifier of the firewall domain list to delete.</p>
1830
+ * @public
1831
+ */
1832
+ firewallDomainListId: string | undefined;
1833
+ }
1834
+ /**
1835
+ * @public
1836
+ */
1837
+ export interface DeleteFirewallDomainListOutput {
1838
+ /**
1839
+ * <p>The Amazon Resource Name (ARN) of the deleted firewall domain list.</p>
1840
+ * @public
1841
+ */
1842
+ arn: string | undefined;
1843
+ /**
1844
+ * <p>The unique identifier of the deleted firewall domain list.</p>
1845
+ * @public
1846
+ */
1847
+ id: string | undefined;
1848
+ /**
1849
+ * <p>The name of the deleted firewall domain list.</p>
1850
+ * @public
1851
+ */
1852
+ name: string | undefined;
1853
+ /**
1854
+ * <p>The final status of the deleted firewall domain list.</p>
1855
+ * @public
1856
+ */
1857
+ status: CRResourceStatus | undefined;
1858
+ }
1859
+ /**
1860
+ * @public
1861
+ */
1862
+ export interface DeleteFirewallRuleInput {
1863
+ /**
1864
+ * <p>The unique identifier of the firewall rule to delete.</p>
1865
+ * @public
1866
+ */
1867
+ firewallRuleId: string | undefined;
1868
+ }
1869
+ /**
1870
+ * @public
1871
+ */
1872
+ export interface DeleteFirewallRuleOutput {
1873
+ /**
1874
+ * <p>The action that was configured for the deleted firewall rule.</p>
1875
+ * @public
1876
+ */
1877
+ action: FirewallRuleAction | undefined;
1878
+ /**
1879
+ * <p>The DNS record type that was configured for the deleted firewall rule's custom response.</p>
1880
+ * @public
1881
+ */
1882
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
1883
+ /**
1884
+ * <p>The custom domain that was configured for the deleted firewall rule's BLOCK response.</p>
1885
+ * @public
1886
+ */
1887
+ blockOverrideDomain?: string | undefined;
1888
+ /**
1889
+ * <p>The TTL value that was configured for the deleted firewall rule's custom response.</p>
1890
+ * @public
1891
+ */
1892
+ blockOverrideTtl?: number | undefined;
1893
+ /**
1894
+ * <p>The block response type that was configured for the deleted firewall rule.</p>
1895
+ * @public
1896
+ */
1897
+ blockResponse?: FirewallBlockResponse | undefined;
1898
+ /**
1899
+ * <p>The confidence threshold that was configured for the deleted firewall rule's advanced threat detection.</p>
1900
+ * @public
1901
+ */
1902
+ confidenceThreshold?: ConfidenceThreshold | undefined;
1903
+ /**
1904
+ * <p>The date and time when the firewall rule was originally created.</p>
1905
+ * @public
1906
+ */
1907
+ createdAt: Date | undefined;
1908
+ /**
1909
+ * <p>The description of the deleted firewall rule.</p>
1910
+ * @public
1911
+ */
1912
+ description?: string | undefined;
1913
+ /**
1914
+ * <p>Whether advanced DNS threat protection was enabled for the deleted firewall rule.</p>
1915
+ * @public
1916
+ */
1917
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
1918
+ /**
1919
+ * <p>The ID of the firewall domain list that was associated with the deleted firewall rule.</p>
1920
+ * @public
1921
+ */
1922
+ firewallDomainListId?: string | undefined;
1923
+ /**
1924
+ * <p>The unique identifier of the deleted firewall rule.</p>
1925
+ * @public
1926
+ */
1927
+ id: string | undefined;
1928
+ /**
1929
+ * <p>The name of the deleted firewall rule.</p>
1930
+ * @public
1931
+ */
1932
+ name: string | undefined;
1933
+ /**
1934
+ * <p>The priority that was configured for the deleted firewall rule.</p>
1935
+ * @public
1936
+ */
1937
+ priority: number | undefined;
1938
+ /**
1939
+ * <p>The ID of the DNS view that was associated with the deleted firewall rule.</p>
1940
+ * @public
1941
+ */
1942
+ dnsViewId: string | undefined;
1943
+ /**
1944
+ * <p>The DNS query type that the deleted firewall rule was configured to match.</p>
1945
+ * @public
1946
+ */
1947
+ queryType?: string | undefined;
1948
+ /**
1949
+ * <p>The final status of the deleted firewall rule.</p>
1950
+ * @public
1951
+ */
1952
+ status: CRResourceStatus | undefined;
1953
+ /**
1954
+ * <p>The date and time when the firewall rule was last updated before deletion.</p>
1955
+ * @public
1956
+ */
1957
+ updatedAt: Date | undefined;
1958
+ }
1959
+ /**
1960
+ * @public
1961
+ */
1962
+ export interface DeleteGlobalResolverInput {
1963
+ /**
1964
+ * <p>The unique identifier of the Route 53 Global Resolver to delete.</p>
1965
+ * @public
1966
+ */
1967
+ globalResolverId: string | undefined;
1968
+ }
1969
+ /**
1970
+ * @public
1971
+ */
1972
+ export interface DeleteGlobalResolverOutput {
1973
+ /**
1974
+ * <p>The unique identifier of the deleted Route 53 Global Resolver.</p>
1975
+ * @public
1976
+ */
1977
+ id: string | undefined;
1978
+ /**
1979
+ * <p>The Amazon Resource Name (ARN) of the deleted Route 53 Global Resolver.</p>
1980
+ * @public
1981
+ */
1982
+ arn: string | undefined;
1983
+ /**
1984
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
1985
+ * @public
1986
+ */
1987
+ clientToken: string | undefined;
1988
+ /**
1989
+ * <p>The hostname that DNS clients used for TLS certificate validation when connecting to the deleted Route 53 Global Resolver.</p>
1990
+ * @public
1991
+ */
1992
+ dnsName: string | undefined;
1993
+ /**
1994
+ * <p>The AWS Region where observability data for the deleted Route 53 Global Resolver was stored.</p>
1995
+ * @public
1996
+ */
1997
+ observabilityRegion?: string | undefined;
1998
+ /**
1999
+ * <p>The name of the deleted Route 53 Global Resolver.</p>
2000
+ * @public
2001
+ */
2002
+ name: string | undefined;
2003
+ /**
2004
+ * <p>The description of the deleted Route 53 Global Resolver.</p>
2005
+ * @public
2006
+ */
2007
+ description?: string | undefined;
2008
+ /**
2009
+ * <p>The AWS Regions where the deleted Route 53 Global Resolver was deployed and operational.</p>
2010
+ * @public
2011
+ */
2012
+ regions: string[] | undefined;
2013
+ /**
2014
+ * <p>The date and time when the Route 53 Global Resolver was originally created.</p>
2015
+ * @public
2016
+ */
2017
+ createdAt: Date | undefined;
2018
+ /**
2019
+ * <p>The date and time when the Route 53 Global Resolver was last updated before deletion.</p>
2020
+ * @public
2021
+ */
2022
+ updatedAt: Date | undefined;
2023
+ /**
2024
+ * <p>The final status of the deleted Route 53 Global Resolver.</p>
2025
+ * @public
2026
+ */
2027
+ status: CRResourceStatus | undefined;
2028
+ /**
2029
+ * <p>The global anycast IPv4 addresses that were associated with the deleted Route 53 Global Resolver.</p>
2030
+ * @public
2031
+ */
2032
+ ipv4Addresses: string[] | undefined;
2033
+ }
2034
+ /**
2035
+ * @public
2036
+ */
2037
+ export interface DisableDNSViewInput {
2038
+ /**
2039
+ * <p>The unique identifier of the DNS view to disable.</p>
2040
+ * @public
2041
+ */
2042
+ dnsViewId: string | undefined;
2043
+ }
2044
+ /**
2045
+ * @public
2046
+ */
2047
+ export interface DisableDNSViewOutput {
2048
+ /**
2049
+ * <p>The unique identifier of the disabled DNS view.</p>
2050
+ * @public
2051
+ */
2052
+ id: string | undefined;
2053
+ /**
2054
+ * <p>The Amazon Resource Name (ARN) of the disabled DNS view.</p>
2055
+ * @public
2056
+ */
2057
+ arn: string | undefined;
2058
+ /**
2059
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
2060
+ * @public
2061
+ */
2062
+ clientToken?: string | undefined;
2063
+ /**
2064
+ * <p>Whether DNSSEC validation is enabled for the disabled DNS view.</p>
2065
+ * @public
2066
+ */
2067
+ dnssecValidation: DnsSecValidationType | undefined;
2068
+ /**
2069
+ * <p>Whether EDNS Client Subnet injection is enabled for the disabled DNS view.</p>
2070
+ * @public
2071
+ */
2072
+ ednsClientSubnet: EdnsClientSubnetType | undefined;
2073
+ /**
2074
+ * <p>The firewall rules fail-open behavior configured for the disabled DNS view.</p>
2075
+ * @public
2076
+ */
2077
+ firewallRulesFailOpen: FirewallRulesFailOpenType | undefined;
2078
+ /**
2079
+ * <p>The name of the disabled DNS view.</p>
2080
+ * @public
2081
+ */
2082
+ name: string | undefined;
2083
+ /**
2084
+ * <p>The description of the disabled DNS view.</p>
2085
+ * @public
2086
+ */
2087
+ description?: string | undefined;
2088
+ /**
2089
+ * <p>The ID of the Route 53 Global Resolver that the disabled DNS view is associated with.</p>
2090
+ * @public
2091
+ */
2092
+ globalResolverId: string | undefined;
2093
+ /**
2094
+ * <p>The date and time when the DNS view was originally created.</p>
2095
+ * @public
2096
+ */
2097
+ createdAt: Date | undefined;
2098
+ /**
2099
+ * <p>The date and time when the DNS view was last updated.</p>
2100
+ * @public
2101
+ */
2102
+ updatedAt: Date | undefined;
2103
+ /**
2104
+ * <p>The current status of the disabled DNS view.</p>
2105
+ * @public
2106
+ */
2107
+ status: ProfileResourceStatus | undefined;
2108
+ }
2109
+ /**
2110
+ * @public
2111
+ */
2112
+ export interface DisassociateHostedZoneInput {
2113
+ /**
2114
+ * <p>The ID of the Route 53 private hosted zone to disassociate.</p>
2115
+ * @public
2116
+ */
2117
+ hostedZoneId: string | undefined;
2118
+ /**
2119
+ * <p>The Amazon Resource Name (ARN) of the Route 53 Global Resolver resource to disassociate the hosted zone from.</p>
2120
+ * @public
2121
+ */
2122
+ resourceArn: string | undefined;
2123
+ }
2124
+ /**
2125
+ * @public
2126
+ */
2127
+ export interface DisassociateHostedZoneOutput {
2128
+ /**
2129
+ * <p>The unique identifier of the disassociation.</p>
2130
+ * @public
2131
+ */
2132
+ id: string | undefined;
2133
+ /**
2134
+ * <p>The Amazon Resource Name (ARN) of the Route 53 Global Resolver resource that the hosted zone was disassociated from.</p>
2135
+ * @public
2136
+ */
2137
+ resourceArn: string | undefined;
2138
+ /**
2139
+ * <p>The ID of the Route 53 private hosted zone that was disassociated.</p>
2140
+ * @public
2141
+ */
2142
+ hostedZoneId: string | undefined;
2143
+ /**
2144
+ * <p>The name of the Route 53 private hosted zone that was disassociated.</p>
2145
+ * @public
2146
+ */
2147
+ hostedZoneName: string | undefined;
2148
+ /**
2149
+ * <p>The name of the association that was removed.</p>
2150
+ * @public
2151
+ */
2152
+ name: string | undefined;
2153
+ /**
2154
+ * <p>The date and time when the association was originally created.</p>
2155
+ * @public
2156
+ */
2157
+ createdAt: Date | undefined;
2158
+ /**
2159
+ * <p>The date and time when the association was last updated before disassociation.</p>
2160
+ * @public
2161
+ */
2162
+ updatedAt: Date | undefined;
2163
+ /**
2164
+ * <p>The final status of the disassociation.</p>
2165
+ * @public
2166
+ */
2167
+ status: HostedZoneAssociationStatus | undefined;
2168
+ }
2169
+ /**
2170
+ * @public
2171
+ */
2172
+ export interface EnableDNSViewInput {
2173
+ /**
2174
+ * <p>The unique identifier of the DNS view to enable.</p>
2175
+ * @public
2176
+ */
2177
+ dnsViewId: string | undefined;
2178
+ }
2179
+ /**
2180
+ * @public
2181
+ */
2182
+ export interface EnableDNSViewOutput {
2183
+ /**
2184
+ * <p>The unique identifier of the enabled DNS view.</p>
2185
+ * @public
2186
+ */
2187
+ id: string | undefined;
2188
+ /**
2189
+ * <p>The Amazon Resource Name (ARN) of the enabled DNS view.</p>
2190
+ * @public
2191
+ */
2192
+ arn: string | undefined;
2193
+ /**
2194
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
2195
+ * @public
2196
+ */
2197
+ clientToken?: string | undefined;
2198
+ /**
2199
+ * <p>Whether DNSSEC validation is enabled for the enabled DNS view.</p>
2200
+ * @public
2201
+ */
2202
+ dnssecValidation: DnsSecValidationType | undefined;
2203
+ /**
2204
+ * <p>Whether EDNS Client Subnet injection is enabled for the enabled DNS view.</p>
2205
+ * @public
2206
+ */
2207
+ ednsClientSubnet: EdnsClientSubnetType | undefined;
2208
+ /**
2209
+ * <p>The firewall rules fail-open behavior configured for the enabled DNS view.</p>
2210
+ * @public
2211
+ */
2212
+ firewallRulesFailOpen: FirewallRulesFailOpenType | undefined;
2213
+ /**
2214
+ * <p>The name of the enabled DNS view.</p>
2215
+ * @public
2216
+ */
2217
+ name: string | undefined;
2218
+ /**
2219
+ * <p>The description of the enabled DNS view.</p>
2220
+ * @public
2221
+ */
2222
+ description?: string | undefined;
2223
+ /**
2224
+ * <p>The ID of the Route 53 Global Resolver that the enabled DNS view is associated with.</p>
2225
+ * @public
2226
+ */
2227
+ globalResolverId: string | undefined;
2228
+ /**
2229
+ * <p>The date and time when the DNS view was originally created.</p>
2230
+ * @public
2231
+ */
2232
+ createdAt: Date | undefined;
2233
+ /**
2234
+ * <p>The date and time when the DNS view was last updated.</p>
2235
+ * @public
2236
+ */
2237
+ updatedAt: Date | undefined;
2238
+ /**
2239
+ * <p>The current status of the enabled DNS view.</p>
2240
+ * @public
2241
+ */
2242
+ status: ProfileResourceStatus | undefined;
2243
+ }
2244
+ /**
2245
+ * @public
2246
+ */
2247
+ export interface GetDNSViewInput {
2248
+ /**
2249
+ * <p>The ID of the DNS view to retrieve information about.</p>
2250
+ * @public
2251
+ */
2252
+ dnsViewId: string | undefined;
2253
+ }
2254
+ /**
2255
+ * @public
2256
+ */
2257
+ export interface GetDNSViewOutput {
2258
+ /**
2259
+ * <p>ID of the DNS view.</p>
2260
+ * @public
2261
+ */
2262
+ id: string | undefined;
2263
+ /**
2264
+ * <p>Amazon Resource Name (ARN) of the DNS view.</p>
2265
+ * @public
2266
+ */
2267
+ arn: string | undefined;
2268
+ /**
2269
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
2270
+ * @public
2271
+ */
2272
+ clientToken?: string | undefined;
2273
+ /**
2274
+ * <p>Specifies whether DNSSEC is enabled or disabled for the DNS view.</p>
2275
+ * @public
2276
+ */
2277
+ dnssecValidation: DnsSecValidationType | undefined;
2278
+ /**
2279
+ * <p>Specifies whether edns0 client subnet is enabled.</p>
2280
+ * @public
2281
+ */
2282
+ ednsClientSubnet: EdnsClientSubnetType | undefined;
2283
+ /**
2284
+ * <p>Specifies the DNS Firewall failure mode configuration. When enabled, the DNS Firewall allows DNS queries to proceed if it's unable to properly evaluate them. When disabled, the DNS Firewall blocks DNS queries it's unable to evaluate.</p>
2285
+ * @public
2286
+ */
2287
+ firewallRulesFailOpen: FirewallRulesFailOpenType | undefined;
2288
+ /**
2289
+ * <p>Name of the DNS view.</p>
2290
+ * @public
2291
+ */
2292
+ name: string | undefined;
2293
+ /**
2294
+ * <p>Description of the DNS view.</p>
2295
+ * @public
2296
+ */
2297
+ description?: string | undefined;
2298
+ /**
2299
+ * <p>ID of the Global Resolver the DNS view is associated to.</p>
2300
+ * @public
2301
+ */
2302
+ globalResolverId: string | undefined;
2303
+ /**
2304
+ * <p>The time and date the DNS view was creates on.</p>
2305
+ * @public
2306
+ */
2307
+ createdAt: Date | undefined;
2308
+ /**
2309
+ * <p>The time and date the DNS view was updated on.</p>
2310
+ * @public
2311
+ */
2312
+ updatedAt: Date | undefined;
2313
+ /**
2314
+ * <p>Operational status of the DNS view.</p>
2315
+ * @public
2316
+ */
2317
+ status: ProfileResourceStatus | undefined;
2318
+ }
2319
+ /**
2320
+ * @public
2321
+ */
2322
+ export interface ListDNSViewsInput {
2323
+ /**
2324
+ * <p>The maximum number of results to retrieve in a single call.</p>
2325
+ * @public
2326
+ */
2327
+ maxResults?: number | undefined;
2328
+ /**
2329
+ * <p>A pagination token used for large sets of results that can't be returned in a single response.</p>
2330
+ * @public
2331
+ */
2332
+ nextToken?: string | undefined;
2333
+ /**
2334
+ * <p>The Global Resolver ID.</p>
2335
+ * @public
2336
+ */
2337
+ globalResolverId: string | undefined;
2338
+ }
2339
+ /**
2340
+ * <p>Summary information about a DNS view.</p>
2341
+ * @public
2342
+ */
2343
+ export interface DNSViewSummary {
2344
+ /**
2345
+ * <p>The unique identifier of the DNS view.</p>
2346
+ * @public
2347
+ */
2348
+ id: string | undefined;
2349
+ /**
2350
+ * <p>The Amazon Resource Name (ARN) of the DNS view.</p>
2351
+ * @public
2352
+ */
2353
+ arn: string | undefined;
2354
+ /**
2355
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
2356
+ * @public
2357
+ */
2358
+ clientToken: string | undefined;
2359
+ /**
2360
+ * <p>Whether DNSSEC validation is enabled for the DNS view.</p>
2361
+ * @public
2362
+ */
2363
+ dnssecValidation: DnsSecValidationType | undefined;
2364
+ /**
2365
+ * <p>Whether EDNS Client Subnet injection is enabled for the DNS view.</p>
2366
+ * @public
2367
+ */
2368
+ ednsClientSubnet: EdnsClientSubnetType | undefined;
2369
+ /**
2370
+ * <p>Whether firewall rules fail open when they cannot be evaluated.</p>
2371
+ * @public
2372
+ */
2373
+ firewallRulesFailOpen: FirewallRulesFailOpenType | undefined;
2374
+ /**
2375
+ * <p>The name of the DNS view.</p>
2376
+ * @public
2377
+ */
2378
+ name: string | undefined;
2379
+ /**
2380
+ * <p>A description of the DNS view.</p>
2381
+ * @public
2382
+ */
2383
+ description?: string | undefined;
2384
+ /**
2385
+ * <p>The ID of the global resolver that the DNS view is associated with.</p>
2386
+ * @public
2387
+ */
2388
+ globalResolverId: string | undefined;
2389
+ /**
2390
+ * <p>The date and time when the DNS view was created.</p>
2391
+ * @public
2392
+ */
2393
+ createdAt: Date | undefined;
2394
+ /**
2395
+ * <p>The date and time when the DNS view was last updated.</p>
2396
+ * @public
2397
+ */
2398
+ updatedAt: Date | undefined;
2399
+ /**
2400
+ * <p>The current status of the DNS view.</p>
2401
+ * @public
2402
+ */
2403
+ status: ProfileResourceStatus | undefined;
2404
+ }
2405
+ /**
2406
+ * @public
2407
+ */
2408
+ export interface ListDNSViewsOutput {
2409
+ /**
2410
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
2411
+ * @public
2412
+ */
2413
+ nextToken?: string | undefined;
2414
+ /**
2415
+ * <p>An array of information about the DNS views, such as whether DNSSEC is enabled, creation time, etc.</p>
2416
+ * @public
2417
+ */
2418
+ dnsViews: DNSViewSummary[] | undefined;
2419
+ }
2420
+ /**
2421
+ * @public
2422
+ */
2423
+ export interface UpdateDNSViewInput {
2424
+ /**
2425
+ * <p>The unique identifier of the DNS view to update.</p>
2426
+ * @public
2427
+ */
2428
+ dnsViewId: string | undefined;
2429
+ /**
2430
+ * <p>The name of the DNS view.</p>
2431
+ * @public
2432
+ */
2433
+ name?: string | undefined;
2434
+ /**
2435
+ * <p>A description of the DNS view.</p>
2436
+ * @public
2437
+ */
2438
+ description?: string | undefined;
2439
+ /**
2440
+ * <p>Whether to enable DNSSEC validation for the DNS view.</p>
2441
+ * @public
2442
+ */
2443
+ dnssecValidation?: DnsSecValidationType | undefined;
2444
+ /**
2445
+ * <p>Whether to enable EDNS Client Subnet injection for the DNS view.</p>
2446
+ * @public
2447
+ */
2448
+ ednsClientSubnet?: EdnsClientSubnetType | undefined;
2449
+ /**
2450
+ * <p>Whether firewall rules should fail open when they cannot be evaluated.</p>
2451
+ * @public
2452
+ */
2453
+ firewallRulesFailOpen?: FirewallRulesFailOpenType | undefined;
2454
+ }
2455
+ /**
2456
+ * @public
2457
+ */
2458
+ export interface UpdateDNSViewOutput {
2459
+ /**
2460
+ * <p>The unique identifier of the updated DNS view.</p>
2461
+ * @public
2462
+ */
2463
+ id: string | undefined;
2464
+ /**
2465
+ * <p>The Amazon Resource Name (ARN) of the updated DNS view.</p>
2466
+ * @public
2467
+ */
2468
+ arn: string | undefined;
2469
+ /**
2470
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
2471
+ * @public
2472
+ */
2473
+ clientToken?: string | undefined;
2474
+ /**
2475
+ * <p>Whether DNSSEC validation is enabled for the updated DNS view.</p>
2476
+ * @public
2477
+ */
2478
+ dnssecValidation: DnsSecValidationType | undefined;
2479
+ /**
2480
+ * <p>Whether EDNS Client Subnet injection is enabled for the updated DNS view.</p>
2481
+ * @public
2482
+ */
2483
+ ednsClientSubnet: EdnsClientSubnetType | undefined;
2484
+ /**
2485
+ * <p>Whether firewall rules fail open when they cannot be evaluated for the updated DNS view.</p>
2486
+ * @public
2487
+ */
2488
+ firewallRulesFailOpen: FirewallRulesFailOpenType | undefined;
2489
+ /**
2490
+ * <p>The name of the updated DNS view.</p>
2491
+ * @public
2492
+ */
2493
+ name: string | undefined;
2494
+ /**
2495
+ * <p>The description of the updated DNS view.</p>
2496
+ * @public
2497
+ */
2498
+ description?: string | undefined;
2499
+ /**
2500
+ * <p>The ID of the global resolver associated with the updated DNS view.</p>
2501
+ * @public
2502
+ */
2503
+ globalResolverId: string | undefined;
2504
+ /**
2505
+ * <p>The date and time when the DNS view was originally created.</p>
2506
+ * @public
2507
+ */
2508
+ createdAt: Date | undefined;
2509
+ /**
2510
+ * <p>The date and time when the DNS view was last updated.</p>
2511
+ * @public
2512
+ */
2513
+ updatedAt: Date | undefined;
2514
+ /**
2515
+ * <p>The current status of the updated DNS view.</p>
2516
+ * @public
2517
+ */
2518
+ status: ProfileResourceStatus | undefined;
2519
+ }
2520
+ /**
2521
+ * @public
2522
+ */
2523
+ export interface GetFirewallDomainListInput {
2524
+ /**
2525
+ * <p>ID of the domain list.</p>
2526
+ * @public
2527
+ */
2528
+ firewallDomainListId: string | undefined;
2529
+ }
2530
+ /**
2531
+ * @public
2532
+ */
2533
+ export interface GetFirewallDomainListOutput {
2534
+ /**
2535
+ * <p>Amazon Resource Name (ARN) of the domain list.</p>
2536
+ * @public
2537
+ */
2538
+ arn: string | undefined;
2539
+ /**
2540
+ * <p>ID of the Global Resolver that the domain list is associated to.</p>
2541
+ * @public
2542
+ */
2543
+ globalResolverId: string | undefined;
2544
+ /**
2545
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
2546
+ * @public
2547
+ */
2548
+ clientToken?: string | undefined;
2549
+ /**
2550
+ * <p>The time and date the domain list was created.</p>
2551
+ * @public
2552
+ */
2553
+ createdAt: Date | undefined;
2554
+ /**
2555
+ * <p>The description of the domain list.</p>
2556
+ * @public
2557
+ */
2558
+ description?: string | undefined;
2559
+ /**
2560
+ * <p>Number of domains in the domain list.</p>
2561
+ * @public
2562
+ */
2563
+ domainCount: number | undefined;
2564
+ /**
2565
+ * <p>ID of the domain list.</p>
2566
+ * @public
2567
+ */
2568
+ id: string | undefined;
2569
+ /**
2570
+ * <p>Name of the domain list.</p>
2571
+ * @public
2572
+ */
2573
+ name: string | undefined;
2574
+ /**
2575
+ * <p>Operational status of the domain list.</p>
2576
+ * @public
2577
+ */
2578
+ status: CRResourceStatus | undefined;
2579
+ /**
2580
+ * <p>Additional information about the status of the domain list.</p>
2581
+ * @public
2582
+ */
2583
+ statusMessage?: string | undefined;
2584
+ /**
2585
+ * <p>The date and time the domain list was updated.</p>
2586
+ * @public
2587
+ */
2588
+ updatedAt: Date | undefined;
2589
+ }
2590
+ /**
2591
+ * @public
2592
+ */
2593
+ export interface ImportFirewallDomainsInput {
2594
+ /**
2595
+ * <p>The fully qualified URL of the file in Amazon S3 that contains the list of domains to import. The file should contain one domain per line.</p>
2596
+ * @public
2597
+ */
2598
+ domainFileUrl: string | undefined;
2599
+ /**
2600
+ * <p>ID of the DNS Firewall domain list that you want to import the domain list to.</p>
2601
+ * @public
2602
+ */
2603
+ firewallDomainListId: string | undefined;
2604
+ /**
2605
+ * <p>This value is <code>REPLACE</code>, and it updates the domain list to match the list of domains in the imported file.</p>
2606
+ * @public
2607
+ */
2608
+ operation: string | undefined;
2609
+ }
2610
+ /**
2611
+ * @public
2612
+ */
2613
+ export interface ImportFirewallDomainsOutput {
2614
+ /**
2615
+ * <p>ID of the DNS Firewall domain list that you imported the domain list to.</p>
2616
+ * @public
2617
+ */
2618
+ id: string | undefined;
2619
+ /**
2620
+ * <p>Name of the DNS Firewall domain list.</p>
2621
+ * @public
2622
+ */
2623
+ name: string | undefined;
2624
+ /**
2625
+ * <p>Operational status of the DNS Firewall domain list.</p>
2626
+ * @public
2627
+ */
2628
+ status: CRResourceStatus | undefined;
2629
+ }
2630
+ /**
2631
+ * @public
2632
+ */
2633
+ export interface ListFirewallDomainListsInput {
2634
+ /**
2635
+ * <p>The maximum number of results to retrieve in a single call.</p>
2636
+ * @public
2637
+ */
2638
+ maxResults?: number | undefined;
2639
+ /**
2640
+ * <p>A pagination token used for large sets of results that can't be returned in a single response.</p>
2641
+ * @public
2642
+ */
2643
+ nextToken?: string | undefined;
2644
+ /**
2645
+ * <p>The ID of the Global Resolver that contains the DNS view the domain lists are associated to.</p>
2646
+ * @public
2647
+ */
2648
+ globalResolverId?: string | undefined;
2649
+ }
2650
+ /**
2651
+ * <p>Summary information about a firewall domain list.</p>
2652
+ * @public
2653
+ */
2654
+ export interface FirewallDomainListsItem {
2655
+ /**
2656
+ * <p>The Amazon Resource Name (ARN) of the firewall domain list.</p>
2657
+ * @public
2658
+ */
2659
+ arn: string | undefined;
2660
+ /**
2661
+ * <p>The ID of the global resolver that the firewall domain list is associated with.</p>
2662
+ * @public
2663
+ */
2664
+ globalResolverId: string | undefined;
2665
+ /**
2666
+ * <p>The date and time when the firewall domain list was created.</p>
2667
+ * @public
2668
+ */
2669
+ createdAt: Date | undefined;
2670
+ /**
2671
+ * <p>A description of the firewall domain list.</p>
2672
+ * @public
2673
+ */
2674
+ description?: string | undefined;
2675
+ /**
2676
+ * <p>The unique identifier of the firewall domain list.</p>
2677
+ * @public
2678
+ */
2679
+ id: string | undefined;
2680
+ /**
2681
+ * <p>The name of the firewall domain list.</p>
2682
+ * @public
2683
+ */
2684
+ name: string | undefined;
2685
+ /**
2686
+ * <p>The current status of the firewall domain list.</p>
2687
+ * @public
2688
+ */
2689
+ status: CRResourceStatus | undefined;
2690
+ /**
2691
+ * <p>The date and time when the firewall domain list was last updated.</p>
2692
+ * @public
2693
+ */
2694
+ updatedAt: Date | undefined;
2695
+ }
2696
+ /**
2697
+ * @public
2698
+ */
2699
+ export interface ListFirewallDomainListsOutput {
2700
+ /**
2701
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
2702
+ * @public
2703
+ */
2704
+ nextToken?: string | undefined;
2705
+ /**
2706
+ * <p>List of the DNS Firewall domain lists.</p>
2707
+ * @public
2708
+ */
2709
+ firewallDomainLists: FirewallDomainListsItem[] | undefined;
2710
+ }
2711
+ /**
2712
+ * @public
2713
+ */
2714
+ export interface ListFirewallDomainsInput {
2715
+ /**
2716
+ * <p>The maximum number of results to retrieve in a single call.</p>
2717
+ * @public
2718
+ */
2719
+ maxResults?: number | undefined;
2720
+ /**
2721
+ * <p>A pagination token used for large sets of results that can't be returned in a single response.</p>
2722
+ * @public
2723
+ */
2724
+ nextToken?: string | undefined;
2725
+ /**
2726
+ * <p>ID of the DNS Firewall domain list.</p>
2727
+ * @public
2728
+ */
2729
+ firewallDomainListId: string | undefined;
2730
+ }
2731
+ /**
2732
+ * @public
2733
+ */
2734
+ export interface ListFirewallDomainsOutput {
2735
+ /**
2736
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
2737
+ * @public
2738
+ */
2739
+ nextToken?: string | undefined;
2740
+ /**
2741
+ * <p>List of domains in the specified domain list.</p>
2742
+ * @public
2743
+ */
2744
+ domains: string[] | undefined;
2745
+ }
2746
+ /**
2747
+ * @public
2748
+ */
2749
+ export interface UpdateFirewallDomainsInput {
2750
+ /**
2751
+ * <p>A list of the domains. You can add up to 1000 domains per request.</p>
2752
+ * @public
2753
+ */
2754
+ domains: string[] | undefined;
2755
+ /**
2756
+ * <p>The ID of the DNS Firewall domain list to which you want to add the domains.</p>
2757
+ * @public
2758
+ */
2759
+ firewallDomainListId: string | undefined;
2760
+ /**
2761
+ * <p>The operation for updating the domain list. The allowed values are ADD, REMOVE, and REPLACE.</p>
2762
+ * @public
2763
+ */
2764
+ operation: string | undefined;
2765
+ }
2766
+ /**
2767
+ * @public
2768
+ */
2769
+ export interface UpdateFirewallDomainsOutput {
2770
+ /**
2771
+ * <p>The ID of the DNS Firewall domain list.</p>
2772
+ * @public
2773
+ */
2774
+ id: string | undefined;
2775
+ /**
2776
+ * <p>The name of the domain list.</p>
2777
+ * @public
2778
+ */
2779
+ name: string | undefined;
2780
+ /**
2781
+ * <p>The operational status of the domain list.</p>
2782
+ * @public
2783
+ */
2784
+ status: CRResourceStatus | undefined;
2785
+ }
2786
+ /**
2787
+ * @public
2788
+ */
2789
+ export interface GetFirewallRuleInput {
2790
+ /**
2791
+ * <p>ID of the DNS Firewall rule.</p>
2792
+ * @public
2793
+ */
2794
+ firewallRuleId: string | undefined;
2795
+ }
2796
+ /**
2797
+ * @public
2798
+ */
2799
+ export interface GetFirewallRuleOutput {
2800
+ /**
2801
+ * <p>The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list, or a threat in a DNS Firewall Advanced rule.</p>
2802
+ * @public
2803
+ */
2804
+ action: FirewallRuleAction | undefined;
2805
+ /**
2806
+ * <p>The DNS record's type. This determines the format of the record value that you provided in <code>BlockOverrideDomain</code>. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
2807
+ * @public
2808
+ */
2809
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
2810
+ /**
2811
+ * <p>The custom DNS record to send back in response to the query. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
2812
+ * @public
2813
+ */
2814
+ blockOverrideDomain?: string | undefined;
2815
+ /**
2816
+ * <p>The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
2817
+ * @public
2818
+ */
2819
+ blockOverrideTtl?: number | undefined;
2820
+ /**
2821
+ * <p>The way that you want DNS Firewall to block the request. Used for the rule action setting <code>BLOCK</code>.</p>
2822
+ * @public
2823
+ */
2824
+ blockResponse?: FirewallBlockResponse | undefined;
2825
+ /**
2826
+ * <p>The confidence threshold for DNS Firewall Advanced. You must provide this value when you create a DNS Firewall Advanced rule.</p>
2827
+ * @public
2828
+ */
2829
+ confidenceThreshold?: ConfidenceThreshold | undefined;
2830
+ /**
2831
+ * <p>The time and date the DNS Firewall rule was created.</p>
2832
+ * @public
2833
+ */
2834
+ createdAt: Date | undefined;
2835
+ /**
2836
+ * <p>The description of the DNS Firewall rule.</p>
2837
+ * @public
2838
+ */
2839
+ description?: string | undefined;
2840
+ /**
2841
+ * <p>The type of the DNS Firewall Advanced rule. Valid values are DGA and DNS_TUNNELING.</p>
2842
+ * @public
2843
+ */
2844
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
2845
+ /**
2846
+ * <p>The ID of a DNS Firewall domain list.</p>
2847
+ * @public
2848
+ */
2849
+ firewallDomainListId?: string | undefined;
2850
+ /**
2851
+ * <p>ID of the DNS Firewall rule.</p>
2852
+ * @public
2853
+ */
2854
+ id: string | undefined;
2855
+ /**
2856
+ * <p>The name of the DNS Firewall rule.</p>
2857
+ * @public
2858
+ */
2859
+ name: string | undefined;
2860
+ /**
2861
+ * <p>The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.</p>
2862
+ * @public
2863
+ */
2864
+ priority: number | undefined;
2865
+ /**
2866
+ * <p>The DNS view ID the DNS Firewall is associated with.</p>
2867
+ * @public
2868
+ */
2869
+ dnsViewId: string | undefined;
2870
+ /**
2871
+ * <p>The DNS query type you want the rule to evaluate.</p>
2872
+ * @public
2873
+ */
2874
+ queryType?: string | undefined;
2875
+ /**
2876
+ * <p>The operational status of the DNS Firewall rule.</p>
2877
+ * @public
2878
+ */
2879
+ status: CRResourceStatus | undefined;
2880
+ /**
2881
+ * <p>The date and time the DNS Firewall rule was updated.</p>
2882
+ * @public
2883
+ */
2884
+ updatedAt: Date | undefined;
2885
+ }
2886
+ /**
2887
+ * @public
2888
+ */
2889
+ export interface ListFirewallRulesInput {
2890
+ /**
2891
+ * <p>The maximum number of results to retrieve in a single call.</p>
2892
+ * @public
2893
+ */
2894
+ maxResults?: number | undefined;
2895
+ /**
2896
+ * <p>A pagination token used for large sets of results that can't be returned in a single response.</p>
2897
+ * @public
2898
+ */
2899
+ nextToken?: string | undefined;
2900
+ /**
2901
+ * <p>ID of the DNS view.</p>
2902
+ * @public
2903
+ */
2904
+ dnsViewId: string | undefined;
2905
+ /**
2906
+ * <p>Values to filter the results.</p>
2907
+ * @public
2908
+ */
2909
+ filters?: Record<string, string[]> | undefined;
2910
+ }
2911
+ /**
2912
+ * <p>Summary information about a firewall rule.</p>
2913
+ * @public
2914
+ */
2915
+ export interface FirewallRulesItem {
2916
+ /**
2917
+ * <p>The action configured for the firewall rule.</p>
2918
+ * @public
2919
+ */
2920
+ action: FirewallRuleAction | undefined;
2921
+ /**
2922
+ * <p>The DNS record type configured for the firewall rule's custom response.</p>
2923
+ * @public
2924
+ */
2925
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
2926
+ /**
2927
+ * <p>The custom domain name configured for the firewall rule's BLOCK response.</p>
2928
+ * @public
2929
+ */
2930
+ blockOverrideDomain?: string | undefined;
2931
+ /**
2932
+ * <p>The TTL value configured for the firewall rule's custom response.</p>
2933
+ * @public
2934
+ */
2935
+ blockOverrideTtl?: number | undefined;
2936
+ /**
2937
+ * <p>The type of block response configured for the firewall rule.</p>
2938
+ * @public
2939
+ */
2940
+ blockResponse?: FirewallBlockResponse | undefined;
2941
+ /**
2942
+ * <p>The confidence threshold configured for the firewall rule's advanced threat detection.</p>
2943
+ * @public
2944
+ */
2945
+ confidenceThreshold?: ConfidenceThreshold | undefined;
2946
+ /**
2947
+ * <p>The date and time when the firewall rule was created.</p>
2948
+ * @public
2949
+ */
2950
+ createdAt: Date | undefined;
2951
+ /**
2952
+ * <p>The description of the firewall rule.</p>
2953
+ * @public
2954
+ */
2955
+ description?: string | undefined;
2956
+ /**
2957
+ * <p>Whether advanced DNS threat protection is enabled for the firewall rule.</p>
2958
+ * @public
2959
+ */
2960
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
2961
+ /**
2962
+ * <p>The ID of the firewall domain list associated with the firewall rule.</p>
2963
+ * @public
2964
+ */
2965
+ firewallDomainListId?: string | undefined;
2966
+ /**
2967
+ * <p>The unique identifier of the firewall rule.</p>
2968
+ * @public
2969
+ */
2970
+ id: string | undefined;
2971
+ /**
2972
+ * <p>The name of the firewall rule.</p>
2973
+ * @public
2974
+ */
2975
+ name: string | undefined;
2976
+ /**
2977
+ * <p>The priority of the firewall rule.</p>
2978
+ * @public
2979
+ */
2980
+ priority: number | undefined;
2981
+ /**
2982
+ * <p>The ID of the DNS view associated with the firewall rule.</p>
2983
+ * @public
2984
+ */
2985
+ dnsViewId: string | undefined;
2986
+ /**
2987
+ * <p>The DNS query type that the firewall rule matches.</p>
2988
+ * @public
2989
+ */
2990
+ queryType?: string | undefined;
2991
+ /**
2992
+ * <p>The current status of the firewall rule.</p>
2993
+ * @public
2994
+ */
2995
+ status: CRResourceStatus | undefined;
2996
+ /**
2997
+ * <p>The date and time when the firewall rule was last updated.</p>
2998
+ * @public
2999
+ */
3000
+ updatedAt: Date | undefined;
3001
+ }
3002
+ /**
3003
+ * @public
3004
+ */
3005
+ export interface ListFirewallRulesOutput {
3006
+ /**
3007
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
3008
+ * @public
3009
+ */
3010
+ nextToken?: string | undefined;
3011
+ /**
3012
+ * <p>List of the firewall rules and information about them.</p>
3013
+ * @public
3014
+ */
3015
+ firewallRules: FirewallRulesItem[] | undefined;
3016
+ }
3017
+ /**
3018
+ * @public
3019
+ */
3020
+ export interface UpdateFirewallRuleInput {
3021
+ /**
3022
+ * <p>The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list, or a threat in a DNS Firewall Advanced rule.</p>
3023
+ * @public
3024
+ */
3025
+ action?: FirewallRuleAction | undefined;
3026
+ /**
3027
+ * <p>The DNS record's type. This determines the format of the record value that you provided in <code>BlockOverrideDomain</code>. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
3028
+ * @public
3029
+ */
3030
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
3031
+ /**
3032
+ * <p>The custom DNS record to send back in response to the query. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
3033
+ * @public
3034
+ */
3035
+ blockOverrideDomain?: string | undefined;
3036
+ /**
3037
+ * <p>The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
3038
+ * @public
3039
+ */
3040
+ blockOverrideTtl?: number | undefined;
3041
+ /**
3042
+ * <p>The way that you want DNS Firewall to block the request. Used for the rule action setting <code>BLOCK</code>.</p>
3043
+ * @public
3044
+ */
3045
+ blockResponse?: FirewallBlockResponse | undefined;
3046
+ /**
3047
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
3048
+ * @public
3049
+ */
3050
+ clientToken?: string | undefined;
3051
+ /**
3052
+ * <p>The confidence threshold for DNS Firewall Advanced. You must provide this value when you create a DNS Firewall Advanced rule.</p>
3053
+ * @public
3054
+ */
3055
+ confidenceThreshold?: ConfidenceThreshold | undefined;
3056
+ /**
3057
+ * <p>The description for the Firewall rule.</p>
3058
+ * @public
3059
+ */
3060
+ description?: string | undefined;
3061
+ /**
3062
+ * <p>The type of the DNS Firewall Advanced rule. Valid values are DGA and DNS_TUNNELING.</p>
3063
+ * @public
3064
+ */
3065
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
3066
+ /**
3067
+ * <p>The ID of the DNS Firewall rule.</p>
3068
+ * @public
3069
+ */
3070
+ firewallRuleId: string | undefined;
3071
+ /**
3072
+ * <p>The name of the DNS Firewall rule.</p>
3073
+ * @public
3074
+ */
3075
+ name?: string | undefined;
3076
+ /**
3077
+ * <p>The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.</p>
3078
+ * @public
3079
+ */
3080
+ priority?: number | undefined;
3081
+ }
3082
+ /**
3083
+ * @public
3084
+ */
3085
+ export interface UpdateFirewallRuleOutput {
3086
+ /**
3087
+ * <p>The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list, or a threat in a DNS Firewall Advanced rule.</p>
3088
+ * @public
3089
+ */
3090
+ action: FirewallRuleAction | undefined;
3091
+ /**
3092
+ * <p>The DNS record's type. This determines the format of the record value that you provided in <code>BlockOverrideDomain</code>. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
3093
+ * @public
3094
+ */
3095
+ blockOverrideDnsType?: BlockOverrideDnsQueryType | undefined;
3096
+ /**
3097
+ * <p>The custom DNS record to send back in response to the query. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
3098
+ * @public
3099
+ */
3100
+ blockOverrideDomain?: string | undefined;
3101
+ /**
3102
+ * <p>The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Used for the rule action <code>BLOCK</code> with a <code>BlockResponse</code> setting of <code>OVERRIDE</code>.</p>
3103
+ * @public
3104
+ */
3105
+ blockOverrideTtl?: number | undefined;
3106
+ /**
3107
+ * <p>The way that you want DNS Firewall to block the request. Used for the rule action setting <code>BLOCK</code>.</p>
3108
+ * @public
3109
+ */
3110
+ blockResponse?: FirewallBlockResponse | undefined;
3111
+ /**
3112
+ * <p>The confidence threshold for DNS Firewall Advanced. You must provide this value when you create a DNS Firewall Advanced rule.</p>
3113
+ * @public
3114
+ */
3115
+ confidenceThreshold?: ConfidenceThreshold | undefined;
3116
+ /**
3117
+ * <p>The time and date the Firewall rule was created.</p>
3118
+ * @public
3119
+ */
3120
+ createdAt: Date | undefined;
3121
+ /**
3122
+ * <p>The description of the Firewall rule.</p>
3123
+ * @public
3124
+ */
3125
+ description?: string | undefined;
3126
+ /**
3127
+ * <p>The type of the DNS Firewall Advanced rule. Valid values are DGA and DNS_TUNNELING.</p>
3128
+ * @public
3129
+ */
3130
+ dnsAdvancedProtection?: DnsAdvancedProtection | undefined;
3131
+ /**
3132
+ * <p>The ID of the domain list associated with the Firewall rule.</p>
3133
+ * @public
3134
+ */
3135
+ firewallDomainListId?: string | undefined;
3136
+ /**
3137
+ * <p>The ID of the Firewall rule.</p>
3138
+ * @public
3139
+ */
3140
+ id: string | undefined;
3141
+ /**
3142
+ * <p>The name of the Firewall rule.</p>
3143
+ * @public
3144
+ */
3145
+ name: string | undefined;
3146
+ /**
3147
+ * <p>The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.</p>
3148
+ * @public
3149
+ */
3150
+ priority: number | undefined;
3151
+ /**
3152
+ * <p>The ID of the DNS view the Firewall rule is associated with.</p>
3153
+ * @public
3154
+ */
3155
+ dnsViewId: string | undefined;
3156
+ /**
3157
+ * <p>The DNS query type you want the rule to evaluate.</p>
3158
+ * @public
3159
+ */
3160
+ queryType?: string | undefined;
3161
+ /**
3162
+ * <p>The operational status of the firewall rule.</p>
3163
+ * @public
3164
+ */
3165
+ status: CRResourceStatus | undefined;
3166
+ /**
3167
+ * <p>The time and date the rule was updated.</p>
3168
+ * @public
3169
+ */
3170
+ updatedAt: Date | undefined;
3171
+ }
3172
+ /**
3173
+ * @public
3174
+ */
3175
+ export interface GetGlobalResolverInput {
3176
+ /**
3177
+ * <p>The ID of the Route 53 Global Resolver to retrieve information about.</p>
3178
+ * @public
3179
+ */
3180
+ globalResolverId: string | undefined;
3181
+ }
3182
+ /**
3183
+ * @public
3184
+ */
3185
+ export interface GetGlobalResolverOutput {
3186
+ /**
3187
+ * <p>The ID of the Global Resolver.</p>
3188
+ * @public
3189
+ */
3190
+ id: string | undefined;
3191
+ /**
3192
+ * <p>The Amazon Resource Name (ARN) of the Global Resolver.</p>
3193
+ * @public
3194
+ */
3195
+ arn: string | undefined;
3196
+ /**
3197
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
3198
+ * @public
3199
+ */
3200
+ clientToken: string | undefined;
3201
+ /**
3202
+ * <p>The hostname used by the customers' DNS clients for certification validation.</p>
3203
+ * @public
3204
+ */
3205
+ dnsName: string | undefined;
3206
+ /**
3207
+ * <p>The AWS Regions in which the users' Global Resolver query resolution logs will be propagated.</p>
3208
+ * @public
3209
+ */
3210
+ observabilityRegion?: string | undefined;
3211
+ /**
3212
+ * <p>The name of the Global Resolver.</p>
3213
+ * @public
3214
+ */
3215
+ name: string | undefined;
3216
+ /**
3217
+ * <p>The description of the Global Resolver.</p>
3218
+ * @public
3219
+ */
3220
+ description?: string | undefined;
3221
+ /**
3222
+ * <p>The AWS Regions in which the Global Resolver operate.</p>
3223
+ * @public
3224
+ */
3225
+ regions: string[] | undefined;
3226
+ /**
3227
+ * <p>The date and time the Global Resolver was created.</p>
3228
+ * @public
3229
+ */
3230
+ createdAt: Date | undefined;
3231
+ /**
3232
+ * <p>The date and time the Global Resolver was updated.</p>
3233
+ * @public
3234
+ */
3235
+ updatedAt: Date | undefined;
3236
+ /**
3237
+ * <p>The operational status of the Global Resolver.</p>
3238
+ * @public
3239
+ */
3240
+ status: CRResourceStatus | undefined;
3241
+ /**
3242
+ * <p>List of anycast IPv4 addresses associated with the Global Resolver instance.</p>
3243
+ * @public
3244
+ */
3245
+ ipv4Addresses: string[] | undefined;
3246
+ }
3247
+ /**
3248
+ * @public
3249
+ */
3250
+ export interface ListGlobalResolversInput {
3251
+ /**
3252
+ * <p>The maximum number of Route 53 Global Resolver instances to return in the response. Valid range is 1-100.</p>
3253
+ * @public
3254
+ */
3255
+ maxResults?: number | undefined;
3256
+ /**
3257
+ * <p>The token for the next page of results. This value is returned in the response if there are more results to retrieve.</p>
3258
+ * @public
3259
+ */
3260
+ nextToken?: string | undefined;
3261
+ }
3262
+ /**
3263
+ * <p>Summary information about a global resolver.</p>
3264
+ * @public
3265
+ */
3266
+ export interface GlobalResolversItem {
3267
+ /**
3268
+ * <p>The unique identifier of the global resolver.</p>
3269
+ * @public
3270
+ */
3271
+ id: string | undefined;
3272
+ /**
3273
+ * <p>The Amazon Resource Name (ARN) of the global resolver.</p>
3274
+ * @public
3275
+ */
3276
+ arn: string | undefined;
3277
+ /**
3278
+ * <p>The unique string that identifies the request and ensures idempotency.</p>
3279
+ * @public
3280
+ */
3281
+ clientToken: string | undefined;
3282
+ /**
3283
+ * <p>The DNS name of the global resolver.</p>
3284
+ * @public
3285
+ */
3286
+ dnsName: string | undefined;
3287
+ /**
3288
+ * <p>The AWS Region where observability data is collected for the global resolver.</p>
3289
+ * @public
3290
+ */
3291
+ observabilityRegion?: string | undefined;
3292
+ /**
3293
+ * <p>The name of the global resolver.</p>
3294
+ * @public
3295
+ */
3296
+ name: string | undefined;
3297
+ /**
3298
+ * <p>A description of the global resolver.</p>
3299
+ * @public
3300
+ */
3301
+ description?: string | undefined;
3302
+ /**
3303
+ * <p>The AWS Regions where the global resolver is deployed.</p>
3304
+ * @public
3305
+ */
3306
+ regions: string[] | undefined;
3307
+ /**
3308
+ * <p>The date and time when the global resolver was created.</p>
3309
+ * @public
3310
+ */
3311
+ createdAt: Date | undefined;
3312
+ /**
3313
+ * <p>The date and time when the global resolver was last updated.</p>
3314
+ * @public
3315
+ */
3316
+ updatedAt: Date | undefined;
3317
+ /**
3318
+ * <p>The current status of the global resolver.</p>
3319
+ * @public
3320
+ */
3321
+ status: CRResourceStatus | undefined;
3322
+ /**
3323
+ * <p>The IPv4 addresses assigned to the global resolver.</p>
3324
+ * @public
3325
+ */
3326
+ ipv4Addresses: string[] | undefined;
3327
+ }
3328
+ /**
3329
+ * @public
3330
+ */
3331
+ export interface ListGlobalResolversOutput {
3332
+ /**
3333
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
3334
+ * @public
3335
+ */
3336
+ nextToken?: string | undefined;
3337
+ /**
3338
+ * <p>Paginated list of Global Resolvers.</p>
3339
+ * @public
3340
+ */
3341
+ globalResolvers: GlobalResolversItem[] | undefined;
3342
+ }
3343
+ /**
3344
+ * @public
3345
+ */
3346
+ export interface UpdateGlobalResolverInput {
3347
+ /**
3348
+ * <p>The ID of the Global Resolver.</p>
3349
+ * @public
3350
+ */
3351
+ globalResolverId: string | undefined;
3352
+ /**
3353
+ * <p>The name of the Global Resolver.</p>
3354
+ * @public
3355
+ */
3356
+ name?: string | undefined;
3357
+ /**
3358
+ * <p>The AWS Regions in which the users' Global Resolver query resolution logs will be propagated.</p>
3359
+ * @public
3360
+ */
3361
+ observabilityRegion?: string | undefined;
3362
+ /**
3363
+ * <p>The description of the Global Resolver.</p>
3364
+ * @public
3365
+ */
3366
+ description?: string | undefined;
3367
+ }
3368
+ /**
3369
+ * @public
3370
+ */
3371
+ export interface UpdateGlobalResolverOutput {
3372
+ /**
3373
+ * <p>The ID of the Global Resolver.</p>
3374
+ * @public
3375
+ */
3376
+ id: string | undefined;
3377
+ /**
3378
+ * <p>The Amazon Resource Name (ARN) of the Global Resolver.</p>
3379
+ * @public
3380
+ */
3381
+ arn: string | undefined;
3382
+ /**
3383
+ * <p>A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same <code>clientToken</code> has the same result every time.</p>
3384
+ * @public
3385
+ */
3386
+ clientToken: string | undefined;
3387
+ /**
3388
+ * <p>The hostname to be used by the customers' DNS clients for certification validation.</p>
3389
+ * @public
3390
+ */
3391
+ dnsName: string | undefined;
3392
+ /**
3393
+ * <p>The AWS Regions in which the users' Global Resolver query resolution logs will be propagated.</p>
3394
+ * @public
3395
+ */
3396
+ observabilityRegion?: string | undefined;
3397
+ /**
3398
+ * <p>Name of the Global Resolver.</p>
3399
+ * @public
3400
+ */
3401
+ name: string | undefined;
3402
+ /**
3403
+ * <p>Description of the Global Resolver.</p>
3404
+ * @public
3405
+ */
3406
+ description?: string | undefined;
3407
+ /**
3408
+ * <p>The AWS Regions in which the Global Resolver will operate.</p>
3409
+ * @public
3410
+ */
3411
+ regions: string[] | undefined;
3412
+ /**
3413
+ * <p>The time and date the Global Resolverwas created.</p>
3414
+ * @public
3415
+ */
3416
+ createdAt: Date | undefined;
3417
+ /**
3418
+ * <p>The time and date the Global Resolver was updated.</p>
3419
+ * @public
3420
+ */
3421
+ updatedAt: Date | undefined;
3422
+ /**
3423
+ * <p>The operational status of the Global Resolver.</p>
3424
+ * @public
3425
+ */
3426
+ status: CRResourceStatus | undefined;
3427
+ /**
3428
+ * <p>List of anycast IPv4 addresses associated with the Global Resolver instance.</p>
3429
+ * @public
3430
+ */
3431
+ ipv4Addresses: string[] | undefined;
3432
+ }
3433
+ /**
3434
+ * @public
3435
+ */
3436
+ export interface GetHostedZoneAssociationInput {
3437
+ /**
3438
+ * <p>ID of the private hosted zone association.</p>
3439
+ * @public
3440
+ */
3441
+ hostedZoneAssociationId: string | undefined;
3442
+ }
3443
+ /**
3444
+ * @public
3445
+ */
3446
+ export interface GetHostedZoneAssociationOutput {
3447
+ /**
3448
+ * <p>ID of the private hosted zone association.</p>
3449
+ * @public
3450
+ */
3451
+ id: string | undefined;
3452
+ /**
3453
+ * <p>Amazon Resource Name (ARN) of the DNS view the private hosted zone is associated to.</p>
3454
+ * @public
3455
+ */
3456
+ resourceArn: string | undefined;
3457
+ /**
3458
+ * <p>ID of the hosted zone associated to the DNS view.</p>
3459
+ * @public
3460
+ */
3461
+ hostedZoneId: string | undefined;
3462
+ /**
3463
+ * <p>Name of the domain associated with the private hosted zone.</p>
3464
+ * @public
3465
+ */
3466
+ hostedZoneName: string | undefined;
3467
+ /**
3468
+ * <p>Name of the private hosted zone association.</p>
3469
+ * @public
3470
+ */
3471
+ name: string | undefined;
3472
+ /**
3473
+ * <p>The time and date the private hosted zone association was created.</p>
3474
+ * @public
3475
+ */
3476
+ createdAt: Date | undefined;
3477
+ /**
3478
+ * <p>The time and date the private hosted zone association was updated.</p>
3479
+ * @public
3480
+ */
3481
+ updatedAt: Date | undefined;
3482
+ /**
3483
+ * <p>The operational status of the private hosted zone association.</p>
3484
+ * @public
3485
+ */
3486
+ status: HostedZoneAssociationStatus | undefined;
3487
+ }
3488
+ /**
3489
+ * @public
3490
+ */
3491
+ export interface ListHostedZoneAssociationsInput {
3492
+ /**
3493
+ * <p>The maximum number of results to retrieve in a single call.</p>
3494
+ * @public
3495
+ */
3496
+ maxResults?: number | undefined;
3497
+ /**
3498
+ * <p>A pagination token used for large sets of results that can't be returned in a single response.</p>
3499
+ * @public
3500
+ */
3501
+ nextToken?: string | undefined;
3502
+ /**
3503
+ * <p>Amazon Resource Name (ARN) of the DNS view.</p>
3504
+ * @public
3505
+ */
3506
+ resourceArn: string | undefined;
3507
+ }
3508
+ /**
3509
+ * <p>Summary information about a hosted zone association.</p>
3510
+ * @public
3511
+ */
3512
+ export interface HostedZoneAssociationSummary {
3513
+ /**
3514
+ * <p>The unique identifier of the hosted zone association.</p>
3515
+ * @public
3516
+ */
3517
+ id: string | undefined;
3518
+ /**
3519
+ * <p>The Amazon Resource Name (ARN) of the resource associated with the hosted zone.</p>
3520
+ * @public
3521
+ */
3522
+ resourceArn: string | undefined;
3523
+ /**
3524
+ * <p>The ID of the hosted zone.</p>
3525
+ * @public
3526
+ */
3527
+ hostedZoneId: string | undefined;
3528
+ /**
3529
+ * <p>The name of the hosted zone.</p>
3530
+ * @public
3531
+ */
3532
+ hostedZoneName: string | undefined;
3533
+ /**
3534
+ * <p>The name of the hosted zone association.</p>
3535
+ * @public
3536
+ */
3537
+ name: string | undefined;
3538
+ /**
3539
+ * <p>The date and time when the hosted zone association was created.</p>
3540
+ * @public
3541
+ */
3542
+ createdAt: Date | undefined;
3543
+ /**
3544
+ * <p>The date and time when the hosted zone association was last updated.</p>
3545
+ * @public
3546
+ */
3547
+ updatedAt: Date | undefined;
3548
+ /**
3549
+ * <p>The current status of the hosted zone association.</p>
3550
+ * @public
3551
+ */
3552
+ status: HostedZoneAssociationStatus | undefined;
3553
+ }
3554
+ /**
3555
+ * @public
3556
+ */
3557
+ export interface ListHostedZoneAssociationsOutput {
3558
+ /**
3559
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
3560
+ * @public
3561
+ */
3562
+ nextToken?: string | undefined;
3563
+ /**
3564
+ * <p>List of the private hosted zone associations.</p>
3565
+ * @public
3566
+ */
3567
+ hostedZoneAssociations: HostedZoneAssociationSummary[] | undefined;
3568
+ }
3569
+ /**
3570
+ * @public
3571
+ */
3572
+ export interface UpdateHostedZoneAssociationInput {
3573
+ /**
3574
+ * <p>The ID of the private hosted zone association.</p>
3575
+ * @public
3576
+ */
3577
+ hostedZoneAssociationId: string | undefined;
3578
+ /**
3579
+ * <p>The name you want to update the hosted zone association to.</p>
3580
+ * @public
3581
+ */
3582
+ name?: string | undefined;
3583
+ }
3584
+ /**
3585
+ * @public
3586
+ */
3587
+ export interface UpdateHostedZoneAssociationOutput {
3588
+ /**
3589
+ * <p>The ID of the private hosted zone association.</p>
3590
+ * @public
3591
+ */
3592
+ id: string | undefined;
3593
+ /**
3594
+ * <p>The Amazon Resource Name (ARN) of the private hosted zone association.</p>
3595
+ * @public
3596
+ */
3597
+ resourceArn: string | undefined;
3598
+ /**
3599
+ * <p>The ID of the private hosted zone.</p>
3600
+ * @public
3601
+ */
3602
+ hostedZoneId: string | undefined;
3603
+ /**
3604
+ * <p>The name of the domain associated with the private hosted zone.</p>
3605
+ * @public
3606
+ */
3607
+ hostedZoneName: string | undefined;
3608
+ /**
3609
+ * <p>The name of the private hosted zone association.</p>
3610
+ * @public
3611
+ */
3612
+ name: string | undefined;
3613
+ /**
3614
+ * <p>The time and date the private hosted zone association was created.</p>
3615
+ * @public
3616
+ */
3617
+ createdAt: Date | undefined;
3618
+ /**
3619
+ * <p>The time and date the private hosted zone association was updated.</p>
3620
+ * @public
3621
+ */
3622
+ updatedAt: Date | undefined;
3623
+ /**
3624
+ * <p>The operational status of the private hosted zone association.</p>
3625
+ * @public
3626
+ */
3627
+ status: HostedZoneAssociationStatus | undefined;
3628
+ }
3629
+ /**
3630
+ * @public
3631
+ */
3632
+ export interface ListTagsForResourceRequest {
3633
+ /**
3634
+ * <p>Amazon Resource Name (ARN) for the resource.</p>
3635
+ * @public
3636
+ */
3637
+ resourceArn: string | undefined;
3638
+ }
3639
+ /**
3640
+ * @public
3641
+ */
3642
+ export interface ListTagsForResourceResponse {
3643
+ /**
3644
+ * <p>An array of user-defined keys and optional values. These tags can be used for categorization and organization.</p>
3645
+ * @public
3646
+ */
3647
+ tags?: Record<string, string> | undefined;
3648
+ }
3649
+ /**
3650
+ * @public
3651
+ */
3652
+ export interface GetManagedFirewallDomainListInput {
3653
+ /**
3654
+ * <p>ID of the Managed Domain List.</p>
3655
+ * @public
3656
+ */
3657
+ managedFirewallDomainListId: string | undefined;
3658
+ }
3659
+ /**
3660
+ * @public
3661
+ */
3662
+ export interface GetManagedFirewallDomainListOutput {
3663
+ /**
3664
+ * <p>Description of the Managed Domain List.</p>
3665
+ * @public
3666
+ */
3667
+ description?: string | undefined;
3668
+ /**
3669
+ * <p>ID of the Managed Domain List.</p>
3670
+ * @public
3671
+ */
3672
+ id: string | undefined;
3673
+ /**
3674
+ * <p>Name of the Managed Domain List.</p>
3675
+ * @public
3676
+ */
3677
+ name: string | undefined;
3678
+ /**
3679
+ * <p>Type of the managed category. This is either <code>THREAT</code> or <code>CONTENT</code>.</p>
3680
+ * @public
3681
+ */
3682
+ managedListType: string | undefined;
3683
+ }
3684
+ /**
3685
+ * @public
3686
+ */
3687
+ export interface ListManagedFirewallDomainListsInput {
3688
+ /**
3689
+ * <p>The maximum number of results to retrieve in a single call.</p>
3690
+ * @public
3691
+ */
3692
+ maxResults?: number | undefined;
3693
+ /**
3694
+ * <p>A pagination token used for large sets of results that can't be returned in a single response.</p>
3695
+ * @public
3696
+ */
3697
+ nextToken?: string | undefined;
3698
+ /**
3699
+ * <p>The category of the Manage DNS list either <code>THREAT</code> or <code>CONTENT</code>.</p>
3700
+ * @public
3701
+ */
3702
+ managedFirewallDomainListType: string | undefined;
3703
+ }
3704
+ /**
3705
+ * <p>Summary information about a managed firewall domain list.</p>
3706
+ * @public
3707
+ */
3708
+ export interface ManagedFirewallDomainListsItem {
3709
+ /**
3710
+ * <p>A description of the managed firewall domain list.</p>
3711
+ * @public
3712
+ */
3713
+ description?: string | undefined;
3714
+ /**
3715
+ * <p>The unique identifier of the managed firewall domain list.</p>
3716
+ * @public
3717
+ */
3718
+ id: string | undefined;
3719
+ /**
3720
+ * <p>The name of the managed firewall domain list.</p>
3721
+ * @public
3722
+ */
3723
+ name: string | undefined;
3724
+ /**
3725
+ * <p>The type of the managed firewall domain list.</p>
3726
+ * @public
3727
+ */
3728
+ managedListType: string | undefined;
3729
+ }
3730
+ /**
3731
+ * @public
3732
+ */
3733
+ export interface ListManagedFirewallDomainListsOutput {
3734
+ /**
3735
+ * <p>A pagination token used for large sets of results that can't be returned in a single response. Provide this token in the next call to get the results not returned in this call.</p>
3736
+ * @public
3737
+ */
3738
+ nextToken?: string | undefined;
3739
+ /**
3740
+ * <p>List of the Managed Domain Lists.</p>
3741
+ * @public
3742
+ */
3743
+ managedFirewallDomainLists: ManagedFirewallDomainListsItem[] | undefined;
3744
+ }
3745
+ /**
3746
+ * @public
3747
+ */
3748
+ export interface TagResourceRequest {
3749
+ /**
3750
+ * <p>Amazon Resource Name (ARN) of the resource to be tagged.</p>
3751
+ * @public
3752
+ */
3753
+ resourceArn: string | undefined;
3754
+ /**
3755
+ * <p>An array of user-defined keys and optional values. These tags can be used for categorization and organization.</p>
3756
+ * @public
3757
+ */
3758
+ tags: Record<string, string> | undefined;
3759
+ }
3760
+ /**
3761
+ * @public
3762
+ */
3763
+ export interface TagResourceResponse {
3764
+ }
3765
+ /**
3766
+ * @public
3767
+ */
3768
+ export interface UntagResourceRequest {
3769
+ /**
3770
+ * <p>Amazon Resource Name (ARN) of the resource.</p>
3771
+ * @public
3772
+ */
3773
+ resourceArn: string | undefined;
3774
+ /**
3775
+ * <p>The tag keys associated with the resource.</p>
3776
+ * @public
3777
+ */
3778
+ tagKeys: string[] | undefined;
3779
+ }
3780
+ /**
3781
+ * @public
3782
+ */
3783
+ export interface UntagResourceResponse {
3784
+ }