#ifndef DEVICE_FIDO_CREDENTIAL_MANAGEMENT_H_
#define DEVICE_FIDO_CREDENTIAL_MANAGEMENT_H_
#include <optional>
#include "base/component_export.h"
#include "device/fido/fido_constants.h"
#include "device/fido/pin.h"
#include "device/fido/public_key_credential_descriptor.h"
#include "device/fido/public_key_credential_rp_entity.h"
#include "device/fido/public_key_credential_user_entity.h"
namespace cbor {
class Value;
}
namespace device {
namespace pin {
struct EmptyResponse;
}
enum class CredentialManagementRequestKey : uint8_t { … };
enum class CredentialManagementRequestParamKey : uint8_t { … };
enum class CredentialManagementResponseKey : uint8_t { … };
enum class CredentialManagementSubCommand : uint8_t { … };
template <class T>
class CredentialManagementPreviewRequestAdapter { … };
struct CredentialManagementRequest { … };
struct CredentialsMetadataResponse { … };
struct EnumerateRPsResponse { … };
struct EnumerateCredentialsResponse { … };
struct COMPONENT_EXPORT(DEVICE_FIDO) AggregatedEnumerateCredentialsResponse { … };
DeleteCredentialResponse;
UpdateUserInformationResponse;
std::pair<CtapRequestCommand, std::optional<cbor::Value>>
AsCTAPRequestValuePair(const CredentialManagementRequest&);
}
#endif