/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace smithy { /** * A base interface for code-generated interfaces for passing in the data required for determining the * authentication scheme. By default, this only includes the operation name. */ class DefaultAuthSchemeResolverParameters { public: Aws::String serviceName; Aws::String operation; Aws::Crt::Optional region; Aws::UnorderedMap > additionalProperties; }; template class AuthSchemeResolverBase { public: using ServiceAuthSchemeParameters = ServiceAuthSchemeParametersT; virtual ~AuthSchemeResolverBase() = default; // AuthScheme Resolver returns a list of AuthSchemeOptions for some reason, according to the SRA... virtual Aws::Vector resolveAuthScheme(const ServiceAuthSchemeParameters& identityProperties) = 0; }; }