/*
 * 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 bearer-token-auth-test-2022-03-21.normal.json service model.
 */
using System;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.BearerTokenAuthTest.Model;
namespace Amazon.BearerTokenAuthTest
{
    /// 
    /// Interface for accessing BearerTokenAuthTest
    ///
    /// 
    /// 
    public partial interface IAmazonBearerTokenAuthTest : IAmazonService, IDisposable
    {
        
        #region  InheritBearerAuthOperation
        /// 
        /// Request that inherits the bearer signature version set at the Service
        /// 
        /// Container for the necessary parameters to execute the InheritBearerAuthOperation service method.
        /// 
        /// The response from the InheritBearerAuthOperation service method, as returned by BearerTokenAuthTest.
        /// REST API Reference for InheritBearerAuthOperation Operation
        InheritBearerAuthOperationResponse InheritBearerAuthOperation(InheritBearerAuthOperationRequest request);
        /// 
        /// Request that inherits the bearer signature version set at the Service
        /// 
        /// Container for the necessary parameters to execute the InheritBearerAuthOperation service method.
        /// 
        ///     A cancellation token that can be used by other objects or threads to receive notice of cancellation.
        /// 
        /// 
        /// The response from the InheritBearerAuthOperation service method, as returned by BearerTokenAuthTest.
        /// REST API Reference for InheritBearerAuthOperation Operation
        Task InheritBearerAuthOperationAsync(InheritBearerAuthOperationRequest request, CancellationToken cancellationToken = default(CancellationToken));
        #endregion
        
        #region  OverrideAuthToSigV4Operation
        /// 
        /// An operation that overrides auth to Sigv4.
        /// 
        /// Container for the necessary parameters to execute the OverrideAuthToSigV4Operation service method.
        /// 
        /// The response from the OverrideAuthToSigV4Operation service method, as returned by BearerTokenAuthTest.
        /// REST API Reference for OverrideAuthToSigV4Operation Operation
        OverrideAuthToSigV4OperationResponse OverrideAuthToSigV4Operation(OverrideAuthToSigV4OperationRequest request);
        /// 
        /// An operation that overrides auth to Sigv4.
        /// 
        /// Container for the necessary parameters to execute the OverrideAuthToSigV4Operation service method.
        /// 
        ///     A cancellation token that can be used by other objects or threads to receive notice of cancellation.
        /// 
        /// 
        /// The response from the OverrideAuthToSigV4Operation service method, as returned by BearerTokenAuthTest.
        /// REST API Reference for OverrideAuthToSigV4Operation Operation
        Task OverrideAuthToSigV4OperationAsync(OverrideAuthToSigV4OperationRequest request, CancellationToken cancellationToken = default(CancellationToken));
        #endregion
        
    }
}