#ifndef CHROME_BROWSER_BADGING_BADGE_MANAGER_H_
#define CHROME_BROWSER_BADGING_BADGE_MANAGER_H_
#include <map>
#include <memory>
#include <optional>
#include <string>
#include <vector>
#include "base/memory/raw_ptr.h"
#include "base/time/time.h"
#include "components/keyed_service/core/keyed_service.h"
#include "components/webapps/common/web_app_id.h"
#include "content/public/browser/service_worker_version_base_info.h"
#include "mojo/public/cpp/bindings/receiver_set.h"
#include "third_party/blink/public/mojom/badging/badging.mojom.h"
#include "third_party/blink/public/mojom/service_worker/service_worker_ancestor_frame_type.mojom.h"
#include "url/gurl.h"
class Profile;
namespace base {
class Clock;
}
namespace content {
class RenderFrameHost;
class RenderProcessHost;
}
namespace ukm {
class UkmRecorder;
}
namespace badging {
class BadgeManagerDelegate;
enum UpdateBadgeType { … };
constexpr uint64_t kMaxBadgeContent = …;
constexpr base::TimeDelta kBadgingOverrideLifetime = …;
constexpr base::TimeDelta kBadgingMinimumUpdateInterval = …;
class BadgeManager : public KeyedService, public blink::mojom::BadgeService { … };
std::string GetBadgeString(BadgeManager::BadgeValue badge_content);
}
#endif