| // Copyright 2023 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| module privacy_sandbox_internals.mojom; |
| |
| import "mojo/public/mojom/base/values.mojom"; |
| import "components/content_settings/core/common/content_settings_types.mojom"; |
| import "components/content_settings/core/common/content_settings.mojom"; |
| |
| // Mojo interface for DevUI access to data for Privacy Sandbox state. |
| |
| // Container type for pref names displayed in PS internals and their values. |
| struct PrivacySandboxInternalsPref { |
| string name; |
| mojo_base.mojom.Value value; |
| }; |
| |
| // Renderer -> Browser |
| interface PageHandler { |
| // Returns an array of PrivacySandboxInternalsPref items for prefs that start |
| // with one of the prefixes in pref_prefixes. Empty strings and duplicates in |
| // pref_prefixes are considered invalid input and will close the connection. |
| ReadPrefsWithPrefixes(array<string> pref_prefixes) => ( |
| array<PrivacySandboxInternalsPref> prefs); |
| |
| // Return a list of ContentSettings for the current profile and given type. |
| // Reads directly from the HostContentSettingsMap. |
| ReadContentSettings(content_settings.mojom.ContentSettingsType type) => ( |
| array<content_settings.mojom.ContentSettingPatternSource> content_settings); |
| |
| // Return a list of TPCD_METADATA_GRANTS ContentSettings for the current |
| // profile. |
| GetTpcdMetadataGrants() => ( |
| array<content_settings.mojom.ContentSettingPatternSource> content_settings); |
| |
| // Return a string representation of a ContentSettingsPattern. |
| ContentSettingsPatternToString( |
| content_settings.mojom.ContentSettingsPattern pattern) => (string s); |
| |
| // Return a ContentSettingsPattern representing a string. |
| StringToContentSettingsPattern(string s) => ( |
| content_settings.mojom.ContentSettingsPattern pattern); |
| }; |
| |
| |
| // Browser -> Renderer |
| interface Page { |
| }; |