#ifndef CHROME_BROWSER_UI_STARTUP_WEB_APP_STARTUP_UTILS_H_
#define CHROME_BROWSER_UI_STARTUP_WEB_APP_STARTUP_UTILS_H_
#include <optional>
#include "base/functional/callback_internal.h"
#include "chrome/browser/ui/startup/startup_types.h"
#include "components/services/app_service/public/cpp/app_launch_util.h"
class Browser;
class Profile;
namespace base {
class CommandLine;
class FilePath;
}
namespace web_app {
namespace startup {
enum class OpenMode { … };
bool MaybeHandleWebAppLaunch(const base::CommandLine& command_line,
const base::FilePath& cur_dir,
Profile* profile,
chrome::startup::IsFirstRun is_first_run);
void FinalizeWebAppLaunch(std::optional<OpenMode> app_open_mode,
const base::CommandLine& command_line,
chrome::startup::IsFirstRun is_first_run,
Browser* browser,
apps::LaunchContainer container);
void SetStartupDoneCallbackForTesting(base::OnceClosure callback);
void SetBrowserShutdownCompleteCallbackForTesting(base::OnceClosure callback);
}
}
#endif