#ifndef CHROME_BROWSER_EXTENSIONS_API_WEB_AUTHENTICATION_PROXY_WEB_AUTHENTICATION_PROXY_SERVICE_H_
#define CHROME_BROWSER_EXTENSIONS_API_WEB_AUTHENTICATION_PROXY_WEB_AUTHENTICATION_PROXY_SERVICE_H_
#include <optional>
#include "base/memory/raw_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/no_destructor.h"
#include "base/scoped_observation.h"
#include "base/sequence_checker.h"
#include "base/types/pass_key.h"
#include "chrome/browser/profiles/profile_keyed_service_factory.h"
#include "chrome/browser/profiles/profile_observer.h"
#include "chrome/common/extensions/api/web_authentication_proxy.h"
#include "components/keyed_service/core/keyed_service.h"
#include "content/public/browser/web_authentication_request_proxy.h"
#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_registry_observer.h"
#include "extensions/common/extension.h"
#include "services/data_decoder/public/cpp/data_decoder.h"
namespace content {
class BrowserContext;
}
namespace extensions {
class EventRouter;
class ExtensionRegistry;
class WebAuthenticationProxyRegistrar : public KeyedService,
public ExtensionRegistryObserver,
public ProfileObserver { … };
class WebAuthenticationProxyRegistrarFactory
: public ProfileKeyedServiceFactory { … };
class WebAuthenticationProxyService
: public content::WebAuthenticationRequestProxy,
public KeyedService { … };
class WebAuthenticationProxyServiceFactory : public ProfileKeyedServiceFactory { … };
}
#endif