chromium/components/webapps/browser/web_contents/web_app_url_loader.h

// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef COMPONENTS_WEBAPPS_BROWSER_WEB_CONTENTS_WEB_APP_URL_LOADER_H_
#define COMPONENTS_WEBAPPS_BROWSER_WEB_CONTENTS_WEB_APP_URL_LOADER_H_

#include "base/functional/callback_forward.h"
#include "base/memory/weak_ptr.h"
#include "base/time/time.h"
#include "content/public/browser/navigation_controller.h"

class GURL;

namespace content {
class WebContents;
}  // namespace content

namespace webapps {

// Result enum values are persisted to logs. Entries should not be renumbered
// and numeric values should never be reused. Update corresponding enums.xml
// entry when making changes here.
enum class WebAppUrlLoaderResult {};

// Callback-based wrapper around NavigationController::LoadUrl.
class WebAppUrlLoader {};

const char* ConvertUrlLoaderResultToString(WebAppUrlLoader::Result result);

}  // namespace web_app

#endif  // COMPONENTS_WEBAPPS_BROWSER_WEB_CONTENTS_WEB_APP_URL_LOADER_H_