#ifndef COMPONENTS_FEATURE_ENGAGEMENT_PUBLIC_CONFIGURATION_H_
#define COMPONENTS_FEATURE_ENGAGEMENT_PUBLIC_CONFIGURATION_H_
#include <map>
#include <optional>
#include <ostream>
#include <set>
#include <string>
#include <unordered_set>
#include <vector>
#include "base/feature_list.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
namespace feature_engagement {
#if BUILDFLAG(IS_CHROMEOS_ASH)
class ConfigurationProvider;
#endif
constexpr uint32_t kMaxStoragePeriod = …;
enum ComparatorType { … };
struct Comparator { … };
bool operator==(const Comparator& lhs, const Comparator& rhs);
bool operator<(const Comparator& lhs, const Comparator& rhs);
std::ostream& operator<<(std::ostream& os, const Comparator& comparator);
struct EventConfig { … };
bool operator==(const EventConfig& lhs, const EventConfig& rhs);
bool operator!=(const EventConfig& lhs, const EventConfig& rhs);
bool operator<(const EventConfig& lhs, const EventConfig& rhs);
std::ostream& operator<<(std::ostream& os, const EventConfig& event_config);
struct SessionRateImpact { … };
bool operator==(const SessionRateImpact& lhs, const SessionRateImpact& rhs);
std::ostream& operator<<(std::ostream& os, const SessionRateImpact& impact);
struct BlockedBy { … };
bool operator==(const BlockedBy& lhs, const BlockedBy& rhs);
std::ostream& operator<<(std::ostream& os, const BlockedBy& impact);
struct Blocking { … };
bool operator==(const Blocking& lhs, const Blocking& rhs);
std::ostream& operator<<(std::ostream& os, const Blocking& impact);
struct SnoozeParams { … };
bool operator==(const SnoozeParams& lhs, const SnoozeParams& rhs);
std::ostream& operator<<(std::ostream& os, const SnoozeParams& impact);
struct FeatureConfig { … };
bool operator==(const FeatureConfig& lhs, const FeatureConfig& rhs);
std::ostream& operator<<(std::ostream& os, const FeatureConfig& feature_config);
struct GroupConfig { … };
bool operator==(const GroupConfig& lhs, const GroupConfig& rhs);
std::ostream& operator<<(std::ostream& os, const GroupConfig& feature_config);
class Configuration { … };
}
#endif