/*
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 * 
 *  http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
/*
 * Do not modify this file. This file is generated from the imagebuilder-2019-12-02.normal.json service model.
 */
using System;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.Imagebuilder.Model;
namespace Amazon.Imagebuilder
{
    /// 
    /// Interface for accessing Imagebuilder
    ///
    /// EC2 Image Builder is a fully managed Amazon Web Services service that makes it easier
    /// to automate the creation, management, and deployment of customized, secure, and up-to-date
    /// "golden" server images that are pre-installed and pre-configured with software and
    /// settings to meet specific IT standards.
    /// 
    public partial interface IAmazonImagebuilder : IAmazonService, IDisposable
    {
#if BCL45 || AWS_ASYNC_ENUMERABLES_API
        /// 
        /// Paginators for the service
        /// 
        IImagebuilderPaginatorFactory Paginators { get; }
#endif
        
        #region  CancelImageCreation
        /// 
        /// CancelImageCreation cancels the creation of Image. This operation can only be used
        /// on images in a non-terminal state.
        /// 
        /// Container for the necessary parameters to execute the CancelImageCreation service method.
        /// 
        /// The response from the CancelImageCreation service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for CancelImageCreation Operation
        CancelImageCreationResponse CancelImageCreation(CancelImageCreationRequest request);
        /// 
        /// Initiates the asynchronous execution of the CancelImageCreation operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the CancelImageCreation operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCancelImageCreation
        ///         operation.
        /// REST API Reference for CancelImageCreation Operation
        IAsyncResult BeginCancelImageCreation(CancelImageCreationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  CancelImageCreation operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginCancelImageCreation.
        /// 
        /// Returns a  CancelImageCreationResult from Imagebuilder.
        /// REST API Reference for CancelImageCreation Operation
        CancelImageCreationResponse EndCancelImageCreation(IAsyncResult asyncResult);
        #endregion
        
        #region  CreateComponent
        /// 
        /// Creates a new component that can be used to build, validate, test, and assess your
        /// image. The component is based on a YAML document that you specify using exactly one
        /// of the following methods:
        /// 
        ///   -  
        /// 
        /// Inline, using the dataproperty in the request body.
        /// 
        ///
-  
        /// 
        /// A URL that points to a YAML document file stored in Amazon S3, using the uri/// property in the request body.
        /// 
        ///
/// 
        /// Container for the necessary parameters to execute the CreateComponent service method.
        /// 
        /// The response from the CreateComponent service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have specified two or more mutually exclusive parameters. Review the error message
        /// for details.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// Your version number is out of bounds or does not follow the required syntax.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// You have exceeded the number of permitted resources or operations for this service.
        /// For service quotas, see EC2
        /// Image Builder endpoints and quotas.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for CreateComponent Operation
        CreateComponentResponse CreateComponent(CreateComponentRequest request);
        /// 
        /// Initiates the asynchronous execution of the CreateComponent operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the CreateComponent operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateComponent
        ///         operation.
        /// REST API Reference for CreateComponent Operation
        IAsyncResult BeginCreateComponent(CreateComponentRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  CreateComponent operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginCreateComponent.
        /// 
        /// Returns a  CreateComponentResult from Imagebuilder.
        /// REST API Reference for CreateComponent Operation
        CreateComponentResponse EndCreateComponent(IAsyncResult asyncResult);
        #endregion
        
        #region  CreateContainerRecipe
        /// 
        /// Creates a new container recipe. Container recipes define how images are configured,
        /// tested, and assessed.
        /// 
        /// Container for the necessary parameters to execute the CreateContainerRecipe service method.
        /// 
        /// The response from the CreateContainerRecipe service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// Your version number is out of bounds or does not follow the required syntax.
        /// 
        /// 
        /// The resource that you are trying to create already exists.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// You have exceeded the number of permitted resources or operations for this service.
        /// For service quotas, see EC2
        /// Image Builder endpoints and quotas.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for CreateContainerRecipe Operation
        CreateContainerRecipeResponse CreateContainerRecipe(CreateContainerRecipeRequest request);
        /// 
        /// Initiates the asynchronous execution of the CreateContainerRecipe operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the CreateContainerRecipe operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateContainerRecipe
        ///         operation.
        /// REST API Reference for CreateContainerRecipe Operation
        IAsyncResult BeginCreateContainerRecipe(CreateContainerRecipeRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  CreateContainerRecipe operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginCreateContainerRecipe.
        /// 
        /// Returns a  CreateContainerRecipeResult from Imagebuilder.
        /// REST API Reference for CreateContainerRecipe Operation
        CreateContainerRecipeResponse EndCreateContainerRecipe(IAsyncResult asyncResult);
        #endregion
        
        #region  CreateDistributionConfiguration
        /// 
        /// Creates a new distribution configuration. Distribution configurations define and configure
        /// the outputs of your pipeline.
        /// 
        /// Container for the necessary parameters to execute the CreateDistributionConfiguration service method.
        /// 
        /// The response from the CreateDistributionConfiguration service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have specified two or more mutually exclusive parameters. Review the error message
        /// for details.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to create already exists.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// You have exceeded the number of permitted resources or operations for this service.
        /// For service quotas, see EC2
        /// Image Builder endpoints and quotas.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for CreateDistributionConfiguration Operation
        CreateDistributionConfigurationResponse CreateDistributionConfiguration(CreateDistributionConfigurationRequest request);
        /// 
        /// Initiates the asynchronous execution of the CreateDistributionConfiguration operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the CreateDistributionConfiguration operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateDistributionConfiguration
        ///         operation.
        /// REST API Reference for CreateDistributionConfiguration Operation
        IAsyncResult BeginCreateDistributionConfiguration(CreateDistributionConfigurationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  CreateDistributionConfiguration operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginCreateDistributionConfiguration.
        /// 
        /// Returns a  CreateDistributionConfigurationResult from Imagebuilder.
        /// REST API Reference for CreateDistributionConfiguration Operation
        CreateDistributionConfigurationResponse EndCreateDistributionConfiguration(IAsyncResult asyncResult);
        #endregion
        
        #region  CreateImage
        /// 
        /// Creates a new image. This request will create a new image along with all of the configured
        /// output resources defined in the distribution configuration. You must specify exactly
        /// one recipe for your image, using either a ContainerRecipeArn or an ImageRecipeArn.
        /// 
        /// Container for the necessary parameters to execute the CreateImage service method.
        /// 
        /// The response from the CreateImage service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// You have exceeded the number of permitted resources or operations for this service.
        /// For service quotas, see EC2
        /// Image Builder endpoints and quotas.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for CreateImage Operation
        CreateImageResponse CreateImage(CreateImageRequest request);
        /// 
        /// Initiates the asynchronous execution of the CreateImage operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the CreateImage operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateImage
        ///         operation.
        /// REST API Reference for CreateImage Operation
        IAsyncResult BeginCreateImage(CreateImageRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  CreateImage operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginCreateImage.
        /// 
        /// Returns a  CreateImageResult from Imagebuilder.
        /// REST API Reference for CreateImage Operation
        CreateImageResponse EndCreateImage(IAsyncResult asyncResult);
        #endregion
        
        #region  CreateImagePipeline
        /// 
        /// Creates a new image pipeline. Image pipelines enable you to automate the creation
        /// and distribution of images.
        /// 
        /// Container for the necessary parameters to execute the CreateImagePipeline service method.
        /// 
        /// The response from the CreateImagePipeline service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to create already exists.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// You have exceeded the number of permitted resources or operations for this service.
        /// For service quotas, see EC2
        /// Image Builder endpoints and quotas.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for CreateImagePipeline Operation
        CreateImagePipelineResponse CreateImagePipeline(CreateImagePipelineRequest request);
        /// 
        /// Initiates the asynchronous execution of the CreateImagePipeline operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the CreateImagePipeline operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateImagePipeline
        ///         operation.
        /// REST API Reference for CreateImagePipeline Operation
        IAsyncResult BeginCreateImagePipeline(CreateImagePipelineRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  CreateImagePipeline operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginCreateImagePipeline.
        /// 
        /// Returns a  CreateImagePipelineResult from Imagebuilder.
        /// REST API Reference for CreateImagePipeline Operation
        CreateImagePipelineResponse EndCreateImagePipeline(IAsyncResult asyncResult);
        #endregion
        
        #region  CreateImageRecipe
        /// 
        /// Creates a new image recipe. Image recipes define how images are configured, tested,
        /// and assessed.
        /// 
        /// Container for the necessary parameters to execute the CreateImageRecipe service method.
        /// 
        /// The response from the CreateImageRecipe service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// Your version number is out of bounds or does not follow the required syntax.
        /// 
        /// 
        /// The resource that you are trying to create already exists.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// You have exceeded the number of permitted resources or operations for this service.
        /// For service quotas, see EC2
        /// Image Builder endpoints and quotas.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for CreateImageRecipe Operation
        CreateImageRecipeResponse CreateImageRecipe(CreateImageRecipeRequest request);
        /// 
        /// Initiates the asynchronous execution of the CreateImageRecipe operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the CreateImageRecipe operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateImageRecipe
        ///         operation.
        /// REST API Reference for CreateImageRecipe Operation
        IAsyncResult BeginCreateImageRecipe(CreateImageRecipeRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  CreateImageRecipe operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginCreateImageRecipe.
        /// 
        /// Returns a  CreateImageRecipeResult from Imagebuilder.
        /// REST API Reference for CreateImageRecipe Operation
        CreateImageRecipeResponse EndCreateImageRecipe(IAsyncResult asyncResult);
        #endregion
        
        #region  CreateInfrastructureConfiguration
        /// 
        /// Creates a new infrastructure configuration. An infrastructure configuration defines
        /// the environment in which your image will be built and tested.
        /// 
        /// Container for the necessary parameters to execute the CreateInfrastructureConfiguration service method.
        /// 
        /// The response from the CreateInfrastructureConfiguration service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to create already exists.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// You have exceeded the number of permitted resources or operations for this service.
        /// For service quotas, see EC2
        /// Image Builder endpoints and quotas.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for CreateInfrastructureConfiguration Operation
        CreateInfrastructureConfigurationResponse CreateInfrastructureConfiguration(CreateInfrastructureConfigurationRequest request);
        /// 
        /// Initiates the asynchronous execution of the CreateInfrastructureConfiguration operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the CreateInfrastructureConfiguration operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateInfrastructureConfiguration
        ///         operation.
        /// REST API Reference for CreateInfrastructureConfiguration Operation
        IAsyncResult BeginCreateInfrastructureConfiguration(CreateInfrastructureConfigurationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  CreateInfrastructureConfiguration operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginCreateInfrastructureConfiguration.
        /// 
        /// Returns a  CreateInfrastructureConfigurationResult from Imagebuilder.
        /// REST API Reference for CreateInfrastructureConfiguration Operation
        CreateInfrastructureConfigurationResponse EndCreateInfrastructureConfiguration(IAsyncResult asyncResult);
        #endregion
        
        #region  DeleteComponent
        /// 
        /// Deletes a component build version.
        /// 
        /// Container for the necessary parameters to execute the DeleteComponent service method.
        /// 
        /// The response from the DeleteComponent service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// You have attempted to mutate or delete a resource with a dependency that prohibits
        /// this action. See the error message for more details.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for DeleteComponent Operation
        DeleteComponentResponse DeleteComponent(DeleteComponentRequest request);
        /// 
        /// Initiates the asynchronous execution of the DeleteComponent operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the DeleteComponent operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteComponent
        ///         operation.
        /// REST API Reference for DeleteComponent Operation
        IAsyncResult BeginDeleteComponent(DeleteComponentRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  DeleteComponent operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginDeleteComponent.
        /// 
        /// Returns a  DeleteComponentResult from Imagebuilder.
        /// REST API Reference for DeleteComponent Operation
        DeleteComponentResponse EndDeleteComponent(IAsyncResult asyncResult);
        #endregion
        
        #region  DeleteContainerRecipe
        /// 
        /// Deletes a container recipe.
        /// 
        /// Container for the necessary parameters to execute the DeleteContainerRecipe service method.
        /// 
        /// The response from the DeleteContainerRecipe service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// You have attempted to mutate or delete a resource with a dependency that prohibits
        /// this action. See the error message for more details.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for DeleteContainerRecipe Operation
        DeleteContainerRecipeResponse DeleteContainerRecipe(DeleteContainerRecipeRequest request);
        /// 
        /// Initiates the asynchronous execution of the DeleteContainerRecipe operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the DeleteContainerRecipe operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteContainerRecipe
        ///         operation.
        /// REST API Reference for DeleteContainerRecipe Operation
        IAsyncResult BeginDeleteContainerRecipe(DeleteContainerRecipeRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  DeleteContainerRecipe operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginDeleteContainerRecipe.
        /// 
        /// Returns a  DeleteContainerRecipeResult from Imagebuilder.
        /// REST API Reference for DeleteContainerRecipe Operation
        DeleteContainerRecipeResponse EndDeleteContainerRecipe(IAsyncResult asyncResult);
        #endregion
        
        #region  DeleteDistributionConfiguration
        /// 
        /// Deletes a distribution configuration.
        /// 
        /// Container for the necessary parameters to execute the DeleteDistributionConfiguration service method.
        /// 
        /// The response from the DeleteDistributionConfiguration service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// You have attempted to mutate or delete a resource with a dependency that prohibits
        /// this action. See the error message for more details.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for DeleteDistributionConfiguration Operation
        DeleteDistributionConfigurationResponse DeleteDistributionConfiguration(DeleteDistributionConfigurationRequest request);
        /// 
        /// Initiates the asynchronous execution of the DeleteDistributionConfiguration operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the DeleteDistributionConfiguration operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteDistributionConfiguration
        ///         operation.
        /// REST API Reference for DeleteDistributionConfiguration Operation
        IAsyncResult BeginDeleteDistributionConfiguration(DeleteDistributionConfigurationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  DeleteDistributionConfiguration operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginDeleteDistributionConfiguration.
        /// 
        /// Returns a  DeleteDistributionConfigurationResult from Imagebuilder.
        /// REST API Reference for DeleteDistributionConfiguration Operation
        DeleteDistributionConfigurationResponse EndDeleteDistributionConfiguration(IAsyncResult asyncResult);
        #endregion
        
        #region  DeleteImage
        /// 
        /// Deletes an Image Builder image resource. This does not delete any EC2 AMIs or ECR
        /// container images that are created during the image build process. You must clean those
        /// up separately, using the appropriate Amazon EC2 or Amazon ECR console actions, or
        /// API or CLI commands.
        /// 
        ///  
        /// 
        /// Container for the necessary parameters to execute the DeleteImage service method.
        /// 
        /// The response from the DeleteImage service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// You have attempted to mutate or delete a resource with a dependency that prohibits
        /// this action. See the error message for more details.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for DeleteImage Operation
        DeleteImageResponse DeleteImage(DeleteImageRequest request);
        /// 
        /// Initiates the asynchronous execution of the DeleteImage operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the DeleteImage operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteImage
        ///         operation.
        /// REST API Reference for DeleteImage Operation
        IAsyncResult BeginDeleteImage(DeleteImageRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  DeleteImage operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginDeleteImage.
        /// 
        /// Returns a  DeleteImageResult from Imagebuilder.
        /// REST API Reference for DeleteImage Operation
        DeleteImageResponse EndDeleteImage(IAsyncResult asyncResult);
        #endregion
        
        #region  DeleteImagePipeline
        /// 
        /// Deletes an image pipeline.
        /// 
        /// Container for the necessary parameters to execute the DeleteImagePipeline service method.
        /// 
        /// The response from the DeleteImagePipeline service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// You have attempted to mutate or delete a resource with a dependency that prohibits
        /// this action. See the error message for more details.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for DeleteImagePipeline Operation
        DeleteImagePipelineResponse DeleteImagePipeline(DeleteImagePipelineRequest request);
        /// 
        /// Initiates the asynchronous execution of the DeleteImagePipeline operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the DeleteImagePipeline operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteImagePipeline
        ///         operation.
        /// REST API Reference for DeleteImagePipeline Operation
        IAsyncResult BeginDeleteImagePipeline(DeleteImagePipelineRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  DeleteImagePipeline operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginDeleteImagePipeline.
        /// 
        /// Returns a  DeleteImagePipelineResult from Imagebuilder.
        /// REST API Reference for DeleteImagePipeline Operation
        DeleteImagePipelineResponse EndDeleteImagePipeline(IAsyncResult asyncResult);
        #endregion
        
        #region  DeleteImageRecipe
        /// 
        /// Deletes an image recipe.
        /// 
        /// Container for the necessary parameters to execute the DeleteImageRecipe service method.
        /// 
        /// The response from the DeleteImageRecipe service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// You have attempted to mutate or delete a resource with a dependency that prohibits
        /// this action. See the error message for more details.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for DeleteImageRecipe Operation
        DeleteImageRecipeResponse DeleteImageRecipe(DeleteImageRecipeRequest request);
        /// 
        /// Initiates the asynchronous execution of the DeleteImageRecipe operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the DeleteImageRecipe operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteImageRecipe
        ///         operation.
        /// REST API Reference for DeleteImageRecipe Operation
        IAsyncResult BeginDeleteImageRecipe(DeleteImageRecipeRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  DeleteImageRecipe operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginDeleteImageRecipe.
        /// 
        /// Returns a  DeleteImageRecipeResult from Imagebuilder.
        /// REST API Reference for DeleteImageRecipe Operation
        DeleteImageRecipeResponse EndDeleteImageRecipe(IAsyncResult asyncResult);
        #endregion
        
        #region  DeleteInfrastructureConfiguration
        /// 
        /// Deletes an infrastructure configuration.
        /// 
        /// Container for the necessary parameters to execute the DeleteInfrastructureConfiguration service method.
        /// 
        /// The response from the DeleteInfrastructureConfiguration service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// You have attempted to mutate or delete a resource with a dependency that prohibits
        /// this action. See the error message for more details.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for DeleteInfrastructureConfiguration Operation
        DeleteInfrastructureConfigurationResponse DeleteInfrastructureConfiguration(DeleteInfrastructureConfigurationRequest request);
        /// 
        /// Initiates the asynchronous execution of the DeleteInfrastructureConfiguration operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the DeleteInfrastructureConfiguration operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteInfrastructureConfiguration
        ///         operation.
        /// REST API Reference for DeleteInfrastructureConfiguration Operation
        IAsyncResult BeginDeleteInfrastructureConfiguration(DeleteInfrastructureConfigurationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  DeleteInfrastructureConfiguration operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginDeleteInfrastructureConfiguration.
        /// 
        /// Returns a  DeleteInfrastructureConfigurationResult from Imagebuilder.
        /// REST API Reference for DeleteInfrastructureConfiguration Operation
        DeleteInfrastructureConfigurationResponse EndDeleteInfrastructureConfiguration(IAsyncResult asyncResult);
        #endregion
        
        #region  GetComponent
        /// 
        /// Gets a component object.
        /// 
        /// Container for the necessary parameters to execute the GetComponent service method.
        /// 
        /// The response from the GetComponent service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetComponent Operation
        GetComponentResponse GetComponent(GetComponentRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetComponent operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetComponent operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetComponent
        ///         operation.
        /// REST API Reference for GetComponent Operation
        IAsyncResult BeginGetComponent(GetComponentRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetComponent operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetComponent.
        /// 
        /// Returns a  GetComponentResult from Imagebuilder.
        /// REST API Reference for GetComponent Operation
        GetComponentResponse EndGetComponent(IAsyncResult asyncResult);
        #endregion
        
        #region  GetComponentPolicy
        /// 
        /// Gets a component policy.
        /// 
        /// Container for the necessary parameters to execute the GetComponentPolicy service method.
        /// 
        /// The response from the GetComponentPolicy service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetComponentPolicy Operation
        GetComponentPolicyResponse GetComponentPolicy(GetComponentPolicyRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetComponentPolicy operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetComponentPolicy operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetComponentPolicy
        ///         operation.
        /// REST API Reference for GetComponentPolicy Operation
        IAsyncResult BeginGetComponentPolicy(GetComponentPolicyRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetComponentPolicy operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetComponentPolicy.
        /// 
        /// Returns a  GetComponentPolicyResult from Imagebuilder.
        /// REST API Reference for GetComponentPolicy Operation
        GetComponentPolicyResponse EndGetComponentPolicy(IAsyncResult asyncResult);
        #endregion
        
        #region  GetContainerRecipe
        /// 
        /// Retrieves a container recipe.
        /// 
        /// Container for the necessary parameters to execute the GetContainerRecipe service method.
        /// 
        /// The response from the GetContainerRecipe service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetContainerRecipe Operation
        GetContainerRecipeResponse GetContainerRecipe(GetContainerRecipeRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetContainerRecipe operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetContainerRecipe operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetContainerRecipe
        ///         operation.
        /// REST API Reference for GetContainerRecipe Operation
        IAsyncResult BeginGetContainerRecipe(GetContainerRecipeRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetContainerRecipe operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetContainerRecipe.
        /// 
        /// Returns a  GetContainerRecipeResult from Imagebuilder.
        /// REST API Reference for GetContainerRecipe Operation
        GetContainerRecipeResponse EndGetContainerRecipe(IAsyncResult asyncResult);
        #endregion
        
        #region  GetContainerRecipePolicy
        /// 
        /// Retrieves the policy for a container recipe.
        /// 
        /// Container for the necessary parameters to execute the GetContainerRecipePolicy service method.
        /// 
        /// The response from the GetContainerRecipePolicy service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetContainerRecipePolicy Operation
        GetContainerRecipePolicyResponse GetContainerRecipePolicy(GetContainerRecipePolicyRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetContainerRecipePolicy operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetContainerRecipePolicy operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetContainerRecipePolicy
        ///         operation.
        /// REST API Reference for GetContainerRecipePolicy Operation
        IAsyncResult BeginGetContainerRecipePolicy(GetContainerRecipePolicyRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetContainerRecipePolicy operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetContainerRecipePolicy.
        /// 
        /// Returns a  GetContainerRecipePolicyResult from Imagebuilder.
        /// REST API Reference for GetContainerRecipePolicy Operation
        GetContainerRecipePolicyResponse EndGetContainerRecipePolicy(IAsyncResult asyncResult);
        #endregion
        
        #region  GetDistributionConfiguration
        /// 
        /// Gets a distribution configuration.
        /// 
        /// Container for the necessary parameters to execute the GetDistributionConfiguration service method.
        /// 
        /// The response from the GetDistributionConfiguration service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetDistributionConfiguration Operation
        GetDistributionConfigurationResponse GetDistributionConfiguration(GetDistributionConfigurationRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetDistributionConfiguration operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetDistributionConfiguration operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetDistributionConfiguration
        ///         operation.
        /// REST API Reference for GetDistributionConfiguration Operation
        IAsyncResult BeginGetDistributionConfiguration(GetDistributionConfigurationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetDistributionConfiguration operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetDistributionConfiguration.
        /// 
        /// Returns a  GetDistributionConfigurationResult from Imagebuilder.
        /// REST API Reference for GetDistributionConfiguration Operation
        GetDistributionConfigurationResponse EndGetDistributionConfiguration(IAsyncResult asyncResult);
        #endregion
        
        #region  GetImage
        /// 
        /// Gets an image.
        /// 
        /// Container for the necessary parameters to execute the GetImage service method.
        /// 
        /// The response from the GetImage service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetImage Operation
        GetImageResponse GetImage(GetImageRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetImage operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetImage operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetImage
        ///         operation.
        /// REST API Reference for GetImage Operation
        IAsyncResult BeginGetImage(GetImageRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetImage operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetImage.
        /// 
        /// Returns a  GetImageResult from Imagebuilder.
        /// REST API Reference for GetImage Operation
        GetImageResponse EndGetImage(IAsyncResult asyncResult);
        #endregion
        
        #region  GetImagePipeline
        /// 
        /// Gets an image pipeline.
        /// 
        /// Container for the necessary parameters to execute the GetImagePipeline service method.
        /// 
        /// The response from the GetImagePipeline service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetImagePipeline Operation
        GetImagePipelineResponse GetImagePipeline(GetImagePipelineRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetImagePipeline operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetImagePipeline operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetImagePipeline
        ///         operation.
        /// REST API Reference for GetImagePipeline Operation
        IAsyncResult BeginGetImagePipeline(GetImagePipelineRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetImagePipeline operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetImagePipeline.
        /// 
        /// Returns a  GetImagePipelineResult from Imagebuilder.
        /// REST API Reference for GetImagePipeline Operation
        GetImagePipelineResponse EndGetImagePipeline(IAsyncResult asyncResult);
        #endregion
        
        #region  GetImagePolicy
        /// 
        /// Gets an image policy.
        /// 
        /// Container for the necessary parameters to execute the GetImagePolicy service method.
        /// 
        /// The response from the GetImagePolicy service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetImagePolicy Operation
        GetImagePolicyResponse GetImagePolicy(GetImagePolicyRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetImagePolicy operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetImagePolicy operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetImagePolicy
        ///         operation.
        /// REST API Reference for GetImagePolicy Operation
        IAsyncResult BeginGetImagePolicy(GetImagePolicyRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetImagePolicy operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetImagePolicy.
        /// 
        /// Returns a  GetImagePolicyResult from Imagebuilder.
        /// REST API Reference for GetImagePolicy Operation
        GetImagePolicyResponse EndGetImagePolicy(IAsyncResult asyncResult);
        #endregion
        
        #region  GetImageRecipe
        /// 
        /// Gets an image recipe.
        /// 
        /// Container for the necessary parameters to execute the GetImageRecipe service method.
        /// 
        /// The response from the GetImageRecipe service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetImageRecipe Operation
        GetImageRecipeResponse GetImageRecipe(GetImageRecipeRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetImageRecipe operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetImageRecipe operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetImageRecipe
        ///         operation.
        /// REST API Reference for GetImageRecipe Operation
        IAsyncResult BeginGetImageRecipe(GetImageRecipeRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetImageRecipe operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetImageRecipe.
        /// 
        /// Returns a  GetImageRecipeResult from Imagebuilder.
        /// REST API Reference for GetImageRecipe Operation
        GetImageRecipeResponse EndGetImageRecipe(IAsyncResult asyncResult);
        #endregion
        
        #region  GetImageRecipePolicy
        /// 
        /// Gets an image recipe policy.
        /// 
        /// Container for the necessary parameters to execute the GetImageRecipePolicy service method.
        /// 
        /// The response from the GetImageRecipePolicy service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetImageRecipePolicy Operation
        GetImageRecipePolicyResponse GetImageRecipePolicy(GetImageRecipePolicyRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetImageRecipePolicy operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetImageRecipePolicy operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetImageRecipePolicy
        ///         operation.
        /// REST API Reference for GetImageRecipePolicy Operation
        IAsyncResult BeginGetImageRecipePolicy(GetImageRecipePolicyRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetImageRecipePolicy operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetImageRecipePolicy.
        /// 
        /// Returns a  GetImageRecipePolicyResult from Imagebuilder.
        /// REST API Reference for GetImageRecipePolicy Operation
        GetImageRecipePolicyResponse EndGetImageRecipePolicy(IAsyncResult asyncResult);
        #endregion
        
        #region  GetInfrastructureConfiguration
        /// 
        /// Gets an infrastructure configuration.
        /// 
        /// Container for the necessary parameters to execute the GetInfrastructureConfiguration service method.
        /// 
        /// The response from the GetInfrastructureConfiguration service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetInfrastructureConfiguration Operation
        GetInfrastructureConfigurationResponse GetInfrastructureConfiguration(GetInfrastructureConfigurationRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetInfrastructureConfiguration operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetInfrastructureConfiguration operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetInfrastructureConfiguration
        ///         operation.
        /// REST API Reference for GetInfrastructureConfiguration Operation
        IAsyncResult BeginGetInfrastructureConfiguration(GetInfrastructureConfigurationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetInfrastructureConfiguration operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetInfrastructureConfiguration.
        /// 
        /// Returns a  GetInfrastructureConfigurationResult from Imagebuilder.
        /// REST API Reference for GetInfrastructureConfiguration Operation
        GetInfrastructureConfigurationResponse EndGetInfrastructureConfiguration(IAsyncResult asyncResult);
        #endregion
        
        #region  GetWorkflowExecution
        /// 
        /// Get the runtime information that was logged for a specific runtime instance of the
        /// workflow.
        /// 
        /// Container for the necessary parameters to execute the GetWorkflowExecution service method.
        /// 
        /// The response from the GetWorkflowExecution service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetWorkflowExecution Operation
        GetWorkflowExecutionResponse GetWorkflowExecution(GetWorkflowExecutionRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetWorkflowExecution operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetWorkflowExecution operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetWorkflowExecution
        ///         operation.
        /// REST API Reference for GetWorkflowExecution Operation
        IAsyncResult BeginGetWorkflowExecution(GetWorkflowExecutionRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetWorkflowExecution operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetWorkflowExecution.
        /// 
        /// Returns a  GetWorkflowExecutionResult from Imagebuilder.
        /// REST API Reference for GetWorkflowExecution Operation
        GetWorkflowExecutionResponse EndGetWorkflowExecution(IAsyncResult asyncResult);
        #endregion
        
        #region  GetWorkflowStepExecution
        /// 
        /// Get the runtime information that was logged for a specific runtime instance of the
        /// workflow step.
        /// 
        /// Container for the necessary parameters to execute the GetWorkflowStepExecution service method.
        /// 
        /// The response from the GetWorkflowStepExecution service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for GetWorkflowStepExecution Operation
        GetWorkflowStepExecutionResponse GetWorkflowStepExecution(GetWorkflowStepExecutionRequest request);
        /// 
        /// Initiates the asynchronous execution of the GetWorkflowStepExecution operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the GetWorkflowStepExecution operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetWorkflowStepExecution
        ///         operation.
        /// REST API Reference for GetWorkflowStepExecution Operation
        IAsyncResult BeginGetWorkflowStepExecution(GetWorkflowStepExecutionRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  GetWorkflowStepExecution operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginGetWorkflowStepExecution.
        /// 
        /// Returns a  GetWorkflowStepExecutionResult from Imagebuilder.
        /// REST API Reference for GetWorkflowStepExecution Operation
        GetWorkflowStepExecutionResponse EndGetWorkflowStepExecution(IAsyncResult asyncResult);
        #endregion
        
        #region  ImportComponent
        /// 
        /// Imports a component and transforms its data into a component document.
        /// 
        /// Container for the necessary parameters to execute the ImportComponent service method.
        /// 
        /// The response from the ImportComponent service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have specified two or more mutually exclusive parameters. Review the error message
        /// for details.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// Your version number is out of bounds or does not follow the required syntax.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ImportComponent Operation
        ImportComponentResponse ImportComponent(ImportComponentRequest request);
        /// 
        /// Initiates the asynchronous execution of the ImportComponent operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ImportComponent operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndImportComponent
        ///         operation.
        /// REST API Reference for ImportComponent Operation
        IAsyncResult BeginImportComponent(ImportComponentRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ImportComponent operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginImportComponent.
        /// 
        /// Returns a  ImportComponentResult from Imagebuilder.
        /// REST API Reference for ImportComponent Operation
        ImportComponentResponse EndImportComponent(IAsyncResult asyncResult);
        #endregion
        
        #region  ImportVmImage
        /// 
        /// When you export your virtual machine (VM) from its virtualization environment, that
        /// process creates a set of one or more disk container files that act as snapshots of
        /// your VM’s environment, settings, and data. The Amazon EC2 API ImportImage
        /// action uses those files to import your VM and create an AMI. To import using the CLI
        /// command, see import-image
        /// 
        /// 
        ///  
        /// 
        /// You can reference the task ID from the VM import to pull in the AMI that the import
        /// created as the base image for your Image Builder recipe.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ImportVmImage service method.
        /// 
        /// The response from the ImportVmImage service method, as returned by Imagebuilder.
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ImportVmImage Operation
        ImportVmImageResponse ImportVmImage(ImportVmImageRequest request);
        /// 
        /// Initiates the asynchronous execution of the ImportVmImage operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ImportVmImage operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndImportVmImage
        ///         operation.
        /// REST API Reference for ImportVmImage Operation
        IAsyncResult BeginImportVmImage(ImportVmImageRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ImportVmImage operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginImportVmImage.
        /// 
        /// Returns a  ImportVmImageResult from Imagebuilder.
        /// REST API Reference for ImportVmImage Operation
        ImportVmImageResponse EndImportVmImage(IAsyncResult asyncResult);
        #endregion
        
        #region  ListComponentBuildVersions
        /// 
        /// Returns the list of component build versions for the specified semantic version.
        /// 
        ///   
        /// 
        /// The semantic version has four nodes: <major>.<minor>.<patch>/<build>.
        /// You can assign values for the first three, and can filter on all of them.
        /// 
        ///  
        /// 
        ///  Filtering: With semantic versioning, you have the flexibility to use wildcards
        /// (x) to specify the most recent versions or nodes when selecting the base image or
        /// components for your recipe. When you use a wildcard in any node, all nodes to the
        /// right of the first wildcard must also be wildcards.
        /// 
        ///  
        /// 
        /// Container for the necessary parameters to execute the ListComponentBuildVersions service method.
        /// 
        /// The response from the ListComponentBuildVersions service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListComponentBuildVersions Operation
        ListComponentBuildVersionsResponse ListComponentBuildVersions(ListComponentBuildVersionsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListComponentBuildVersions operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListComponentBuildVersions operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListComponentBuildVersions
        ///         operation.
        /// REST API Reference for ListComponentBuildVersions Operation
        IAsyncResult BeginListComponentBuildVersions(ListComponentBuildVersionsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListComponentBuildVersions operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListComponentBuildVersions.
        /// 
        /// Returns a  ListComponentBuildVersionsResult from Imagebuilder.
        /// REST API Reference for ListComponentBuildVersions Operation
        ListComponentBuildVersionsResponse EndListComponentBuildVersions(IAsyncResult asyncResult);
        #endregion
        
        #region  ListComponents
        /// 
        /// Returns the list of components that can be filtered by name, or by using the listed
        ///filters to streamline results. Newly created components can take up to
        /// two minutes to appear in the ListComponents API Results.
        /// 
        ///   
        /// 
        /// The semantic version has four nodes: <major>.<minor>.<patch>/<build>.
        /// You can assign values for the first three, and can filter on all of them.
        /// 
        ///  
        /// 
        ///  Filtering: With semantic versioning, you have the flexibility to use wildcards
        /// (x) to specify the most recent versions or nodes when selecting the base image or
        /// components for your recipe. When you use a wildcard in any node, all nodes to the
        /// right of the first wildcard must also be wildcards.
        /// 
        ///  
        /// 
        /// Container for the necessary parameters to execute the ListComponents service method.
        /// 
        /// The response from the ListComponents service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListComponents Operation
        ListComponentsResponse ListComponents(ListComponentsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListComponents operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListComponents operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListComponents
        ///         operation.
        /// REST API Reference for ListComponents Operation
        IAsyncResult BeginListComponents(ListComponentsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListComponents operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListComponents.
        /// 
        /// Returns a  ListComponentsResult from Imagebuilder.
        /// REST API Reference for ListComponents Operation
        ListComponentsResponse EndListComponents(IAsyncResult asyncResult);
        #endregion
        
        #region  ListContainerRecipes
        /// 
        /// Returns a list of container recipes.
        /// 
        /// Container for the necessary parameters to execute the ListContainerRecipes service method.
        /// 
        /// The response from the ListContainerRecipes service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListContainerRecipes Operation
        ListContainerRecipesResponse ListContainerRecipes(ListContainerRecipesRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListContainerRecipes operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListContainerRecipes operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListContainerRecipes
        ///         operation.
        /// REST API Reference for ListContainerRecipes Operation
        IAsyncResult BeginListContainerRecipes(ListContainerRecipesRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListContainerRecipes operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListContainerRecipes.
        /// 
        /// Returns a  ListContainerRecipesResult from Imagebuilder.
        /// REST API Reference for ListContainerRecipes Operation
        ListContainerRecipesResponse EndListContainerRecipes(IAsyncResult asyncResult);
        #endregion
        
        #region  ListDistributionConfigurations
        /// 
        /// Returns a list of distribution configurations.
        /// 
        /// Container for the necessary parameters to execute the ListDistributionConfigurations service method.
        /// 
        /// The response from the ListDistributionConfigurations service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListDistributionConfigurations Operation
        ListDistributionConfigurationsResponse ListDistributionConfigurations(ListDistributionConfigurationsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListDistributionConfigurations operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListDistributionConfigurations operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListDistributionConfigurations
        ///         operation.
        /// REST API Reference for ListDistributionConfigurations Operation
        IAsyncResult BeginListDistributionConfigurations(ListDistributionConfigurationsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListDistributionConfigurations operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListDistributionConfigurations.
        /// 
        /// Returns a  ListDistributionConfigurationsResult from Imagebuilder.
        /// REST API Reference for ListDistributionConfigurations Operation
        ListDistributionConfigurationsResponse EndListDistributionConfigurations(IAsyncResult asyncResult);
        #endregion
        
        #region  ListImageBuildVersions
        /// 
        /// Returns a list of image build versions.
        /// 
        /// Container for the necessary parameters to execute the ListImageBuildVersions service method.
        /// 
        /// The response from the ListImageBuildVersions service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListImageBuildVersions Operation
        ListImageBuildVersionsResponse ListImageBuildVersions(ListImageBuildVersionsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListImageBuildVersions operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListImageBuildVersions operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListImageBuildVersions
        ///         operation.
        /// REST API Reference for ListImageBuildVersions Operation
        IAsyncResult BeginListImageBuildVersions(ListImageBuildVersionsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListImageBuildVersions operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListImageBuildVersions.
        /// 
        /// Returns a  ListImageBuildVersionsResult from Imagebuilder.
        /// REST API Reference for ListImageBuildVersions Operation
        ListImageBuildVersionsResponse EndListImageBuildVersions(IAsyncResult asyncResult);
        #endregion
        
        #region  ListImagePackages
        /// 
        /// List the Packages that are associated with an Image Build Version, as determined by
        /// Amazon Web Services Systems Manager Inventory at build time.
        /// 
        /// Container for the necessary parameters to execute the ListImagePackages service method.
        /// 
        /// The response from the ListImagePackages service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListImagePackages Operation
        ListImagePackagesResponse ListImagePackages(ListImagePackagesRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListImagePackages operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListImagePackages operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListImagePackages
        ///         operation.
        /// REST API Reference for ListImagePackages Operation
        IAsyncResult BeginListImagePackages(ListImagePackagesRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListImagePackages operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListImagePackages.
        /// 
        /// Returns a  ListImagePackagesResult from Imagebuilder.
        /// REST API Reference for ListImagePackages Operation
        ListImagePackagesResponse EndListImagePackages(IAsyncResult asyncResult);
        #endregion
        
        #region  ListImagePipelineImages
        /// 
        /// Returns a list of images created by the specified pipeline.
        /// 
        /// Container for the necessary parameters to execute the ListImagePipelineImages service method.
        /// 
        /// The response from the ListImagePipelineImages service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListImagePipelineImages Operation
        ListImagePipelineImagesResponse ListImagePipelineImages(ListImagePipelineImagesRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListImagePipelineImages operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListImagePipelineImages operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListImagePipelineImages
        ///         operation.
        /// REST API Reference for ListImagePipelineImages Operation
        IAsyncResult BeginListImagePipelineImages(ListImagePipelineImagesRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListImagePipelineImages operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListImagePipelineImages.
        /// 
        /// Returns a  ListImagePipelineImagesResult from Imagebuilder.
        /// REST API Reference for ListImagePipelineImages Operation
        ListImagePipelineImagesResponse EndListImagePipelineImages(IAsyncResult asyncResult);
        #endregion
        
        #region  ListImagePipelines
        /// 
        /// Returns a list of image pipelines.
        /// 
        /// Container for the necessary parameters to execute the ListImagePipelines service method.
        /// 
        /// The response from the ListImagePipelines service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListImagePipelines Operation
        ListImagePipelinesResponse ListImagePipelines(ListImagePipelinesRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListImagePipelines operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListImagePipelines operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListImagePipelines
        ///         operation.
        /// REST API Reference for ListImagePipelines Operation
        IAsyncResult BeginListImagePipelines(ListImagePipelinesRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListImagePipelines operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListImagePipelines.
        /// 
        /// Returns a  ListImagePipelinesResult from Imagebuilder.
        /// REST API Reference for ListImagePipelines Operation
        ListImagePipelinesResponse EndListImagePipelines(IAsyncResult asyncResult);
        #endregion
        
        #region  ListImageRecipes
        /// 
        /// Returns a list of image recipes.
        /// 
        /// Container for the necessary parameters to execute the ListImageRecipes service method.
        /// 
        /// The response from the ListImageRecipes service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListImageRecipes Operation
        ListImageRecipesResponse ListImageRecipes(ListImageRecipesRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListImageRecipes operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListImageRecipes operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListImageRecipes
        ///         operation.
        /// REST API Reference for ListImageRecipes Operation
        IAsyncResult BeginListImageRecipes(ListImageRecipesRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListImageRecipes operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListImageRecipes.
        /// 
        /// Returns a  ListImageRecipesResult from Imagebuilder.
        /// REST API Reference for ListImageRecipes Operation
        ListImageRecipesResponse EndListImageRecipes(IAsyncResult asyncResult);
        #endregion
        
        #region  ListImages
        /// 
        /// Returns the list of images that you have access to. Newly created images can take
        /// up to two minutes to appear in the ListImages API Results.
        /// 
        /// Container for the necessary parameters to execute the ListImages service method.
        /// 
        /// The response from the ListImages service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListImages Operation
        ListImagesResponse ListImages(ListImagesRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListImages operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListImages operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListImages
        ///         operation.
        /// REST API Reference for ListImages Operation
        IAsyncResult BeginListImages(ListImagesRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListImages operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListImages.
        /// 
        /// Returns a  ListImagesResult from Imagebuilder.
        /// REST API Reference for ListImages Operation
        ListImagesResponse EndListImages(IAsyncResult asyncResult);
        #endregion
        
        #region  ListImageScanFindingAggregations
        /// 
        /// Returns a list of image scan aggregations for your account. You can filter by the
        /// type of key that Image Builder uses to group results. For example, if you want to
        /// get a list of findings by severity level for one of your pipelines, you might specify
        /// your pipeline with the imagePipelineArn filter. If you don't specify
        /// a filter, Image Builder returns an aggregation for your account.
        /// 
        ///  
        /// 
        /// To streamline results, you can use the following filters in your request:
        /// 
        ///   -  
        /// 
        ///  accountId/// 
        ///
-  
        /// 
        ///  imageBuildVersionArn/// 
        ///
-  
        /// 
        ///  imagePipelineArn/// 
        ///
-  
        /// 
        ///  vulnerabilityId/// 
        ///
/// 
        /// Container for the necessary parameters to execute the ListImageScanFindingAggregations service method.
        /// 
        /// The response from the ListImageScanFindingAggregations service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListImageScanFindingAggregations Operation
        ListImageScanFindingAggregationsResponse ListImageScanFindingAggregations(ListImageScanFindingAggregationsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListImageScanFindingAggregations operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListImageScanFindingAggregations operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListImageScanFindingAggregations
        ///         operation.
        /// REST API Reference for ListImageScanFindingAggregations Operation
        IAsyncResult BeginListImageScanFindingAggregations(ListImageScanFindingAggregationsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListImageScanFindingAggregations operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListImageScanFindingAggregations.
        /// 
        /// Returns a  ListImageScanFindingAggregationsResult from Imagebuilder.
        /// REST API Reference for ListImageScanFindingAggregations Operation
        ListImageScanFindingAggregationsResponse EndListImageScanFindingAggregations(IAsyncResult asyncResult);
        #endregion
        
        #region  ListImageScanFindings
        /// 
        /// Returns a list of image scan findings for your account.
        /// 
        /// Container for the necessary parameters to execute the ListImageScanFindings service method.
        /// 
        /// The response from the ListImageScanFindings service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListImageScanFindings Operation
        ListImageScanFindingsResponse ListImageScanFindings(ListImageScanFindingsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListImageScanFindings operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListImageScanFindings operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListImageScanFindings
        ///         operation.
        /// REST API Reference for ListImageScanFindings Operation
        IAsyncResult BeginListImageScanFindings(ListImageScanFindingsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListImageScanFindings operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListImageScanFindings.
        /// 
        /// Returns a  ListImageScanFindingsResult from Imagebuilder.
        /// REST API Reference for ListImageScanFindings Operation
        ListImageScanFindingsResponse EndListImageScanFindings(IAsyncResult asyncResult);
        #endregion
        
        #region  ListInfrastructureConfigurations
        /// 
        /// Returns a list of infrastructure configurations.
        /// 
        /// Container for the necessary parameters to execute the ListInfrastructureConfigurations service method.
        /// 
        /// The response from the ListInfrastructureConfigurations service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListInfrastructureConfigurations Operation
        ListInfrastructureConfigurationsResponse ListInfrastructureConfigurations(ListInfrastructureConfigurationsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListInfrastructureConfigurations operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListInfrastructureConfigurations operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListInfrastructureConfigurations
        ///         operation.
        /// REST API Reference for ListInfrastructureConfigurations Operation
        IAsyncResult BeginListInfrastructureConfigurations(ListInfrastructureConfigurationsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListInfrastructureConfigurations operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListInfrastructureConfigurations.
        /// 
        /// Returns a  ListInfrastructureConfigurationsResult from Imagebuilder.
        /// REST API Reference for ListInfrastructureConfigurations Operation
        ListInfrastructureConfigurationsResponse EndListInfrastructureConfigurations(IAsyncResult asyncResult);
        #endregion
        
        #region  ListTagsForResource
        /// 
        /// Returns the list of tags for the specified resource.
        /// 
        /// Container for the necessary parameters to execute the ListTagsForResource service method.
        /// 
        /// The response from the ListTagsForResource service method, as returned by Imagebuilder.
        /// 
        /// The specified parameter is invalid. Review the available parameters for the API request.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// REST API Reference for ListTagsForResource Operation
        ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListTagsForResource operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListTagsForResource operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListTagsForResource
        ///         operation.
        /// REST API Reference for ListTagsForResource Operation
        IAsyncResult BeginListTagsForResource(ListTagsForResourceRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListTagsForResource operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListTagsForResource.
        /// 
        /// Returns a  ListTagsForResourceResult from Imagebuilder.
        /// REST API Reference for ListTagsForResource Operation
        ListTagsForResourceResponse EndListTagsForResource(IAsyncResult asyncResult);
        #endregion
        
        #region  ListWorkflowExecutions
        /// 
        /// Returns a list of workflow runtime instance metadata objects for a specific image
        /// build version.
        /// 
        /// Container for the necessary parameters to execute the ListWorkflowExecutions service method.
        /// 
        /// The response from the ListWorkflowExecutions service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListWorkflowExecutions Operation
        ListWorkflowExecutionsResponse ListWorkflowExecutions(ListWorkflowExecutionsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListWorkflowExecutions operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListWorkflowExecutions operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListWorkflowExecutions
        ///         operation.
        /// REST API Reference for ListWorkflowExecutions Operation
        IAsyncResult BeginListWorkflowExecutions(ListWorkflowExecutionsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListWorkflowExecutions operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListWorkflowExecutions.
        /// 
        /// Returns a  ListWorkflowExecutionsResult from Imagebuilder.
        /// REST API Reference for ListWorkflowExecutions Operation
        ListWorkflowExecutionsResponse EndListWorkflowExecutions(IAsyncResult asyncResult);
        #endregion
        
        #region  ListWorkflowStepExecutions
        /// 
        /// Shows runtime data for each step in a runtime instance of the workflow that you specify
        /// in the request.
        /// 
        /// Container for the necessary parameters to execute the ListWorkflowStepExecutions service method.
        /// 
        /// The response from the ListWorkflowStepExecutions service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have provided an invalid pagination token in your request.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for ListWorkflowStepExecutions Operation
        ListWorkflowStepExecutionsResponse ListWorkflowStepExecutions(ListWorkflowStepExecutionsRequest request);
        /// 
        /// Initiates the asynchronous execution of the ListWorkflowStepExecutions operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the ListWorkflowStepExecutions operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListWorkflowStepExecutions
        ///         operation.
        /// REST API Reference for ListWorkflowStepExecutions Operation
        IAsyncResult BeginListWorkflowStepExecutions(ListWorkflowStepExecutionsRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  ListWorkflowStepExecutions operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginListWorkflowStepExecutions.
        /// 
        /// Returns a  ListWorkflowStepExecutionsResult from Imagebuilder.
        /// REST API Reference for ListWorkflowStepExecutions Operation
        ListWorkflowStepExecutionsResponse EndListWorkflowStepExecutions(IAsyncResult asyncResult);
        #endregion
        
        #region  PutComponentPolicy
        /// 
        /// Applies a policy to a component. We recommend that you call the RAM API CreateResourceShare
        /// to share resources. If you call the Image Builder APIPutComponentPolicy,
        /// you must also call the RAM API PromoteResourceShareCreatedFromPolicy
        /// in order for the resource to be visible to all principals with whom the resource is
        /// shared.
        /// 
        /// Container for the necessary parameters to execute the PutComponentPolicy service method.
        /// 
        /// The response from the PutComponentPolicy service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// The value that you provided for the specified parameter is invalid.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for PutComponentPolicy Operation
        PutComponentPolicyResponse PutComponentPolicy(PutComponentPolicyRequest request);
        /// 
        /// Initiates the asynchronous execution of the PutComponentPolicy operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the PutComponentPolicy operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndPutComponentPolicy
        ///         operation.
        /// REST API Reference for PutComponentPolicy Operation
        IAsyncResult BeginPutComponentPolicy(PutComponentPolicyRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  PutComponentPolicy operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginPutComponentPolicy.
        /// 
        /// Returns a  PutComponentPolicyResult from Imagebuilder.
        /// REST API Reference for PutComponentPolicy Operation
        PutComponentPolicyResponse EndPutComponentPolicy(IAsyncResult asyncResult);
        #endregion
        
        #region  PutContainerRecipePolicy
        /// 
        /// Applies a policy to a container image. We recommend that you call the RAM API CreateResourceShare
        /// (https://docs.aws.amazon.com//ram/latest/APIReference/API_CreateResourceShare.html)
        /// to share resources. If you call the Image Builder API PutContainerImagePolicy,
        /// you must also call the RAM API PromoteResourceShareCreatedFromPolicy (https://docs.aws.amazon.com//ram/latest/APIReference/API_PromoteResourceShareCreatedFromPolicy.html)
        /// in order for the resource to be visible to all principals with whom the resource is
        /// shared.
        /// 
        /// Container for the necessary parameters to execute the PutContainerRecipePolicy service method.
        /// 
        /// The response from the PutContainerRecipePolicy service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// The value that you provided for the specified parameter is invalid.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for PutContainerRecipePolicy Operation
        PutContainerRecipePolicyResponse PutContainerRecipePolicy(PutContainerRecipePolicyRequest request);
        /// 
        /// Initiates the asynchronous execution of the PutContainerRecipePolicy operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the PutContainerRecipePolicy operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndPutContainerRecipePolicy
        ///         operation.
        /// REST API Reference for PutContainerRecipePolicy Operation
        IAsyncResult BeginPutContainerRecipePolicy(PutContainerRecipePolicyRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  PutContainerRecipePolicy operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginPutContainerRecipePolicy.
        /// 
        /// Returns a  PutContainerRecipePolicyResult from Imagebuilder.
        /// REST API Reference for PutContainerRecipePolicy Operation
        PutContainerRecipePolicyResponse EndPutContainerRecipePolicy(IAsyncResult asyncResult);
        #endregion
        
        #region  PutImagePolicy
        /// 
        /// Applies a policy to an image. We recommend that you call the RAM API CreateResourceShare
        /// to share resources. If you call the Image Builder API PutImagePolicy,
        /// you must also call the RAM API PromoteResourceShareCreatedFromPolicy
        /// in order for the resource to be visible to all principals with whom the resource is
        /// shared.
        /// 
        /// Container for the necessary parameters to execute the PutImagePolicy service method.
        /// 
        /// The response from the PutImagePolicy service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// The value that you provided for the specified parameter is invalid.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for PutImagePolicy Operation
        PutImagePolicyResponse PutImagePolicy(PutImagePolicyRequest request);
        /// 
        /// Initiates the asynchronous execution of the PutImagePolicy operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the PutImagePolicy operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndPutImagePolicy
        ///         operation.
        /// REST API Reference for PutImagePolicy Operation
        IAsyncResult BeginPutImagePolicy(PutImagePolicyRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  PutImagePolicy operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginPutImagePolicy.
        /// 
        /// Returns a  PutImagePolicyResult from Imagebuilder.
        /// REST API Reference for PutImagePolicy Operation
        PutImagePolicyResponse EndPutImagePolicy(IAsyncResult asyncResult);
        #endregion
        
        #region  PutImageRecipePolicy
        /// 
        /// Applies a policy to an image recipe. We recommend that you call the RAM API CreateResourceShare
        /// to share resources. If you call the Image Builder API PutImageRecipePolicy,
        /// you must also call the RAM API PromoteResourceShareCreatedFromPolicy
        /// in order for the resource to be visible to all principals with whom the resource is
        /// shared.
        /// 
        /// Container for the necessary parameters to execute the PutImageRecipePolicy service method.
        /// 
        /// The response from the PutImageRecipePolicy service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// The value that you provided for the specified parameter is invalid.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for PutImageRecipePolicy Operation
        PutImageRecipePolicyResponse PutImageRecipePolicy(PutImageRecipePolicyRequest request);
        /// 
        /// Initiates the asynchronous execution of the PutImageRecipePolicy operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the PutImageRecipePolicy operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndPutImageRecipePolicy
        ///         operation.
        /// REST API Reference for PutImageRecipePolicy Operation
        IAsyncResult BeginPutImageRecipePolicy(PutImageRecipePolicyRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  PutImageRecipePolicy operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginPutImageRecipePolicy.
        /// 
        /// Returns a  PutImageRecipePolicyResult from Imagebuilder.
        /// REST API Reference for PutImageRecipePolicy Operation
        PutImageRecipePolicyResponse EndPutImageRecipePolicy(IAsyncResult asyncResult);
        #endregion
        
        #region  StartImagePipelineExecution
        /// 
        /// Manually triggers a pipeline to create an image.
        /// 
        /// Container for the necessary parameters to execute the StartImagePipelineExecution service method.
        /// 
        /// The response from the StartImagePipelineExecution service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for StartImagePipelineExecution Operation
        StartImagePipelineExecutionResponse StartImagePipelineExecution(StartImagePipelineExecutionRequest request);
        /// 
        /// Initiates the asynchronous execution of the StartImagePipelineExecution operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the StartImagePipelineExecution operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndStartImagePipelineExecution
        ///         operation.
        /// REST API Reference for StartImagePipelineExecution Operation
        IAsyncResult BeginStartImagePipelineExecution(StartImagePipelineExecutionRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  StartImagePipelineExecution operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginStartImagePipelineExecution.
        /// 
        /// Returns a  StartImagePipelineExecutionResult from Imagebuilder.
        /// REST API Reference for StartImagePipelineExecution Operation
        StartImagePipelineExecutionResponse EndStartImagePipelineExecution(IAsyncResult asyncResult);
        #endregion
        
        #region  TagResource
        /// 
        /// Adds a tag to a resource.
        /// 
        /// Container for the necessary parameters to execute the TagResource service method.
        /// 
        /// The response from the TagResource service method, as returned by Imagebuilder.
        /// 
        /// The specified parameter is invalid. Review the available parameters for the API request.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// REST API Reference for TagResource Operation
        TagResourceResponse TagResource(TagResourceRequest request);
        /// 
        /// Initiates the asynchronous execution of the TagResource operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the TagResource operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndTagResource
        ///         operation.
        /// REST API Reference for TagResource Operation
        IAsyncResult BeginTagResource(TagResourceRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  TagResource operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginTagResource.
        /// 
        /// Returns a  TagResourceResult from Imagebuilder.
        /// REST API Reference for TagResource Operation
        TagResourceResponse EndTagResource(IAsyncResult asyncResult);
        #endregion
        
        #region  UntagResource
        /// 
        /// Removes a tag from a resource.
        /// 
        /// Container for the necessary parameters to execute the UntagResource service method.
        /// 
        /// The response from the UntagResource service method, as returned by Imagebuilder.
        /// 
        /// The specified parameter is invalid. Review the available parameters for the API request.
        /// 
        /// 
        /// At least one of the resources referenced by your request does not exist.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// REST API Reference for UntagResource Operation
        UntagResourceResponse UntagResource(UntagResourceRequest request);
        /// 
        /// Initiates the asynchronous execution of the UntagResource operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the UntagResource operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUntagResource
        ///         operation.
        /// REST API Reference for UntagResource Operation
        IAsyncResult BeginUntagResource(UntagResourceRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  UntagResource operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginUntagResource.
        /// 
        /// Returns a  UntagResourceResult from Imagebuilder.
        /// REST API Reference for UntagResource Operation
        UntagResourceResponse EndUntagResource(IAsyncResult asyncResult);
        #endregion
        
        #region  UpdateDistributionConfiguration
        /// 
        /// Updates a new distribution configuration. Distribution configurations define and configure
        /// the outputs of your pipeline.
        /// 
        /// Container for the necessary parameters to execute the UpdateDistributionConfiguration service method.
        /// 
        /// The response from the UpdateDistributionConfiguration service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have specified two or more mutually exclusive parameters. Review the error message
        /// for details.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for UpdateDistributionConfiguration Operation
        UpdateDistributionConfigurationResponse UpdateDistributionConfiguration(UpdateDistributionConfigurationRequest request);
        /// 
        /// Initiates the asynchronous execution of the UpdateDistributionConfiguration operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the UpdateDistributionConfiguration operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateDistributionConfiguration
        ///         operation.
        /// REST API Reference for UpdateDistributionConfiguration Operation
        IAsyncResult BeginUpdateDistributionConfiguration(UpdateDistributionConfigurationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  UpdateDistributionConfiguration operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginUpdateDistributionConfiguration.
        /// 
        /// Returns a  UpdateDistributionConfigurationResult from Imagebuilder.
        /// REST API Reference for UpdateDistributionConfiguration Operation
        UpdateDistributionConfigurationResponse EndUpdateDistributionConfiguration(IAsyncResult asyncResult);
        #endregion
        
        #region  UpdateImagePipeline
        /// 
        /// Updates an image pipeline. Image pipelines enable you to automate the creation and
        /// distribution of images.
        /// 
        ///   
        /// 
        /// UpdateImagePipeline does not support selective updates for the pipeline. You must
        /// specify all of the required properties in the update request, not just the properties
        /// that have changed.
        /// 
        ///  
        /// 
        /// Container for the necessary parameters to execute the UpdateImagePipeline service method.
        /// 
        /// The response from the UpdateImagePipeline service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for UpdateImagePipeline Operation
        UpdateImagePipelineResponse UpdateImagePipeline(UpdateImagePipelineRequest request);
        /// 
        /// Initiates the asynchronous execution of the UpdateImagePipeline operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the UpdateImagePipeline operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateImagePipeline
        ///         operation.
        /// REST API Reference for UpdateImagePipeline Operation
        IAsyncResult BeginUpdateImagePipeline(UpdateImagePipelineRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  UpdateImagePipeline operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginUpdateImagePipeline.
        /// 
        /// Returns a  UpdateImagePipelineResult from Imagebuilder.
        /// REST API Reference for UpdateImagePipeline Operation
        UpdateImagePipelineResponse EndUpdateImagePipeline(IAsyncResult asyncResult);
        #endregion
        
        #region  UpdateInfrastructureConfiguration
        /// 
        /// Updates a new infrastructure configuration. An infrastructure configuration defines
        /// the environment in which your image will be built and tested.
        /// 
        /// Container for the necessary parameters to execute the UpdateInfrastructureConfiguration service method.
        /// 
        /// The response from the UpdateInfrastructureConfiguration service method, as returned by Imagebuilder.
        /// 
        /// You have exceeded the permitted request rate for the specific operation.
        /// 
        /// 
        /// These errors are usually caused by a client action, such as using an action or resource
        /// on behalf of a user that doesn't have permissions to use the action or resource, or
        /// specifying an invalid resource identifier.
        /// 
        /// 
        /// You are not authorized to perform the requested operation.
        /// 
        /// 
        /// You have specified a client token for an operation using parameter values that differ
        /// from a previous request that used the same client token.
        /// 
        /// 
        /// You have requested an action that that the service doesn't support.
        /// 
        /// 
        /// The resource that you are trying to operate on is currently in use. Review the message
        /// details and retry later.
        /// 
        /// 
        /// This exception is thrown when the service encounters an unrecoverable exception.
        /// 
        /// 
        /// The service is unable to process your request at this time.
        /// 
        /// REST API Reference for UpdateInfrastructureConfiguration Operation
        UpdateInfrastructureConfigurationResponse UpdateInfrastructureConfiguration(UpdateInfrastructureConfigurationRequest request);
        /// 
        /// Initiates the asynchronous execution of the UpdateInfrastructureConfiguration operation.
        /// 
        /// 
        /// Container for the necessary parameters to execute the UpdateInfrastructureConfiguration operation on AmazonImagebuilderClient.
        /// An AsyncCallback delegate that is invoked when the operation completes.
        /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
        ///          procedure using the AsyncState property.
        /// 
        /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateInfrastructureConfiguration
        ///         operation.
        /// REST API Reference for UpdateInfrastructureConfiguration Operation
        IAsyncResult BeginUpdateInfrastructureConfiguration(UpdateInfrastructureConfigurationRequest request, AsyncCallback callback, object state);
        /// 
        /// Finishes the asynchronous execution of the  UpdateInfrastructureConfiguration operation.
        /// 
        /// 
        /// The IAsyncResult returned by the call to BeginUpdateInfrastructureConfiguration.
        /// 
        /// Returns a  UpdateInfrastructureConfigurationResult from Imagebuilder.
        /// REST API Reference for UpdateInfrastructureConfiguration Operation
        UpdateInfrastructureConfigurationResponse EndUpdateInfrastructureConfiguration(IAsyncResult asyncResult);
        #endregion
        
    }
}