chromium/chrome/common/webui_url_constants.h

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

// Contains constants for WebUI UI/Host/SubPage constants. Anything else go in
// chrome/common/url_constants.h.

#ifndef CHROME_COMMON_WEBUI_URL_CONSTANTS_H_
#define CHROME_COMMON_WEBUI_URL_CONSTANTS_H_

#include <stddef.h>

#include <string_view>

#include "base/containers/flat_set.h"
#include "base/containers/span.h"
#include "base/strings/cstring_view.h"
#include "build/branding_buildflags.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "chrome/common/buildflags.h"
#include "components/lens/buildflags.h"
#include "content/public/common/url_constants.h"
#include "media/media_buildflags.h"
#include "printing/buildflags/buildflags.h"

namespace chrome {

// chrome: components (without schemes) and URLs (including schemes).
// e.g. kChromeUIFooHost = "foo" and kChromeUIFooURL = "chrome://foo/"
// Not all components have corresponding URLs and vice versa. Only add as
// needed.
// Please keep in alphabetical order, with OS/feature specific sections below.
inline constexpr char kChromeUIAboutHost[] =;
inline constexpr char kChromeUIAboutURL[] =;
inline constexpr char kChromeUIAccessCodeCastHost[] =;
inline constexpr char kChromeUIAccessCodeCastURL[] =;
inline constexpr char kChromeUIAccessibilityHost[] =;
inline constexpr char kChromeUIActivateSafetyCheckSettingsURL[] =;
inline constexpr char kChromeUIAllSitesPath[] =;
inline constexpr char kChromeUIAppIconHost[] =;
inline constexpr char kChromeUIAppIconURL[] =;
inline constexpr char kChromeUIAppLauncherPageHost[] =;
inline constexpr char kChromeUIAppsURL[] =;
inline constexpr char kChromeUIAppsWithDeprecationDialogURL[] =;
inline constexpr char kChromeUIAppsWithForceInstalledDeprecationDialogURL[] =;
inline constexpr char kChromeUIAutofillInternalsHost[] =;
inline constexpr char kChromeUIBluetoothInternalsHost[] =;
inline constexpr char kChromeUIBluetoothInternalsURL[] =;
inline constexpr char kChromeUIBookmarksHost[] =;
inline constexpr char kChromeUIBookmarksURL[] =;
inline constexpr char kChromeUIBrowsingTopicsInternalsHost[] =;
inline constexpr char kChromeUICertificateViewerHost[] =;
inline constexpr char kChromeUICertificateViewerURL[] =;
inline constexpr char kChromeUIChromeSigninHost[] =;
inline constexpr char kChromeUIChromeSigninURL[] =;
inline constexpr char kChromeUIChromeURLsHost[] =;
inline constexpr char kChromeUIChromeURLsURL[] =;
inline constexpr char16_t kChromeUIChromeURLsURL16[] =;
inline constexpr char kChromeUIComponentsHost[] =;
inline constexpr char kChromeUIComponentsUrl[] =;
inline constexpr char kChromeUIConflictsHost[] =;
inline constexpr char kChromeUIConstrainedHTMLTestURL[] =;
inline constexpr char kChromeUIContentSettingsURL[] =;
inline constexpr char16_t kChromeUIContentSettingsURL16[] =;
inline constexpr char16_t kChromeUICookieSettingsURL[] =;
inline constexpr char kChromeUICrashesHost[] =;
inline constexpr char kChromeUICrashesUrl[] =;
inline constexpr char kChromeUICrashHost[] =;
inline constexpr char kChromeUICreditsHost[] =;
inline constexpr char kChromeUICreditsURL[] =;
inline constexpr char16_t kChromeUICreditsURL16[] =;
inline constexpr char kChromeUIDataSharingInternalsHost[] =;
inline constexpr char kChromeUIDefaultHost[] =;
inline constexpr char kChromeUIDelayedHangUIHost[] =;
inline constexpr char kChromeUIDeviceLogHost[] =;
inline constexpr char kChromeUIDeviceLogUrl[] =;
inline constexpr char16_t kChromeUIDeviceLogUrl16[] =;
inline constexpr char kChromeUIDevToolsBlankPath[] =;
inline constexpr char kChromeUIDevToolsBundledPath[] =;
inline constexpr char kChromeUIDevToolsCustomPath[] =;
inline constexpr char kChromeUIDevToolsHost[] =;
inline constexpr char kChromeUIDevToolsRemotePath[] =;
inline constexpr char kChromeUIDevToolsURL[] =;
inline constexpr char kChromeUIDevUiLoaderURL[] =;
inline constexpr char kChromeUIDiceWebSigninInterceptChromeSigninSubPage[] =;
inline constexpr char kChromeUIDiceWebSigninInterceptChromeSigninURL[] =;
inline constexpr char kChromeUIDiceWebSigninInterceptHost[] =;
inline constexpr char kChromeUIDiceWebSigninInterceptURL[] =;
inline constexpr char kChromeUIDownloadInternalsHost[] =;
inline constexpr char kChromeUIDownloadsHost[] =;
inline constexpr char kChromeUIDownloadsURL[] =;
inline constexpr char kChromeUIDriveInternalsHost[] =;
inline constexpr char kChromeUIDriveInternalsUrl[] =;
inline constexpr char kChromeUIEDUCoexistenceLoginURLV2[] =;
inline constexpr char kChromeUIExtensionIconHost[] =;
inline constexpr char kChromeUIExtensionIconURL[] =;
inline constexpr char kChromeUIExtensionsHost[] =;
inline constexpr char kChromeUIExtensionsInternalsHost[] =;
inline constexpr char kChromeUIExtensionsInternalsURL[] =;
inline constexpr char kChromeUIExtensionsURL[] =;
inline constexpr char kChromeUIFamilyLinkUserInternalsHost[] =;
inline constexpr char kChromeUIFavicon2Host[] =;
inline constexpr char kChromeUIFaviconHost[] =;
inline constexpr char kChromeUIFaviconURL[] =;
inline constexpr char kChromeUIFeedbackHost[] =;
inline constexpr char kChromeUIFeedbackURL[] =;
inline constexpr char kChromeUIFileiconURL[] =;
inline constexpr char kChromeUIFlagsHost[] =;
inline constexpr char kChromeUIFlagsURL[] =;
inline constexpr char16_t kChromeUIFlagsURL16[] =;
inline constexpr char kChromeUIGCMInternalsHost[] =;
inline constexpr char kChromeUIHangUIHost[] =;
inline constexpr char kChromeUIHelpHost[] =;
inline constexpr char kChromeUIHelpURL[] =;
inline constexpr char kChromeUIHistoryHost[] =;
inline constexpr char kChromeUIHistorySyncedTabs[] =;
inline constexpr char kChromeUIHistoryURL[] =;
inline constexpr char16_t kChromeUIHistoryURL16[] =;
inline constexpr char kChromeUIHumanPresenceInternalsHost[] =;
inline constexpr char kChromeUIHumanPresenceInternalsURL[] =;
inline constexpr char kChromeUIIdentityInternalsHost[] =;
inline constexpr char kChromeUIImageHost[] =;
inline constexpr char kChromeUIImageURL[] =;
inline constexpr char kChromeUIInspectHost[] =;
inline constexpr char kChromeUIInspectURL[] =;
inline constexpr char kChromeUIInternalsHost[] =;
inline constexpr char kChromeUIInterstitialHost[] =;
inline constexpr char kChromeUIInterstitialURL[] =;
inline constexpr char kChromeUIKillHost[] =;
inline constexpr char kChromeUILauncherInternalsHost[] =;
inline constexpr char kChromeUILauncherInternalsURL[] =;
inline constexpr char kChromeUILensSearchBubbleHost[] =;
inline constexpr char kChromeUILensSearchBubbleURL[] =;
inline constexpr char kChromeUILocalStateHost[] =;
inline constexpr char kChromeUILocationInternalsHost[] =;
inline constexpr char kChromeUIManagementHost[] =;
inline constexpr char kChromeUIManagementURL[] =;
inline constexpr char16_t kChromeUIManagementURL16[] =;
inline constexpr char kChromeUIMediaEngagementHost[] =;
inline constexpr char kChromeUIMediaRouterInternalsHost[] =;
inline constexpr char kChromeUIMemoryInternalsHost[] =;
inline constexpr char kChromeUIMetricsInternalsHost[] =;
inline constexpr char kChromeUINaClHost[] =;
inline constexpr char kChromeUINetExportHost[] =;
inline constexpr char kChromeUINetExportURL[] =;
inline constexpr char kChromeUINetInternalsHost[] =;
inline constexpr char kChromeUINetInternalsURL[] =;
inline constexpr char kChromeUINewTabHost[] =;
inline constexpr char kChromeUINewTabPageHost[] =;
inline constexpr char kChromeUINewTabPageThirdPartyHost[] =;
inline constexpr char kChromeUINewTabPageThirdPartyURL[] =;
inline constexpr char kChromeUINewTabPageURL[] =;
inline constexpr char kChromeUINewTabURL[] =;
inline constexpr char kChromeUINTPTilesInternalsHost[] =;
inline constexpr char kChromeUIOmniboxHost[] =;
inline constexpr char kChromeUIOmniboxPopupHost[] =;
inline constexpr char kChromeUIOmniboxPopupURL[] =;
inline constexpr char kChromeUIOmniboxURL[] =;
inline constexpr char kChromeUIPasswordManagerCheckupURL[] =;
inline constexpr char kChromeUIPasswordManagerInternalsHost[] =;
inline constexpr char kChromeUIPasswordManagerSettingsURL[] =;
inline constexpr char kChromeUIPasswordManagerURL[] =;
inline constexpr char kChromeUIPolicyHost[] =;
inline constexpr char kChromeUIPolicyTestURL[] =;
inline constexpr char kChromeUIPolicyURL[] =;
inline constexpr char kChromeUIPredictorsHost[] =;
inline constexpr char kChromeUIPrefsInternalsHost[] =;
inline constexpr char kChromeUIPrefsInternalsURL[] =;
inline constexpr char kChromeUIPrintURL[] =;
inline constexpr char kChromeUIPrivacySandboxDialogCombinedPath[] =;
inline constexpr char kChromeUIPrivacySandboxDialogHost[] =;
inline constexpr char kChromeUIPrivacySandboxDialogNoticePath[] =;
inline constexpr char kChromeUIPrivacySandboxDialogNoticeRestrictedPath[] =;
inline constexpr char kChromeUIPrivacySandboxDialogURL[] =;
inline constexpr char16_t kChromeUIPrivacySandboxFledgeURL[] =;
inline constexpr char kChromeUIPrivacySandboxInternalsHost[] =;
inline constexpr char kChromeUIPrivacySandboxInternalsURL[] =;
inline constexpr char16_t kChromeUIPrivacySandboxManageTopicsLearnMoreURL[] =;
inline constexpr char16_t kChromeUIPrivacySandboxTopicsURL[] =;
inline constexpr char kChromeUIProfileInternalsHost[] =;
inline constexpr char kChromeUIQuitHost[] =;
inline constexpr char kChromeUIQuitURL[] =;
inline constexpr char kChromeUIResetPasswordHost[] =;
inline constexpr char kChromeUIResetPasswordURL[] =;
inline constexpr char kChromeUIRestartHost[] =;
inline constexpr char kChromeUIRestartURL[] =;
inline constexpr char kChromeUISafetyPixelbookURL[] =;
inline constexpr char kChromeUISafetyPixelSlateURL[] =;
inline constexpr char kChromeUISegmentationInternalsHost[] =;
inline constexpr char kChromeUISensorInfoHost[] =;
inline constexpr char kChromeUISensorInfoURL[] =;
inline constexpr char kChromeUISettingsHost[] =;
inline constexpr char16_t kChromeUISettingsHost16[] =;
inline constexpr char kChromeUISettingsURL[] =;
inline constexpr char16_t kChromeUISettingsURL16[] =;
inline constexpr char kChromeUISigninEmailConfirmationHost[] =;
inline constexpr char kChromeUISigninEmailConfirmationURL[] =;
inline constexpr char kChromeUISigninErrorHost[] =;
inline constexpr char kChromeUISigninErrorURL[] =;
inline constexpr char kChromeUISignInInternalsHost[] =;
inline constexpr char kChromeUISignInInternalsUrl[] =;
inline constexpr char kChromeUISigninReauthHost[] =;
inline constexpr char kChromeUISigninReauthURL[] =;
inline constexpr char kChromeUISiteDataDeprecatedPath[] =;
inline constexpr char kChromeUISiteEngagementHost[] =;
inline constexpr char kChromeUISuggestInternalsHost[] =;
inline constexpr char kChromeUISuggestInternalsURL[] =;
inline constexpr char kChromeUISupervisedUserPassphrasePageHost[] =;
inline constexpr char kChromeUISupportToolHost[] =;
inline constexpr char kChromeUISupportToolURL[] =;
inline constexpr char kChromeUISyncConfirmationHost[] =;
inline constexpr char kChromeUISyncConfirmationLoadingPath[] =;
inline constexpr char kChromeUISyncConfirmationURL[] =;
inline constexpr char kChromeUISyncFileSystemInternalsHost[] =;
inline constexpr char kChromeUISyncHost[] =;
inline constexpr char kChromeUISyncInternalsHost[] =;
inline constexpr char kChromeUISyncInternalsUrl[] =;
inline constexpr char kChromeUISystemInfoHost[] =;
inline constexpr char kChromeUITermsHost[] =;
inline constexpr char kChromeUITermsURL[] =;
inline constexpr char kChromeUIThemeHost[] =;
inline constexpr char kChromeUIThemeURL[] =;
inline constexpr char kChromeUITopChromeDomain[] =;
inline constexpr char kChromeUITranslateInternalsHost[] =;
inline constexpr char kChromeUIUntrustedComposeHost[] =;
inline constexpr char kChromeUIUntrustedComposeUrl[] =;
inline constexpr char kChromeUIUntrustedDataSharingHost[] =;
inline constexpr char kChromeUIUntrustedDataSharingURL[] =;
inline constexpr char kChromeUIUntrustedDataSharingAPIURL[] =;
inline constexpr char kChromeUIUntrustedImageEditorURL[] =;
inline constexpr char kChromeUIUntrustedPrintURL[] =;
inline constexpr char kChromeUIUntrustedPrivacySandboxDialogURL[] =;
inline constexpr char
    kChromeUIUntrustedPrivacySandboxDialogPrivacyPolicyPath[] =;
inline constexpr char kChromeUIUntrustedThemeURL[] =;
inline constexpr char kChromeUIUsbInternalsHost[] =;
inline constexpr char kChromeUIUserActionsHost[] =;
inline constexpr char kChromeUIVersionHost[] =;
inline constexpr char kChromeUIVersionURL[] =;
inline constexpr char16_t kChromeUIVersionURL16[] =;
inline constexpr char kChromeUIWebRtcLogsHost[] =;
inline constexpr char kChromeUIWebuiGalleryHost[] =;
inline constexpr char kChromeUIWelcomeHost[] =;
inline constexpr char kChromeUIWelcomeURL[] =;

#if BUILDFLAG(IS_ANDROID)
inline constexpr char kChromeUIInternalsQueryTilesPath[] = "query-tiles";
inline constexpr char kChromeUIJavaCrashURL[] = "chrome://java-crash/";
inline constexpr char kChromeUINativeBookmarksURL[] =
    "chrome-native://bookmarks/";
inline constexpr char kChromeUINativeExploreURL[] = "chrome-native://explore";
inline constexpr char kChromeUINativeNewTabURL[] = "chrome-native://newtab/";
inline constexpr char kChromeUIOfflineInternalsHost[] = "offline-internals";
inline constexpr char kChromeUISnippetsInternalsHost[] = "snippets-internals";
inline constexpr char kChromeUIWebApksHost[] = "webapks";
#else
inline constexpr char kAdPrivacySubPagePath[] =;
inline constexpr char kChromeUIAppServiceInternalsHost[] =;
inline constexpr char kChromeUIAppServiceInternalsURL[] =;
inline constexpr char kChromeUIBookmarksSidePanelHost[] =;
inline constexpr char kChromeUIBookmarksSidePanelURL[] =;
inline constexpr char kChromeUICustomizeChromeSidePanelHost[] =;
inline constexpr char kChromeUICustomizeChromeSidePanelURL[] =;
inline constexpr char kChromeUIHistoryClustersSidePanelHost[] =;
inline constexpr char kChromeUIHistoryClustersSidePanelURL[] =;
inline constexpr char kChromeUILensHost[] =;
inline constexpr char kChromeUILensUntrustedSidePanelURL[] =;
inline constexpr char kChromeUILensUntrustedURL[] =;
inline constexpr char kChromeUINearbyInternalsHost[] =;
inline constexpr char kChromeUINearbyInternalsURL[] =;
inline constexpr char kChromeUINearbyShareHost[] =;
inline constexpr char kChromeUINearbyShareURL[] =;
inline constexpr char kChromeUIOnDeviceInternalsHost[] =;
inline constexpr char kChromeUIReadLaterHost[] =;
inline constexpr char kChromeUIReadLaterURL[] =;
inline constexpr char kChromeUISearchEngineChoiceHost[] =;
inline constexpr char kChromeUISearchEngineChoiceURL[] =;
inline constexpr char kChromeUITabSearchHost[] =;
inline constexpr char kChromeUITabSearchURL[] =;
inline constexpr char kChromeUIUntrustedCompanionSidePanelHost[] =;
inline constexpr char kChromeUIUntrustedCompanionSidePanelURL[] =;
inline constexpr char kChromeUIUntrustedFeedURL[] =;
inline constexpr char kChromeUIUntrustedHatsHost[] =;
inline constexpr char kChromeUIUntrustedHatsURL[] =;
inline constexpr char kChromeUIUntrustedReadAnythingSidePanelHost[] =;
inline constexpr char kChromeUIUntrustedReadAnythingSidePanelURL[] =;
inline constexpr char kChromeUIUntrustedWebUITestURL[] =;
inline constexpr char kChromeUIWebAppInternalsHost[] =;
inline constexpr char kChromeUIWebAppInternalsURL[] =;
inline constexpr char kChromeUIWebUITestHost[] =;
inline constexpr char kCookiesSubPagePath[] =;
inline constexpr char kTrackingProtectionSubPagePath[] =;
#endif  // BUILDFLAG(IS_ANDROID)

#if BUILDFLAG(IS_CHROMEOS_ASH)
// NOTE: If you add a URL/host please check if it should be added to
// IsSystemWebUIHost().
inline constexpr char kChromeUIAccountManagerErrorHost[] =
    "account-manager-error";
inline constexpr char kChromeUIAccountManagerErrorURL[] =
    "chrome://account-manager-error";
inline constexpr char kChromeUIAccountMigrationWelcomeHost[] =
    "account-migration-welcome";
inline constexpr char kChromeUIAccountMigrationWelcomeURL[] =
    "chrome://account-migration-welcome";
inline constexpr char kChromeUIAddSupervisionHost[] = "add-supervision";
inline constexpr char kChromeUIAddSupervisionURL[] =
    "chrome://add-supervision/";
inline constexpr char kChromeUIAppDisabledHost[] = "app-disabled";
inline constexpr char kChromeUIAppInstallDialogHost[] = "app-install-dialog";
inline constexpr char kChromeUIAppInstallDialogURL[] =
    "chrome://app-install-dialog/";
inline constexpr char kChromeUIArcOverviewTracingHost[] =
    "arc-overview-tracing";
inline constexpr char kChromeUIArcOverviewTracingURL[] =
    "chrome://arc-overview-tracing/";
inline constexpr char kChromeUIArcPowerControlHost[] = "arc-power-control";
inline constexpr char kChromeUIArcPowerControlURL[] =
    "chrome://arc-power-control/";
inline constexpr char kChromeUIAssistantOptInHost[] = "assistant-optin";
inline constexpr char kChromeUIAssistantOptInURL[] =
    "chrome://assistant-optin/";
inline constexpr char kChromeUIAudioHost[] = "audio";
inline constexpr char kChromeUIAudioURL[] = "chrome://audio/";
inline constexpr char kChromeUIBluetoothPairingHost[] = "bluetooth-pairing";
inline constexpr char kChromeUIBluetoothPairingURL[] =
    "chrome://bluetooth-pairing/";
inline constexpr char kChromeUIBorealisCreditsHost[] = "borealis-credits";
inline constexpr char kChromeUIBorealisCreditsURL[] =
    "chrome://borealis-credits/";
inline constexpr char kChromeUIBorealisInstallerHost[] = "borealis-installer";
inline constexpr char kChromeUIBorealisInstallerUrl[] =
    "chrome://borealis-installer";
inline constexpr char kChromeUICloudUploadHost[] = "cloud-upload";
inline constexpr char kChromeUICloudUploadURL[] = "chrome://cloud-upload/";
inline constexpr char kChromeUIConfirmPasswordChangeHost[] =
    "confirm-password-change";
inline constexpr char kChromeUIConfirmPasswordChangeUrl[] =
    "chrome://confirm-password-change";
inline constexpr char kChromeUIConnectivityDiagnosticsAppURL[] =
    "chrome://connectivity-diagnostics";
inline constexpr char kChromeUICrostiniCreditsHost[] = "crostini-credits";
inline constexpr char kChromeUICrostiniCreditsURL[] =
    "chrome://crostini-credits/";
inline constexpr char16_t kChromeUICrostiniCreditsURL16[] =
    u"chrome://crostini-credits/";
inline constexpr char kChromeUICrostiniInstallerHost[] = "crostini-installer";
inline constexpr char kChromeUICrostiniInstallerUrl[] =
    "chrome://crostini-installer";
inline constexpr char kChromeUICrostiniUpgraderHost[] = "crostini-upgrader";
inline constexpr char kChromeUICrostiniUpgraderUrl[] =
    "chrome://crostini-upgrader";
inline constexpr char kChromeUICryptohomeHost[] = "cryptohome";
inline constexpr char kChromeUICryptohomeURL[] = "chrome://cryptohome";
inline constexpr char kChromeUIDeviceEmulatorHost[] = "device-emulator";
inline constexpr char kChromeUIDeviceEmulatorURL[] = "chrome://device-emulator";
inline constexpr char kChromeUIDiagnosticsAppURL[] = "chrome://diagnostics";
inline constexpr char kChromeUIEmojiPickerHost[] = "emoji-picker";
inline constexpr char kChromeUIEmojiPickerURL[] = "chrome://emoji-picker/";
inline constexpr char kChromeUIEnterpriseReportingHost[] =
    "enterprise-reporting";
inline constexpr char kChromeUIEnterpriseReportingURL[] =
    "chrome://enterprise-reporting";
inline constexpr char kChromeUIExtendedUpdatesDialogHost[] =
    "extended-updates-dialog";
inline constexpr char kChromeUIExtendedUpdatesDialogURL[] =
    "chrome://extended-updates-dialog";
inline constexpr char kChromeUIFirmwareUpdaterAppURL[] =
    "chrome://accessory-update";
inline constexpr char kChromeUIHealthdInternalsHost[] = "healthd-internals";
inline constexpr char kChromeUIHealthdInternalsURL[] =
    "chrome://healthd-internals";
inline constexpr char kChromeUIInternetConfigDialogHost[] =
    "internet-config-dialog";
inline constexpr char kChromeUIInternetConfigDialogURL[] =
    "chrome://internet-config-dialog/";
inline constexpr char kChromeUIInternetDetailDialogHost[] =
    "internet-detail-dialog";
inline constexpr char kChromeUIInternetDetailDialogURL[] =
    "chrome://internet-detail-dialog/";
inline constexpr char kChromeUILocalFilesMigrationHost[] =
    "local-files-migration";
inline constexpr char kChromeUILocalFilesMigrationURL[] =
    "chrome://local-files-migration/";
inline constexpr char kChromeUILockScreenNetworkHost[] = "lock-network";
inline constexpr char kChromeUILockScreenNetworkURL[] = "chrome://lock-network";
inline constexpr char kChromeUILockScreenStartReauthHost[] = "lock-reauth";
inline constexpr char kChromeUILockScreenStartReauthURL[] =
    "chrome://lock-reauth";
inline constexpr char kChromeUIManageMirrorSyncHost[] = "manage-mirrorsync";
inline constexpr char kChromeUIManageMirrorSyncURL[] =
    "chrome://manage-mirrorsync";
inline constexpr char kChromeUIMobileSetupHost[] = "mobilesetup";
inline constexpr char kChromeUIMobileSetupURL[] = "chrome://mobilesetup/";
inline constexpr char kChromeUIMultiDeviceInternalsHost[] =
    "multidevice-internals";
inline constexpr char kChromeUIMultiDeviceInternalsURL[] =
    "chrome://multidevice-internals";
inline constexpr char kChromeUIMultiDeviceSetupHost[] = "multidevice-setup";
inline constexpr char kChromeUIMultiDeviceSetupUrl[] =
    "chrome://multidevice-setup";
inline constexpr char kChromeUINetworkHost[] = "network";
inline constexpr char kChromeUINetworkUrl[] = "chrome://network";
inline constexpr char kChromeUINotificationTesterHost[] = "notification-tester";
inline constexpr char kChromeUINotificationTesterURL[] =
    "chrome://notification-tester";
inline constexpr char kChromeUIOfficeFallbackHost[] = "office-fallback";
inline constexpr char kChromeUIOfficeFallbackURL[] =
    "chrome://office-fallback/";
inline constexpr char kChromeUIOobeHost[] = "oobe";
inline constexpr char kChromeUIOobeURL[] = "chrome://oobe/";
inline constexpr char kChromeUIOSCreditsHost[] = "os-credits";
inline constexpr char kChromeUIOSCreditsURL[] = "chrome://os-credits/";
inline constexpr char16_t kChromeUIOSCreditsURL16[] = u"chrome://os-credits/";
inline constexpr char kChromeUIParentAccessHost[] = "parent-access";
inline constexpr char kChromeUIParentAccessURL[] = "chrome://parent-access/";
inline constexpr char kChromeUIPasswordChangeHost[] = "password-change";
inline constexpr char kChromeUIPasswordChangeUrl[] = "chrome://password-change";
inline constexpr char kChromeUIPowerHost[] = "power";
inline constexpr char kChromeUIPowerUrl[] = "chrome://power";
inline constexpr char kChromeUIPrintManagementUrl[] =
    "chrome://print-management";
inline constexpr char kChromeUIRemoteManagementCurtainHost[] =
    "security-curtain";
inline constexpr char kChromeUISanitizeAppURL[] = "chrome://sanitize";
inline constexpr char kChromeUIScanningAppURL[] = "chrome://scanning";
inline constexpr char kChromeUISetTimeHost[] = "set-time";
inline constexpr char kChromeUISetTimeURL[] = "chrome://set-time/";
inline constexpr char kChromeUISlowHost[] = "slow";
inline constexpr char kChromeUISlowTraceHost[] = "slow_trace";
inline constexpr char kChromeUISlowURL[] = "chrome://slow/";
inline constexpr char kChromeUISmbCredentialsHost[] = "smb-credentials-dialog";
inline constexpr char kChromeUISmbCredentialsURL[] =
    "chrome://smb-credentials-dialog/";
inline constexpr char kChromeUISmbShareHost[] = "smb-share-dialog";
inline constexpr char kChromeUISmbShareURL[] = "chrome://smb-share-dialog/";
inline constexpr char kChromeUISysInternalsHost[] = "sys-internals";
inline constexpr char kChromeUISysInternalsUrl[] = "chrome://sys-internals";
inline constexpr char kChromeUIUntrustedCroshHost[] = "crosh";
inline constexpr char kChromeUIUntrustedCroshURL[] =
    "chrome-untrusted://crosh/";
inline constexpr char kChromeUIUntrustedTerminalHost[] = "terminal";
inline constexpr char kChromeUIUntrustedTerminalURL[] =
    "chrome-untrusted://terminal/";
inline constexpr char kChromeUIUrgentPasswordExpiryNotificationHost[] =
    "urgent-password-expiry-notification";
inline constexpr char kChromeUIUrgentPasswordExpiryNotificationUrl[] =
    "chrome://urgent-password-expiry-notification/";
inline constexpr char kChromeUIUserImageHost[] = "userimage";
inline constexpr char kChromeUIUserImageURL[] = "chrome://userimage/";
inline constexpr char kChromeUIVcTrayTesterHost[] = "vc-tray-tester";
inline constexpr char kChromeUIVcTrayTesterURL[] = "chrome://vc-tray-tester";
inline constexpr char kChromeUIVmHost[] = "vm";
inline constexpr char kChromeUIVmUrl[] = "chrome://vm";

// Returns true if this web UI is part of the "system UI". Generally this is
// UI that opens in a window (not a browser tab) and that on other operating
// systems would be considered part of the OS or window manager.
bool IsSystemWebUIHost(std::string_view host);

#endif  // BUILDFLAG(IS_CHROMEOS_ASH)

#if BUILDFLAG(IS_CHROMEOS)
inline constexpr char kChromeUIAppDisabledURL[] = "chrome://app-disabled";
inline constexpr char kChromeUIDlpInternalsHost[] = "dlp-internals";
inline constexpr char kChromeUIDlpInternalsURL[] = "chrome://dlp-internals";
inline constexpr char kChromeUIGpuURL[] = "chrome://gpu";
inline constexpr char kChromeUIHistogramsURL[] = "chrome://histograms";
inline constexpr char kChromeUIKerberosInBrowserHost[] = "kerberos-in-browser";
inline constexpr char kChromeUIKerberosInBrowserURL[] =
    "chrome://kerberos-in-browser";
inline constexpr char kChromeUILocationInternalsURL[] =
    "chrome://location-internals";
inline constexpr char kChromeUIOsFlagsAppURL[] = "chrome://flags/";
inline constexpr char kChromeUIOSSettingsHost[] = "os-settings";
inline constexpr char kChromeUIOSSettingsURL[] = "chrome://os-settings/";
inline constexpr char kChromeUIOsUrlAppURL[] = "chrome://internal/";
inline constexpr char kChromeUISystemURL[] = "chrome://system";
inline constexpr char16_t kChromeUISystemURL16[] = u"chrome://system";
inline constexpr char kOsUIComponentsURL[] = "os://components";
inline constexpr char kOsUIConnectivityDiagnosticsAppURL[] =
    "os://connectivity-diagnostics";
inline constexpr char16_t kOsUIDeviceLogURL[] = u"os://device-log";
inline constexpr char kOsUIDiagnosticsAppURL[] = "os://diagnostics";
inline constexpr char kOsUIFirmwareUpdaterAppURL[] = "os://accessory-update";
inline constexpr char kOsUIFlagsURL[] = "os://flags";
inline constexpr char kOsUIHelpAppURL[] = "os://help-app";
inline constexpr char kOsUIPrintManagementAppURL[] = "os://print-management";
inline constexpr char kOsUIScanningAppURL[] = "os://scanning";
inline constexpr char kOsUIShortcutCustomizationAppURL[] =
    "os://shortcut-customization";
inline constexpr char16_t kOsUISystemURL[] = u"os://system";
inline constexpr char kOsUIVersionURL[] = "os://version";
#endif

#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
inline constexpr char kChromeUIWebUIJsErrorHost[] =;
inline constexpr char kChromeUIWebUIJsErrorURL[] =;
#endif

#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
    BUILDFLAG(IS_CHROMEOS_ASH)
inline constexpr char kChromeUIConnectorsInternalsHost[] =;
#endif

#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
    BUILDFLAG(IS_CHROMEOS)
inline constexpr char kChromeUIDiscardsHost[] =;
inline constexpr char kChromeUIDiscardsURL[] =;
#endif

#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
inline constexpr char kChromeUIWebAppSettingsHost[] =;
inline constexpr char kChromeUIWebAppSettingsURL[] =;
inline constexpr char kChromeUIWhatsNewHost[] =;
inline constexpr char kChromeUIWhatsNewURL[] =;
#endif

#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID)
inline constexpr char kChromeUILinuxProxyConfigHost[] =;
#endif

#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \
    BUILDFLAG(IS_ANDROID)
inline constexpr char kChromeUISandboxHost[] =;
#endif

// TODO(crbug.com/40118868): Revisit the macro expression once build flag switch
// of lacros-chrome is complete.
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \
    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS))
inline constexpr char kChromeUIBrowserSwitchHost[] =;
inline constexpr char kChromeUIBrowserSwitchURL[] =;
inline constexpr char kChromeUIIntroDefaultBrowserSubPage[] =;
inline constexpr char kChromeUIIntroDefaultBrowserURL[] =;
inline constexpr char kChromeUIIntroHost[] =;
inline constexpr char kChromeUIIntroURL[] =;
inline constexpr char kChromeUIManagedUserProfileNoticeHost[] =;
inline constexpr char kChromeUIManagedUserProfileNoticeUrl[] =;
inline constexpr char kChromeUIProfileCustomizationHost[] =;
inline constexpr char kChromeUIProfileCustomizationURL[] =;
inline constexpr char kChromeUIProfilePickerHost[] =;
inline constexpr char kChromeUIProfilePickerStartupQuery[] =;
inline constexpr char kChromeUIProfilePickerUrl[] =;
#endif

#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \
     defined(TOOLKIT_VIEWS)) ||                         \
    defined(USE_AURA)
inline constexpr char kChromeUITabModalConfirmDialogHost[] =;
#endif

#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
inline constexpr char kChromeUIPrintHost[] =;
#endif

#if BUILDFLAG(ENABLE_SESSION_SERVICE)
inline constexpr char kChromeUISessionServiceInternalsPath[] =;
#endif

#if BUILDFLAG(ENABLE_WEBUI_TAB_STRIP)
inline constexpr char kChromeUITabStripHost[] =;
inline constexpr char kChromeUITabStripURL[] =;
#endif

// Settings sub-pages.
//
// NOTE: Add sub page paths to |kChromeSettingsSubPages| in
// chrome_autocomplete_provider_client.cc to be listed by the built-in
// AutocompleteProvider.

inline constexpr char kAccessibilitySubPage[] =;
inline constexpr char kAddressesSubPage[] =;
inline constexpr char kAdPrivacySubPage[] =;
inline constexpr char kAllSitesSettingsSubpage[] =;
inline constexpr char kAppearanceSubPage[] =;
inline constexpr char kAutofillSubPage[] =;
inline constexpr char kClearBrowserDataSubPage[] =;
inline constexpr char kContentSettingsSubPage[] =;
inline constexpr char kCookieSettingsSubPage[] =;
inline constexpr char kDefaultBrowserSubPage[] =;
inline constexpr char kDownloadsSubPage[] =;
inline constexpr char kExperimentalAISettingsSubPage[] =;
inline constexpr char kFileSystemSettingsSubpage[] =;
inline constexpr char kFileSystemSubpage[] =;
inline constexpr char kHandlerSettingsSubPage[] =;
inline constexpr char kImportDataSubPage[] =;
inline constexpr char kLanguageOptionsSubPage[] =;
inline constexpr char kLanguagesSubPage[] =;
inline constexpr char kManageProfileSubPage[] =;
inline constexpr char kOfferWritingHelpSubpage[] =;
inline constexpr char kOnDeviceSiteDataSubpage[] =;
inline constexpr char kOnStartupSubPage[] =;
inline constexpr char kPasskeysSubPage[] =;
inline constexpr char kPasswordCheckSubPage[] =;
inline constexpr char kPasswordManagerSubPage[] =;
inline constexpr char kPaymentsSubPage[] =;
inline constexpr char kPeopleSubPage[] =;
inline constexpr char kPerformanceSubPage[] =;
inline constexpr char kPrintingSettingsSubPage[] =;
inline constexpr char kPrivacyGuideSubPage[] =;
inline constexpr char kPrivacySandboxMeasurementSubpage[] =;
inline constexpr char kPrivacySubPage[] =;
inline constexpr char kResetProfileSettingsSubPage[] =;
inline constexpr char kResetSubPage[] =;
inline constexpr char kSafeBrowsingEnhancedProtectionSubPage[] =;
inline constexpr char kSafetyCheckSubPage[] =;
inline constexpr char kSafetyHubSubPage[] =;
inline constexpr char kSearchEnginesSubPage[] =;
inline constexpr char kSearchSubPage[] =;
inline constexpr char kSignOutSubPage[] =;
inline constexpr char kSiteDetailsSubpage[] =;
inline constexpr char kSyncSetupSubPage[] =;
inline constexpr char kTriggeredResetProfileSettingsSubPage[] =;

#if BUILDFLAG(IS_WIN)
// TODO(crbug.com/40647483): Remove when issue is resolved.
inline constexpr char kChromeUIWelcomeWin10Host[] = "welcome-win10";
inline constexpr char kCleanupSubPage[] = "cleanup";
#endif

#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
inline constexpr char kChromeUICastFeedbackHost[] = "cast-feedback";
#endif

#if BUILDFLAG(ENABLE_LENS_DESKTOP_GOOGLE_BRANDED_FEATURES)
inline constexpr char kChromeUILensURL[] = "chrome://lens/";
#endif

#if BUILDFLAG(CHROME_ROOT_STORE_CERT_MANAGEMENT_UI)
inline constexpr char kChromeUICertificateManagerDialogURL[] =;
inline constexpr char kChromeUICertificateManagerHost[] =;
inline constexpr char kChromeUICertificateRedirectPath[] =;
inline constexpr char kChromeUICertificateRedirectURL[] =;
#endif  // BUILDFLAG(CHROME_ROOT_STORE_CERT_MANAGEMENT_UI)

// Extensions sub pages.
inline constexpr char kExtensionConfigureCommandsSubPage[] =;

// Gets the hosts/domains that are shown in chrome://chrome-urls.
base::span<const base::cstring_view> ChromeURLHosts();

// Gets the path strings of chrome://internals URLs that are shown in
// chrome://chrome-urls.
base::span<const base::cstring_view> ChromeInternalsURLPaths();

// Gets the URL strings of "debug" pages which are dangerous and not for general
// consumption.
base::span<const base::cstring_view> ChromeDebugURLs();

}  // namespace chrome

#endif  // CHROME_COMMON_WEBUI_URL_CONSTANTS_H_