import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateWebACLMigrationStackRequest, CreateWebACLMigrationStackResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link CreateWebACLMigrationStackCommand}. */ export interface CreateWebACLMigrationStackCommandInput extends CreateWebACLMigrationStackRequest { } /** * @public * * The output of {@link CreateWebACLMigrationStackCommand}. */ export interface CreateWebACLMigrationStackCommandOutput extends CreateWebACLMigrationStackResponse, __MetadataBearer { } declare const CreateWebACLMigrationStackCommand_base: { new (input: CreateWebACLMigrationStackCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateWebACLMigrationStackCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Creates an AWS CloudFormation WAFV2 template for the specified web ACL in the specified Amazon S3 bucket. * Then, in CloudFormation, you create a stack from the template, to create the web ACL and its resources in AWS WAFV2. * Use this to migrate your AWS WAF Classic web ACL to the latest version of AWS WAF.

*

This is part of a larger migration procedure for web ACLs from AWS WAF Classic to the latest version of AWS WAF. * For the full procedure, including caveats and manual steps to complete * the migration and switch over to the new web ACL, see * Migrating your AWS WAF Classic resources to AWS WAF in the AWS WAF * Developer Guide.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { WAFRegionalClient, CreateWebACLMigrationStackCommand } from "@aws-sdk/client-waf-regional"; // ES Modules import * // const { WAFRegionalClient, CreateWebACLMigrationStackCommand } = require("@aws-sdk/client-waf-regional"); // CommonJS import * // import type { WAFRegionalClientConfig } from "@aws-sdk/client-waf-regional"; * const config = {}; // type is WAFRegionalClientConfig * const client = new WAFRegionalClient(config); * const input = { // CreateWebACLMigrationStackRequest * WebACLId: "STRING_VALUE", // required * S3BucketName: "STRING_VALUE", // required * IgnoreUnsupportedType: true || false, // required * }; * const command = new CreateWebACLMigrationStackCommand(input); * const response = await client.send(command); * // { // CreateWebACLMigrationStackResponse * // S3ObjectUrl: "STRING_VALUE", // required * // }; * * ``` * * @param CreateWebACLMigrationStackCommandInput - {@link CreateWebACLMigrationStackCommandInput} * @returns {@link CreateWebACLMigrationStackCommandOutput} * @see {@link CreateWebACLMigrationStackCommandInput} for command's `input` shape. * @see {@link CreateWebACLMigrationStackCommandOutput} for command's `response` shape. * @see {@link WAFRegionalClientResolvedConfig | config} for WAFRegionalClient's `config` shape. * * @throws {@link WAFEntityMigrationException} (client fault) *

The operation failed due to a problem with the migration. The failure cause is provided in the exception, in the MigrationErrorType:

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

The operation failed because of a system problem, even though the request was valid. Retry your request.

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

The operation failed because there was nothing to do. For example:

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

The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

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

The operation failed because the referenced object doesn't exist.

* * @throws {@link WAFRegionalServiceException} *

Base exception class for all service exceptions from WAFRegional service.

* * * @public */ export declare class CreateWebACLMigrationStackCommand extends CreateWebACLMigrationStackCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateWebACLMigrationStackRequest; output: CreateWebACLMigrationStackResponse; }; sdk: { input: CreateWebACLMigrationStackCommandInput; output: CreateWebACLMigrationStackCommandOutput; }; }; }