#ifndef THIRD_PARTY_MILOTIC_INTERNAL_CC_PROXY_TLS_AUTH_H_
#define THIRD_PARTY_MILOTIC_INTERNAL_CC_PROXY_TLS_AUTH_H_

#include <memory>

#include "absl/status/statusor.h"
#include "grpcpp/security/authorization_policy_provider.h"
#include "grpcpp/security/server_credentials.h"
#include "proxy_config.pb.h"

namespace auth {

using ::grpc::experimental::AuthorizationPolicyProviderInterface;

absl::StatusOr<std::shared_ptr<grpc::ServerCredentials>> GetCredsInfo(
    const milotic_grpc_proxy::MtlsServerCredentialsConfiguration& config);

absl::StatusOr<std::shared_ptr<AuthorizationPolicyProviderInterface>>
GetAuthPolicy(
    const milotic_grpc_proxy::MtlsServerCredentialsConfiguration& config);

}  // namespace auth

#endif  // THIRD_PARTY_MILOTIC_INTERNAL_CC_PROXY_TLS_AUTH_H_
