chromium/out/Default/gen/chrome/common/extensions/api/content_settings.h

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

// GENERATED FROM THE API DEFINITION IN
//   chrome/common/extensions/api/content_settings.json
// by tools/json_schema_compiler.
// DO NOT EDIT.

#ifndef CHROME_COMMON_EXTENSIONS_API_CONTENT_SETTINGS_H__
#define CHROME_COMMON_EXTENSIONS_API_CONTENT_SETTINGS_H__

#include <stdint.h>

#include <map>
#include <memory>
#include <optional>
#include <string>
#include <vector>

#include "base/values.h"
#include <string_view>


namespace extensions {
namespace api {
namespace content_settings {

//
// Properties
//

//
// Types
//

// The only content type using resource identifiers is
// $(ref:contentSettings.plugins). For more information, see <a
// href="contentSettings#resource-identifiers">Resource Identifiers</a>.
struct ResourceIdentifier {};

// The scope of the ContentSetting. One of<br><var>regular</var>: setting for
// regular profile (which is inherited by the incognito profile if not
// overridden elsewhere),<br><var>incognito_session_only</var>: setting for
// incognito profile that can only be set during an incognito session and is
// deleted when the incognito session ends (overrides regular settings).
enum class Scope {};


const char* ToString(Scope as_enum);
Scope ParseScope(std::string_view as_string);
std::u16string GetScopeParseError(std::string_view as_string);

namespace ContentSetting {

namespace Clear {

struct Params {};

namespace Results {

base::Value::List Create();
}  // namespace Results

}  // namespace Clear

namespace Get {

struct Params {};

namespace Results {

struct Details {};


base::Value::List Create(const Details& details);
}  // namespace Results

}  // namespace Get

namespace Set {

struct Params {};

namespace Results {

base::Value::List Create();
}  // namespace Results

}  // namespace Set

namespace GetResourceIdentifiers {

namespace Results {

// A list of resource identifiers for this content type, or <var>undefined</var>
// if this content type does not use resource identifiers.
base::Value::List Create(const std::vector<ResourceIdentifier>& resource_identifiers);
}  // namespace Results

}  // namespace GetResourceIdentifiers

}  // namespace ContentSetting

enum class AutoVerifyContentSetting {};


const char* ToString(AutoVerifyContentSetting as_enum);
AutoVerifyContentSetting ParseAutoVerifyContentSetting(std::string_view as_string);
std::u16string GetAutoVerifyContentSettingParseError(std::string_view as_string);

enum class ClipboardContentSetting {};


const char* ToString(ClipboardContentSetting as_enum);
ClipboardContentSetting ParseClipboardContentSetting(std::string_view as_string);
std::u16string GetClipboardContentSettingParseError(std::string_view as_string);

enum class CookiesContentSetting {};


const char* ToString(CookiesContentSetting as_enum);
CookiesContentSetting ParseCookiesContentSetting(std::string_view as_string);
std::u16string GetCookiesContentSettingParseError(std::string_view as_string);

enum class ImagesContentSetting {};


const char* ToString(ImagesContentSetting as_enum);
ImagesContentSetting ParseImagesContentSetting(std::string_view as_string);
std::u16string GetImagesContentSettingParseError(std::string_view as_string);

enum class JavascriptContentSetting {};


const char* ToString(JavascriptContentSetting as_enum);
JavascriptContentSetting ParseJavascriptContentSetting(std::string_view as_string);
std::u16string GetJavascriptContentSettingParseError(std::string_view as_string);

enum class LocationContentSetting {};


const char* ToString(LocationContentSetting as_enum);
LocationContentSetting ParseLocationContentSetting(std::string_view as_string);
std::u16string GetLocationContentSettingParseError(std::string_view as_string);

enum class PluginsContentSetting {};


const char* ToString(PluginsContentSetting as_enum);
PluginsContentSetting ParsePluginsContentSetting(std::string_view as_string);
std::u16string GetPluginsContentSettingParseError(std::string_view as_string);

enum class PopupsContentSetting {};


const char* ToString(PopupsContentSetting as_enum);
PopupsContentSetting ParsePopupsContentSetting(std::string_view as_string);
std::u16string GetPopupsContentSettingParseError(std::string_view as_string);

enum class NotificationsContentSetting {};


const char* ToString(NotificationsContentSetting as_enum);
NotificationsContentSetting ParseNotificationsContentSetting(std::string_view as_string);
std::u16string GetNotificationsContentSettingParseError(std::string_view as_string);

enum class FullscreenContentSetting {};


const char* ToString(FullscreenContentSetting as_enum);
FullscreenContentSetting ParseFullscreenContentSetting(std::string_view as_string);
std::u16string GetFullscreenContentSettingParseError(std::string_view as_string);

enum class MouselockContentSetting {};


const char* ToString(MouselockContentSetting as_enum);
MouselockContentSetting ParseMouselockContentSetting(std::string_view as_string);
std::u16string GetMouselockContentSettingParseError(std::string_view as_string);

enum class MicrophoneContentSetting {};


const char* ToString(MicrophoneContentSetting as_enum);
MicrophoneContentSetting ParseMicrophoneContentSetting(std::string_view as_string);
std::u16string GetMicrophoneContentSettingParseError(std::string_view as_string);

enum class CameraContentSetting {};


const char* ToString(CameraContentSetting as_enum);
CameraContentSetting ParseCameraContentSetting(std::string_view as_string);
std::u16string GetCameraContentSettingParseError(std::string_view as_string);

enum class PpapiBrokerContentSetting {};


const char* ToString(PpapiBrokerContentSetting as_enum);
PpapiBrokerContentSetting ParsePpapiBrokerContentSetting(std::string_view as_string);
std::u16string GetPpapiBrokerContentSettingParseError(std::string_view as_string);

enum class MultipleAutomaticDownloadsContentSetting {};


const char* ToString(MultipleAutomaticDownloadsContentSetting as_enum);
MultipleAutomaticDownloadsContentSetting ParseMultipleAutomaticDownloadsContentSetting(std::string_view as_string);
std::u16string GetMultipleAutomaticDownloadsContentSettingParseError(std::string_view as_string);


}  // namespace content_settings
}  // namespace api
}  // namespace extensions

#endif  // CHROME_COMMON_EXTENSIONS_API_CONTENT_SETTINGS_H__