/*!

@mainpage Anthos Multi-Cloud API C++ Client Library

An idiomatic C++ client library for the
[Anthos Multi-Cloud API][cloud-service-docs]. This API provides a way to manage
Kubernetes clusters that run on AWS and Azure infrastructure. Combined with
Connect, you can manage Kubernetes clusters on Google Cloud, AWS, and Azure
from the Google Cloud Console.  When you create a cluster with Anthos
Multi-Cloud, Google creates the resources needed and brings up a cluster on
your behalf. You can deploy workloads with the Anthos Multi-Cloud API or the
gcloud and kubectl command-line tools.

While this library is **GA**, please note that the Google Cloud C++ client libraries do **not** follow
[Semantic Versioning](https://semver.org/).

@tableofcontents{HTML:2}

## Quickstart

The following shows the code that you'll run in the
`google/cloud/gkemulticloud/quickstart/` directory,
which should give you a taste of the Anthos Multi-Cloud API C++ client library API.

@snippet quickstart.cc all

## Main classes

<!-- inject-client-list-start -->
This library offers multiple `*Client` classes, which are listed below. Each one
of these classes exposes all the RPCs for a service as member functions of the
class. This library groups multiple services because they are part of the same
product or are often used together. A typical example may be the administrative
and data plane operations for a single product.

The library also has other classes that provide helpers, configuration
parameters, and infrastructure to mock the `*Client` classes when testing your
application.

- [\c gkemulticloud_v1::AttachedClustersClient](@ref google::cloud::gkemulticloud_v1::AttachedClustersClient)
- [\c gkemulticloud_v1::AwsClustersClient](@ref google::cloud::gkemulticloud_v1::AwsClustersClient)
- [\c gkemulticloud_v1::AzureClustersClient](@ref google::cloud::gkemulticloud_v1::AzureClustersClient)
<!-- inject-client-list-end -->

## More Information

- @ref common-error-handling - describes how the library reports errors.
- @ref gkemulticloud-override-endpoint - describes how to override the default
  endpoint.
- @ref gkemulticloud-override-authentication - describes how to change the
  authentication credentials used by the library.
- @ref gkemulticloud-override-retry - describes how to change the default retry
  policies.
- @ref gkemulticloud-env - describes environment variables that can configure the behavior of the library.
- @ref gkemulticloud-override-universe-domain - describes how to override the default universe domain.

[cloud-service-docs]: https://cloud.google.com/anthos/clusters/docs/multi-cloud

*/
