// Copyright 2023 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_METRICS_STRUCTURED_LIB_KEY_DATA_PROVIDER_H_ #define COMPONENTS_METRICS_STRUCTURED_LIB_KEY_DATA_PROVIDER_H_ #include <optional> #include <string> #include "base/functional/callback_forward.h" #include "base/observer_list.h" #include "base/observer_list_types.h" #include "components/metrics/structured/lib/key_data.h" namespace metrics::structured { class ChromeStructuredMetricsRecorder; // Interface to provide key data to be used for hashing projects. // // There are two types of keys: device keys and profile keys. Device keys will // be ready only InitializeDeviceKey has been called while profile keys should // be ready once InitializeProfileKey has been called. class KeyDataProvider { … }; } // namespace metrics::structured #endif // COMPONENTS_METRICS_STRUCTURED_LIB_KEY_DATA_PROVIDER_H_