import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { BatchUpdateFirewallRuleInput, BatchUpdateFirewallRuleOutput } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link BatchUpdateFirewallRuleCommand}. */ export interface BatchUpdateFirewallRuleCommandInput extends BatchUpdateFirewallRuleInput { } /** * @public * * The output of {@link BatchUpdateFirewallRuleCommand}. */ export interface BatchUpdateFirewallRuleCommandOutput extends BatchUpdateFirewallRuleOutput, __MetadataBearer { } declare const BatchUpdateFirewallRuleCommand_base: { new (input: BatchUpdateFirewallRuleCommandInput): import("@smithy/core/client").CommandImpl; new (input: BatchUpdateFirewallRuleCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Updates multiple DNS firewall rules in a single operation. This is more efficient than updating rules individually.

Route 53 Global Resolver is a global service that supports resolvers in multiple Amazon Web Services Regions but you must specify the US East (Ohio) Region to create, update, or otherwise work with Route 53 Global Resolver resources. That is, for example, specify --region us-east-2 on Amazon Web Services CLI commands.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { Route53GlobalResolverClient, BatchUpdateFirewallRuleCommand } from "@aws-sdk/client-route53globalresolver"; // ES Modules import * // const { Route53GlobalResolverClient, BatchUpdateFirewallRuleCommand } = require("@aws-sdk/client-route53globalresolver"); // CommonJS import * // import type { Route53GlobalResolverClientConfig } from "@aws-sdk/client-route53globalresolver"; * const config = {}; // type is Route53GlobalResolverClientConfig * const client = new Route53GlobalResolverClient(config); * const input = { // BatchUpdateFirewallRuleInput * firewallRules: [ // BatchUpdateFirewallRuleInputItems // required * { // BatchUpdateFirewallRuleInputItem * action: "ALLOW" || "ALERT" || "BLOCK", * blockOverrideDnsType: "CNAME", * blockOverrideDomain: "STRING_VALUE", * blockOverrideTtl: Number("int"), * blockResponse: "NODATA" || "NXDOMAIN" || "OVERRIDE", * confidenceThreshold: "LOW" || "MEDIUM" || "HIGH", * description: "STRING_VALUE", * dnsAdvancedProtection: "DGA" || "DNS_TUNNELING" || "DICTIONARY_DGA", * firewallRuleId: "STRING_VALUE", // required * name: "STRING_VALUE", * priority: Number("long"), * }, * ], * }; * const command = new BatchUpdateFirewallRuleCommand(input); * const response = await client.send(command); * // { // BatchUpdateFirewallRuleOutput * // failures: [ // BatchUpdateFirewallRuleOutputItems // required * // { // BatchUpdateFirewallRuleOutputItem * // firewallRule: { // BatchUpdateFirewallRuleResult * // action: "ALLOW" || "ALERT" || "BLOCK", * // blockOverrideDnsType: "CNAME", * // blockOverrideDomain: "STRING_VALUE", * // blockOverrideTtl: Number("int"), * // blockResponse: "NODATA" || "NXDOMAIN" || "OVERRIDE", * // clientToken: "STRING_VALUE", * // confidenceThreshold: "LOW" || "MEDIUM" || "HIGH", * // createdAt: new Date("TIMESTAMP"), * // description: "STRING_VALUE", * // dnsAdvancedProtection: "DGA" || "DNS_TUNNELING" || "DICTIONARY_DGA", * // firewallDomainListId: "STRING_VALUE", * // id: "STRING_VALUE", // required * // name: "STRING_VALUE", * // priority: Number("long"), * // dnsViewId: "STRING_VALUE", * // queryType: "STRING_VALUE", * // status: "CREATING" || "OPERATIONAL" || "UPDATING" || "DELETING", * // updatedAt: new Date("TIMESTAMP"), * // }, * // code: Number("int"), // required * // message: "STRING_VALUE", * // }, * // ], * // successes: [ // required * // { * // firewallRule: { * // action: "ALLOW" || "ALERT" || "BLOCK", * // blockOverrideDnsType: "CNAME", * // blockOverrideDomain: "STRING_VALUE", * // blockOverrideTtl: Number("int"), * // blockResponse: "NODATA" || "NXDOMAIN" || "OVERRIDE", * // clientToken: "STRING_VALUE", * // confidenceThreshold: "LOW" || "MEDIUM" || "HIGH", * // createdAt: new Date("TIMESTAMP"), * // description: "STRING_VALUE", * // dnsAdvancedProtection: "DGA" || "DNS_TUNNELING" || "DICTIONARY_DGA", * // firewallDomainListId: "STRING_VALUE", * // id: "STRING_VALUE", // required * // name: "STRING_VALUE", * // priority: Number("long"), * // dnsViewId: "STRING_VALUE", * // queryType: "STRING_VALUE", * // status: "CREATING" || "OPERATIONAL" || "UPDATING" || "DELETING", * // updatedAt: new Date("TIMESTAMP"), * // }, * // code: Number("int"), // required * // message: "STRING_VALUE", * // }, * // ], * // }; * * ``` * * @param BatchUpdateFirewallRuleCommandInput - {@link BatchUpdateFirewallRuleCommandInput} * @returns {@link BatchUpdateFirewallRuleCommandOutput} * @see {@link BatchUpdateFirewallRuleCommandInput} for command's `input` shape. * @see {@link BatchUpdateFirewallRuleCommandOutput} for command's `response` shape. * @see {@link Route53GlobalResolverClientResolvedConfig | config} for Route53GlobalResolverClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You don't have permission to perform this operation. Check your IAM permissions and try again.

* * @throws {@link InternalServerException} (server fault) *

An internal server error occurred. Try again later.

* * @throws {@link ThrottlingException} (client fault) *

The request was throttled due to too many requests. Wait a moment and try again.

* * @throws {@link ValidationException} (client fault) *

The input parameters are invalid. Check the parameter values and try again.

* * @throws {@link Route53GlobalResolverServiceException} *

Base exception class for all service exceptions from Route53GlobalResolver service.

* * * @public */ export declare class BatchUpdateFirewallRuleCommand extends BatchUpdateFirewallRuleCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: BatchUpdateFirewallRuleInput; output: BatchUpdateFirewallRuleOutput; }; sdk: { input: BatchUpdateFirewallRuleCommandInput; output: BatchUpdateFirewallRuleCommandOutput; }; }; }