#ifndef HEADLESS_LIB_BROWSER_HEADLESS_BROWSER_IMPL_H_
#define HEADLESS_LIB_BROWSER_HEADLESS_BROWSER_IMPL_H_
#include <memory>
#include <string>
#include <vector>
#include "base/memory/raw_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/run_loop.h"
#include "base/task/single_thread_task_runner.h"
#include "build/build_config.h"
#include "content/public/browser/devtools_agent_host.h"
#include "headless/public/headless_browser.h"
#include "headless/public/headless_export.h"
#if defined(HEADLESS_USE_POLICY)
#include "headless/lib/browser/policy/headless_browser_policy_connector.h"
namespace policy {
class PolicyService;
}
#endif
#if defined(HEADLESS_USE_PREFS)
class PrefService;
#endif
#if BUILDFLAG(IS_MAC)
namespace device {
class GeolocationSystemPermissionManager;
}
#endif
namespace ui {
class Compositor;
}
namespace gfx {
class Rect;
}
namespace headless {
class HeadlessBrowserContextImpl;
class HeadlessRequestContextManager;
class HeadlessWebContentsImpl;
extern const base::FilePath::CharType kDefaultProfileName[];
class HEADLESS_EXPORT HeadlessBrowserImpl : public HeadlessBrowser { … };
}
#endif