arc: [30/N] Move //{ => ash}/components/arc/mojom:mojom : batch 4

This CL moves the 4th batch of files for
{ => ash}/components/arc/mojom:mojom

This CL moves a few more mojom files from the top of the dependency
tree.
https://graphviz.corp.google.com/png?graph_id=64927213e30088a9c248b15d84c5aefc

This is part of the LaCrOs directory migration
https://docs.google.com/document/d/1g-98HpzA8XcoGBWUv1gQNr4rbnD5yfvbtYZyPDDbkaE

Bug: b:129295708
Bug: 1164001
Test: CI
Change-Id: If908dcb869bae14a67ecb8c5e98db1903ffa1001
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3308056
Commit-Queue: Yao Li <yaohuali@google.com>
Reviewed-by: James Cook <jamescook@chromium.org>
Owners-Override: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/main@{#946736}
NOKEYCHECK=True
GitOrigin-RevId: eafbabc5f90176a05e7db990f6b257ac07707378
diff --git a/BUILD.gn b/BUILD.gn
index c1525b4..d6b3aff 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -19,16 +19,7 @@
       "file_system.mojom",
       "intent_common.mojom",
       "intent_helper.mojom",
-      "lock_screen.mojom",
-      "media_session.mojom",
-      "memory.mojom",
       "metrics.mojom",
-      "midis.mojom",
-      "nearby_share.mojom",
-      "net.mojom",
-      "obb_mounter.mojom",
-      "payment_app.mojom",
-      "pip.mojom",
       "policy.mojom",
       "power.mojom",
       "print_common.mojom",
diff --git a/lock_screen.mojom b/lock_screen.mojom
deleted file mode 100644
index a19bc32..0000000
--- a/lock_screen.mojom
+++ /dev/null
@@ -1,13 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-// Next MinVersion: 1
-
-module arc.mojom;
-
-// Next method ID: 2
-interface LockScreenInstance {
-  // Notifies the container whether the Chrome OS side lock screen is on/off.
-  SetDeviceLocked@1(bool is_locked);
-};
diff --git a/media_session.mojom b/media_session.mojom
deleted file mode 100644
index e12dd01..0000000
--- a/media_session.mojom
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Next MinVersion: 1
-
-module arc.mojom;
-
-import "services/media_session/public/mojom/audio_focus.mojom";
-
-// Next method ID: 3
-interface MediaSessionInstance {
-  // Enable audio focus integration on the Android side and register the
-  // unified AudioPolicy. The audio policy will send audio focus requests
-  // to |service|.
-  EnableAudioFocus@1(
-      pending_remote<media_session.mojom.AudioFocusManager> service);
-
-  // Disable audio focus integration if it is enabled.
-  DisableAudioFocus@2();
-};
diff --git a/memory.mojom b/memory.mojom
deleted file mode 100644
index 6d53132..0000000
--- a/memory.mojom
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2021 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-// Next MinVersion: 1
-
-module arc.mojom;
-
-// Next method ID: 1
-interface MemoryInstance {
-  // Drops the guest kernel's page caches. Returns true on success.
-  DropCaches@0() => (bool result);
-};
diff --git a/midis.mojom b/midis.mojom
deleted file mode 100644
index 18d9e40..0000000
--- a/midis.mojom
+++ /dev/null
@@ -1,82 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Next MinVersion: 3
-
-// This file defines the mojo interface between Android, Chrome and the
-// Chrome OS daemon for the MIDI implementation used in ARC.
-
-module arc.mojom;
-
-// This struct is used to send information to the client regarding a device
-// which has been (dis)connected, and which the client can use to request
-// subdevice ports from the daemon.
-struct MidisDeviceInfo {
-  uint32 card;
-  uint32 device_num;
-  uint32 num_subdevices;
-  uint32 flags;
-  string name;
-  string manufacturer;
-};
-
-// This struct is used by the client to both request a subdevice port FD, as
-// well as to close all its connections to a particular device. In the latter
-// case, the |subdevice_num| field is left unused.
-struct MidisRequest {
-  uint32 card;
-  uint32 device_num;
-  uint32 subdevice_num;
-};
-
-// This interface is used by the server to send device and other information
-// to the client. It should be implemented by the client, and a handle to it
-// should be passed to the server.
-// Next Method ID: 2
-interface MidisClient {
-  OnDeviceAdded@0(MidisDeviceInfo device);
-  OnDeviceRemoved@1(MidisDeviceInfo device);
-};
-
-// This interface is used by the client to send messages / requests to the
-// daemon. This should be implemented by midis.
-// Next Method ID: 4
-interface MidisServer {
-  // Used to list out the MIDI devices that are currently connected to the
-  // midis daemon.
-  ListDevices@0() => (array<MidisDeviceInfo> devices);
-
-  // This function returns a handle(a Unix FD wrapped in a Mojo Handle)
-  // for a subdevice specified by |request|.
-  // In the event of an error, returns an empty handle.
-  // DEPRECATED: Please use RequestPort@3 instead.
-  RequestPortDeprecated@1(MidisRequest request) => (handle port_handle);
-  [MinVersion=2]
-  RequestPort@3(MidisRequest request) => (handle? port_handle);
-
-  // This function closes all open FDs the client may have on the specified
-  // device, and removes the client from the device's data structure.
-  CloseDevice@2(MidisRequest request);
-};
-
-// This interface is needed to get the midis server interface handle.
-// It is also used to send a handle to the midis client interface (this is
-// used to send messages to the client, and the interface is implemented
-// by the client).
-// Next Method ID: 1
-interface MidisHost {
-  Connect@0(
-      pending_receiver<MidisServer> server, pending_remote<MidisClient> client);
-};
-
-// MidisInstance is implemented in the ARC MIDI JNI code that
-// runs in Android and handles the Android side of the ArcBridge connection.
-// Next Method ID: 2
-interface MidisInstance {
-  // DEPRECATED: Please use Init@1 instead.
-  InitDeprecated@0(pending_remote<MidisHost> host_remote);
-
-  // Establishes full-duplex communication with the host.
-  [MinVersion=1] Init@1(pending_remote<MidisHost> host_remote) => ();
-};
diff --git a/nearby_share.mojom b/nearby_share.mojom
deleted file mode 100644
index 98e0dd1..0000000
--- a/nearby_share.mojom
+++ /dev/null
@@ -1,65 +0,0 @@
-// Copyright 2021 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-// Next MinVersion: 1
-
-module arc.mojom;
-
-import "url/mojom/url.mojom";
-
-// This mojo file defines the interface that Android apps on ChromeOS will use
-// to allow users to share data (text/files) to nearby share targets, using
-// ChromeOS's NearbyShare view. Nearby share is the ability for a user to share
-// data from a ChromeOS device to another ChromeOS or Android device.
-
-// Represents details about a shared file.
-struct FileInfo {
-  url.mojom.Url content_uri;  // Content URI for the shared file
-  string mime_type;           // MIME type for the file
-  string name;                // File name
-  int64 size;                 // Match Long type in ARC for file size in bytes
-};
-
-// Represents the share information received from an Android app.
-struct ShareIntentInfo {
-  string title;                 // Title of share intent
-  string mime_type;             // MIME type for the data.
-                                // (e.g. text/*, text/plain, image/*, etc)
-  map<string, string>? extras;  // (optional) Metadata from the Android intent
-  array<FileInfo>? files;       // (optional) Shared file information
-};
-
-// Represents the Chrome side of NearbyShare session. Used by ARC to send
-// NearbyShare messages to Chrome and interact with the ARC Window used
-// for NearbyShare.
-// Closing the interface will close the ARC Window.
-// Next method ID: 0
-interface NearbyShareSessionHost {
-};
-
-// Represents the ARC side of a NearbyShare session. Used by Chrome to send
-// share-related messages to ARC.
-// Next method ID: 1
-interface NearbyShareSessionInstance {
-  // Called when Chrome NearbyShare view is closed.
-  OnNearbyShareViewClosed@0();
-};
-
-// Interface for Android to communicate with Chrome.
-// Next method ID: 1
-interface NearbyShareHost {
-  // Used to create a NearbyShare session.
-  StartNearbyShare@0(
-      uint32 task_id,
-      ShareIntentInfo info,
-      pending_remote<NearbyShareSessionInstance> instance)
-      => (pending_remote<NearbyShareSessionHost> host);
-};
-
-// Interface for Chrome to communicate with Android.
-// Next method ID: 1
-interface NearbyShareInstance {
-  // Establishes full-duplex communication with the host.
-  Init@0(pending_remote<NearbyShareHost> host_remote) => ();
-};
diff --git a/net.mojom b/net.mojom
deleted file mode 100644
index f7aaba1..0000000
--- a/net.mojom
+++ /dev/null
@@ -1,655 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Next MinVersion: 17
-
-// This file defines the mojo interface between the ARC networking stack and
-// Chrome OS. There are three different groups of interactions:
-//  - WiFi RPCs for scanning and manipulating saved network configurations,
-//  - Layer 3 RPCs for configuring and registering IP networks inside ARC,
-//  - VPN RPCs for integrating Always-on-VPNs and ARC as a VPN provider.
-
-module arc.mojom;
-
-import "url/mojom/url.mojom";
-
-// Indicates if a request send by ARC to the host has successfully completed.
-[Extensible]
-enum NetworkResult {
-  SUCCESS = 0,
-  FAILURE = 1,
-};
-
-// Additional argument to GetNetworks to specify the type of networks the
-// host is interested to learn about.
-[Extensible]
-enum GetNetworksRequestType {
-  // All configured WiFi networks saved on the host.
-  CONFIGURED_ONLY = 0,
-  // All WiFi networks currently visible by scanning.
-  VISIBLE_ONLY = 1,
-  // All networks with an active layer 3 connection for all physical types.
-  [MinVersion=10] ACTIVE_ONLY = 2,
-};
-
-// Represents the possible connection states of a network service.
-// It is effectively a subset of the shill::ConnectState enum defined in
-// platform2/shill/service.h. Before adding a new state to shill::ConnectState
-// there must be a valid value in this enum to map it to, or a new value must
-// first be defined in ConnectionStateType and correctly handled by ARC.
-// The mapping from shill::ConnectState must then be updated inside shill in
-// Service::GetStateString (platform2/shill/service.cc) as well as in
-// TranslateConnectionState inside components/arc/net/arc_net_host_impl.cc.
-[Extensible]
-enum ConnectionStateType {
-  // An active network that is connected at the physical layer and for which IP
-  // provisioning has succeeded for IPv4, or IPv6, or both.
-  // This corresponds to shill::ConnectState.kStateConnected.
-  CONNECTED = 0,
-
-  // The network is still connecting and not ready for IP traffic, but already
-  // considered active. This corresponds to kStateAssociating and
-  // kStateConfiguring in shill::ConnectState.
-  CONNECTING = 1,
-
-  // The network is disconnected. This corresponds to kStateUnknown, kStateIdle,
-  // and kStateFailure in shill::ConnectState.
-  NOT_CONNECTED = 2,
-
-  // The network is active and ready for IP traffic, but a captive portal is
-  // known to prevent access to the Internet. This corresponds to
-  // shill::ConnectState.kStatePortal
-  PORTAL = 3,
-
-  // The network is active and ready for IP traffic, and there is no known
-  // captive portal blocking the traffic to the Internet. This corresponds to
-  // shill::ConnectState.kStateOnline
-  ONLINE = 4,
-};
-
-// Additional WiFi network information provided by scan results.
-struct VisibleNetworkDetails {
-  int32 frequency;
-  int32 signal_strength;
-  string bssid;
-};
-
-// Additional configuration information needed for creating and saving
-// WiFi network configuration on the host.
-struct ConfiguredNetworkDetails {
-  string? passphrase;
-  bool autoconnect;
-};
-
-// Passpoint credentials used to connect to matching passpoint networks.
-// This struct should be mirroring 1-to-1 the "passpoint properties" names and
-// types defined in src/platform2/dbus/shill/dbus-constants.h.
-struct PasspointCredentials {
-  // All home service provider fully qualified domain name(s).
-  array<string> domains@0;
-
-  // The realm associated with this credential. It will be used to determine
-  // if this credential can be used to authenticate with a given hotspot by
-  // comparing the realm specified in that hotspot's Access Network Query
-  // Protocol (ANQP) element.
-  string realm@1;
-
-  // List of Home Organization Identifiers (OIs) used for determining if this
-  // credentials match a given Hotspot provider. Matching of any OIs in this
-  // list with an OI in the Roaming Consortium advertised by a Hotspot means
-  // that successful authentication with such Hotspot is possible.
-  array<uint64> home_ois@2;
-
-  // List of Home Organization Identifiers (OIs) used for determining if a
-  // provider is a member of a given Hotspot provider. Every OIs in this list
-  // are required to match an OI in the the Roaming Consortium advertised by a
-  // Hotspot in order to support authentication with this credentials.
-  array<uint64> required_home_ois@3;
-
-  // Roaming consortium Organization Identifiers (OIs) used to determine which
-  // access points support authentication with this credentials.
-  array<uint64> roaming_consortium_ois@4;
-
-  // Set of EAP credentials (TLS or TTLS only) used to connect to a network
-  // that matched these credentials.
-  EapCredentials eap@5;
-
-  // True if the user or App specified any network provisioned
-  // with these credentials should be considered as metered.
-  bool metered@6;
-
-  // Package name of the App that provided these credentials.
-  string package_name@7;
-};
-
-// The EAP method that will be used when connecting to a 802.1x WiFi network or
-// Passpoint WiFi network.
-[Extensible]
-enum EapMethod {
-  kNone = 0,
-  kLeap = 1,
-  kPeap = 2,
-  kTls = 3,
-  kTtls = 4,
-};
-
-// The authentication methods that will be on the inside of a PEAP or EAP-TTLS
-// tunnel.
-[Extensible]
-enum EapPhase2Method {
-  kNone = 0,
-  kPap = 1,
-  kMschap = 2,
-  kMschapv2 = 3,
-};
-
-// Recognized key management schemes.
-[Extensible]
-enum KeyManagement {
-  kNone = 0,
-  kIeee8021X = 1,
-  kFtEap = 2,
-  kFtPsk = 3,
-  kFtSae = 4,
-  kWpaEap = 5,
-  kWpaEapSha256 = 6,
-  kWpaPsk = 7,
-  kSae = 8,
-};
-
-// EAP credential used to connect to a 802.1x WiFi network or Passpoint WiFi
-// network that matched the credentials.
-// This struct should be mirroring 1-to-1 the "EAP properties" names and types
-// defined in src/platform2/system_api/dbus/shill/dbus-constants.h.
-// ARC is responsible for filling / hardcoding any field that the Android APIs
-// do not provide directly, so that ArcNetHostImpl can be a dumb data transfer
-// layer with no other logic.
-struct EapCredentials {
-  // The outer or only EAP authentication type.
-  EapMethod method@0;
-
-  // The inner EAP authentication type.
-  EapPhase2Method phase2_method@1;
-
-  // When there is an inner EAP type, use this identity for the outer.
-  string? anonymous_identity@2;
-
-  // Who we identify ourselves as to the EAP authenticator.
-  string? identity@3;
-
-  // Password to use for EAP methods which require one.
-  string? password@4;
-
-  // Key management algorithm to use after EAP succeeds.
-  KeyManagement key_management@5;
-
-  // PEM formatted contents of the CA certificate(s).
-  array<string>? ca_certificate_pem@6;
-
-  // PEM formatted contents of the client certificate(s).
-  array<string>? client_certificate_pem@7;
-
-  // PEM formatted contents of the client private key.
-  string? client_certificate_key@8;
-
-  // If non-empty, string to match remote subject against before connecting.
-  string? subject_match@9;
-
-  // A list of serialized subject alternative names (SANs) to be matched against
-  // the alternative subject name of the authentication server certificate. When
-  // multiple match strings are specified, a match with any one of the values is
-  // considered a sufficient match for the server certificate.
-  array<string>? subject_alternative_name_match_list@10;
-
-  // A list of constraints for the server domain name. If set, the entries will
-  // be used as suffix match requirements against the DNS name element(s) of the
-  // alternative subject name of an authentication server. When multiple match
-  // strings are specified, a match with any one of the values is considered a
-  // sufficient match for the server certificate.
-  array<string>? domain_suffix_match_list@11;
-
-  // The highest TLS version supplicant is allowed to negotiate.
-  string? tls_version_max@12;
-
-  // If true, use the system-wide certificate authority database to authenticate
-  // the remote.
-  bool use_system_cas@13;
-
-  // If true, use per network proactive key caching.
-  bool use_proactive_key_caching@14;
-
-  // If true, use the user's stored login password as the password.
-  bool use_login_password@15;
-};
-
-union NetworkDetails {
-  VisibleNetworkDetails visible;
-  ConfiguredNetworkDetails configured;
-};
-
-// The two possible Internet Procol families.
-[Extensible]
-enum IPAddressType {
-  IPV4,
-  IPV6,
-};
-
-// Deprecated. Individual fields added to NetworkConfiguration in version 13 of
-// this file should be used instead.
-struct IPConfiguration {
-
-  // Literal representation of the IP address of the ARC gateway.
-  string gateway;
-
-  // Literal representation of the IP address of ARC for that network.
-  string ip_address;
-
-  // List of literal IP addresses of name servers to use on that network.
-  array<string> name_servers;
-
-  // Length of the routing prefix.
-  int32 routing_prefix;
-
-  // IP family for that configuration
-  IPAddressType type;
-
-  // URL of the HTTP proxy to use for that network.
-  string web_proxy_auto_discovery_url;
-};
-
-// The subset of wireless security protocols that Android defines in
-// android.net.wifi.WifiConfiguration and that can be supported by the
-// host.
-[Extensible]
-enum SecurityType {
-  NONE,
-  WEP_PSK,
-  WEP_8021X,
-  WPA_PSK,
-  WPA_EAP,
-};
-
-// Deprecated enum. |is_metered| in NetworkConfiguration should be
-// used instead.
-[Extensible]
-enum TetheringClientState {
-  // Tethering state is detected and confirmed.
-  CONFIRMED,
-
-  // Tethering state is not detected.
-  NOT_DETECTED,
-
-  // Tethering data is suspected and can be |CONFIRMED| in the future.
-  SUSPECTED,
-};
-
-// Describes properties of a WiFi networks used to create Android's
-// android.net.wifi.Wificonfiguration objects and android.net.wifi.WifiInfo
-// objects.
-struct WiFi {
-  // The network BSSID in the format of an Ethernet MAC address.
-  string bssid;
-
-  // The frequency of this network, in MHz.
-  int32 frequency;
-
-  // The network SSID encoded as an hexadecimal string.
-  string hex_ssid;
-
-  // True if the network does not broadcast its ssid.
-  bool hidden_ssid;
-
-  // The type of wireless security protocol used by this network.
-  SecurityType security;
-
-  // The current RSSI of this network. Updates for this value are not sent to
-  // ARC for connected WiFi networks and should be considered precise only for
-  // scanning results.
-  int32 signal_strength;
-
-  // True if the network represents a Passpoint network.
-  [MinVersion=16] bool is_passpoint;
-
-  // Fully qualified domain name (FQDN) of a Passpoint configuration.
-  [MinVersion=16] string? fqdn;
-};
-
-// The physical network types exposed to ARC by the host,
-// corresponding to a subset of shill technology types defined
-// in platform2/system_api/dbus/shill/dbus-constants.h.
-// The missing shill technology types are:
-//  - WiMAX: obsolete WiFi standard, deprecated in Chrome OS in Q2 2019.
-//  - Bluetooth: ARC does not support host IP networks over Bluetooth.
-//  - PPPoE: ARC does not support host Point to Point networks.
-// Next Enum ID: 5
-// ID 4 was previously assigned to WiMAX.
-[Extensible]
-enum NetworkType {
-  CELLULAR = 0,
-  ETHERNET = 1,
-  VPN = 2,
-  WIFI = 3,
-};
-
-// Used by ARC to request a network configuration to be created on the host.
-struct NetworkConfiguration {
-  // The connection state of the network service.
-  ConnectionStateType connection_state;
-
-  // A string token that uniquely identifies this network service.
-  string guid;
-
-  // Deprecated. Individual fields added to NetworkConfiguration in version 13
-  // of this file should be used instead.
-  array<IPConfiguration>? deprecated_ip_configs;
-
-  // Deprecated field unused from ARC P and later.
-  string? deprecated_mac_address;
-
-  // The type of the underlying physical network.
-  NetworkType type;
-
-  // Additional WiFi properties for WiFi network services.
-  WiFi? wifi;
-
-  // Deprecated field. Uses |is_metered| instead.
-  [MinVersion=8] TetheringClientState deprecated_tethering_client_state;
-
-  // The name of the network interface on the host.
-  [MinVersion=10] string? network_interface;
-
-  // True if this network is the host default network.
-  [MinVersion=11] bool is_default_network;
-
-  // The name of the shill service associated with this network connection.
-  [MinVersion=12] string? service_name;
-
-  // This is the network MTU value (device kIpConfigsProperty) or the
-  // native VPN MTU value (service property), or 0 if undefined.
-  [MinVersion=13] uint32 host_mtu;
-
-  // Prefix length of the host IPv4 subnet, or 0 for an IPv6 only network.
-  [MinVersion=13] uint32 host_ipv4_prefix_length;
-
-  // IPv4 address assigned to the host, or empty for an IPv6 only network.
-  [MinVersion=13] string? host_ipv4_address;
-
-  // IPv4 address of the local gateway, or empty for an IPv6 only network.
-  [MinVersion=13] string? host_ipv4_gateway;
-
-  // Prefix length of the host IPv6 subnet, or 0 for an IPv4 only network.
-  [MinVersion=13] uint32 host_ipv6_prefix_length;
-
-  // Global unicast IPv6 addresses assigned to the host, or empty for an IPv4
-  // only network. The link local address and unique local addresses are
-  // ignored.
-  [MinVersion=13] array<string>? host_ipv6_global_addresses;
-
-  // IPv6 address of the local gateway, or empty for an IPv4 only network.
-  [MinVersion=13] string? host_ipv6_gateway;
-
-  // All IPv4 and IPv6 addresses of name servers for the network,
-  // either obtained by DHCPv4, by IPv6 RA RDNSS, or set statically.
-  [MinVersion=13] array<string>? host_dns_addresses;
-
-  // All search domains set for the host for the network, either obtained by
-  // DHCPv4, by IPv6 RA DNSSL, or set statically. Search domains are set as an
-  // explicit array of strings instead of a comma separated list embedded into
-  // a single string.
-  [MinVersion=13] array<string>? host_search_domains;
-
-  // The following four fields specify the static IPv4 configuration for the
-  // virtual network exposed inside ARC environment by arc-networkd, and
-  // attached to this host network. These values are defined even if the
-  // host network is an IPv6 only network.
-
-  // Prefix length of the IPv4 subnet assigned to the ARC virtual network.
-  [MinVersion=13] uint32 arc_ipv4_prefix_length;
-
-  // IPv4 address assigned to the ARC guest.
-  [MinVersion=13] string? arc_ipv4_address;
-
-  // IPv4 address of the gateway for the ARC virtual network.
-  [MinVersion=13] string? arc_ipv4_gateway;
-
-  // The name of the network interface matching the virtual interface exposed
-  // to ARC and associated with the network service. This can be different
-  // from the name of the real physical interface managed by shill.
-  [MinVersion=13] string? arc_network_interface;
-
-  // True if the network has been autodetected by the platform as a metered
-  // network or if the user explicitly marked the network as metered in the UI.
-  [MinVersion=14] bool is_metered;
-};
-
-// Describes a Wifi network configuration that ARC has requested the host to
-// create.
-struct WifiConfiguration {
-  // These correspond to ONC properties returned by
-  // chrome.networkingPrivate.getNetworks() and createNetwork().
-  // See components/onc/docs/onc_spec.html
-
-  // SSID encoded as a series of hex bytes, e.g. "61626364"
-  // This allows for handling SSIDs which are not valid UTF-8 strings.
-  [MinVersion=2] string? hexssid@6;
-
-  [MinVersion=1] string? guid@5;
-  string security@4;
-
-  // Fields specific to either visible or configured networks.
-  [MinVersion=2] NetworkDetails? details@7;
-
-  // Deprecated.  These will be removed when both sides support NetworkDetails.
-  int32 frequency@1;
-  int32 signal_strength@2;
-  string bssid@3;
-
-  // Deprecated. |hexssid| will be used, going forward.
-  string ssid@0;
-
-  // Set of EAP credentials used to connect to a network that matched these
-  // credentials.
-  [MinVersion=16] EapCredentials? eap@8;
-};
-
-// Response object sent back to ARC when it queries existing networks on
-// Chrome OS side. The kind of networks returned by Chrome OS is specified
-// with the GetNetworksRequestType enum.
-struct GetNetworksResponseType {
-  NetworkResult status;
-  array<NetworkConfiguration> networks;
-};
-
-struct AndroidVpnConfiguration {
-  // The canonical name of the VPN app (e.g. "com.android.myvpn").
-  string app_name@0;
-
-  // The human-readable name of the VPN app (e.g. "OpenVPN").
-  string app_label@1;
-
-  // The name of the VPN session, as set by the app using setSession().
-  // The app does not need to call setSession() so this may be empty.
-  string session_name@2;
-
-  // True if Chrome browser traffic should be sent through the VPN.
-  bool tunnel_chrome_traffic@3;
-
-  // The next hop for IPv4 traffic originating on the host.  Currently this
-  // will be set to arc0's IP address.
-  string ipv4_gateway@4;
-
-  // A list of IPv4 and IPv6 ranges to route through the VPN.  e.g.
-  // ["0.0.0.0/0"] or ["192.168.1.0/24", "10.1.0.0/16"].
-  array<string> split_include@5;
-
-  // A list of IPv4 and IPv6 ranges to exclude from the VPN.  If specified,
-  // all traffic that does not fall into these ranges will use the VPN.
-  array<string> split_exclude@6;
-
-  // A list of DNS servers.
-  array<string> nameservers@7;
-
-  // A list of search domains for DNS resolution.
-  array<string> domains@8;
-};
-
-// Result object that is returned to the caller of the ARC DNS
-// Resolution test. Contains information regarding the test result.
-struct ArcDnsResolutionTestResult {
-  // True if the test passed successfully.
-  bool is_successful;
-
-  // RCODE of the DNS response as defined by rfc2929#section-2.3.
-  int32 response_code;
-
-  // Time elapsed for the DNS resolution (milliseconds).
-  int64 duration_ms;
-};
-
-// Result object that is returned to the caller of the ARC HTTP
-// test. Contains information regarding the test result.
-struct ArcHttpTestResult {
-  // True if the HTTP request completed successfully.
-  bool is_successful;
-
-  // Status code of the HTTP response header.
-  int32 status_code;
-
-  // HTTP response header fields.
-  map<string, string> response_header_fields;
-
-  // Time elapsed for the HTTP request and response (milliseconds).
-  int64 duration_ms;
-};
-
-// Result object that is returned to the caller of the ARC
-// Ping test. Contains information regarding the test result.
-struct ArcPingTestResult {
-  // True if the test passed successfully.
-  bool is_successful;
-
-  // Time elapsed for the ping (milliseconds).
-  int64 duration_ms;
-};
-
-// Next Method ID: 16
-// IDs 3 and 9 are missing as they belonged to deprecated methods.
-interface NetHost {
-  // Sends a request to get enabled / disabled status of WiFi.
-  GetWifiEnabledState@1() => (bool is_enabled);
-
-  // Sends a request to start scan of WiFi APs.
-  [MinVersion=1] StartScan@2();
-
-  // Sends a request to enable or disable WiFi. The |result| is true when the
-  // the state has been successfully set or WiFi is already in the desired
-  // state. It is false if WiFi manipulation is prohibited due to a policy or
-  // its current state.
-  [MinVersion=3] SetWifiEnabledState@4(bool is_enabled) => (bool result);
-
-  // Creates a new network and returns the GUID.  If an error occurs,
-  // |guid| will be an empty string.
-  [MinVersion=4] CreateNetwork@5(WifiConfiguration cfg) => (string guid);
-
-  // Deletes an existing network.
-  [MinVersion=4] ForgetNetwork@6(string guid) => (NetworkResult status);
-
-  // Initiates a network connection.  If called when connected to a different
-  // network, it will drop the current connection first.
-  [MinVersion=4] StartConnect@7(string guid) => (NetworkResult status);
-
-  // Disconnects from network |guid|.
-  [MinVersion=4] StartDisconnect@8(string guid) => (NetworkResult status);
-
-  // Sends a request to get the subset of network services existing on Chrome OS
-  // that match the kind specified with GetNetworksRequestType. This call
-  // supports three usages:
-  //  - Querying the list of saved WiFi network configurations for implementing
-  //    WifiManager public APIs for accessing saved WiFi profiles.
-  //  - Querying visible WiFi networks for implementing Android WifiManager
-  //    public scanning APIs.
-  //  - Querying the list of all networks with an active layer 3 connection,
-  //    which is used for the initial registration of IP networks to Android
-  //    connectivity stack. This includes all physical types of networks.
-  [MinVersion=6] GetNetworks@10(GetNetworksRequestType type) =>
-      (GetNetworksResponseType response);
-
-  // Inform Chrome OS that a VPN has connected.
-  [MinVersion=7] AndroidVpnConnected@11(AndroidVpnConfiguration cfg);
-
-  // Inform Chrome OS that a VPN is disconnected, reconnecting, or reconnected.
-  [MinVersion=7] AndroidVpnStateChanged@12(ConnectionStateType state);
-
-  // Tells Chrome OS that network traffic should go through a certain VPN
-  // connection. |vpnPackage| is the package name of the Android VPN app. If
-  // |lockdown| is true and the VPN connection is down, traffic is blackholed to
-  // prevent circumventing the VPN connection. This applies to Chrome traffic
-  // (users 'chronos' and 'debugd'), not other system traffic like the
-  // update engine.
-  // TODO(b/111201944): Add Chrome UI to enable the user to escape the lockdown,
-  // unless the lockdown is dictated via policy.
-  // Call with empty string as |vpnPackage| to lift the restriction.
-  [MinVersion=9] SetAlwaysOnVpn@13(string vpnPackage, bool lockdown);
-
-  // Adds a PasspointCredentials block provided by an Android App onto the host
-  // platform.
-  [MinVersion=16] AddPasspointCredentials@14(PasspointCredentials credentials);
-
-  // Removes all PasspointCredentials blocks provided by an Android App.
-  // Calling this will also revoke all associated WiFi Services provisioned
-  // with the credentials blocks.
-  [MinVersion=16] RemovePasspointCredentials@15(string package_name);
-};
-
-// Next Method ID: 11
-// ID 2 is missing as it belonged to deprecated method.
-interface NetInstance {
-  // DEPRECATED: Please use Init@6 instead.
-  InitDeprecated@0(pending_remote<NetHost> host_remote);
-
-  // Establishes full-duplex communication with the host.
-  [MinVersion=8] Init@6(pending_remote<NetHost> host_remote) => ();
-
-  // Notifies the instance of a WiFI AP scan being completed.
-  [MinVersion=1] ScanCompleted@1();
-
-  // Notifies the instance of a change in the state of WiFi on the host.
-  [MinVersion=3] WifiEnabledStateChanged@3(bool is_enabled);
-
-  // Ask Android to disconnect the VPN, per user request.
-  [MinVersion=7] DisconnectAndroidVpn@4();
-
-  // Ask Android to pop up a VPN configuration dialog, per user request.
-  [MinVersion=7] ConfigureAndroidVpn@5();
-
-  // Notifies the instance of a change in one active network service.
-  // Updates are only sent for active networks with an active layer 3
-  // connection or networks in the process of connecting, corresponding to
-  // CONNECTING, CONNECTED, PORTAL, and ONLINE ConnectionStateType values.
-  // TODO(b/77293260): Notifications should only be sent for updates to
-  // properties and data visible in NetworkConfiguration, and not for all shill
-  // property updates.
-  [MinVersion=10] ActiveNetworksChanged@7(array<NetworkConfiguration> network);
-
-  // Does a DNS query from within ARC and returns result.
-  // The test is bound to the ARC network corresponding to the host transport
-  // name |transport_name|.
-  [MinVersion=15] DnsResolutionTest@8(string transport_name,
-      string host_name) => (ArcDnsResolutionTestResult result);
-
-  // Does an HTTP GET request from within ARC and returns result.
-  // Only HTTP and HTTPS are supported and the connection does not use any
-  // caches/cookie jars/etc. that might exist on the Android side.
-  // The test is bound to the ARC network corresponding to the host transport
-  // name |transport_name|.
-  [MinVersion=15] HttpTest@9(string transport_name, url.mojom.Url url)
-      => (ArcHttpTestResult result);
-
-  // Sends an ICMP echo request from within ARC to the given IP address and
-  // returns result.
-  // The test is bound to the ARC network corresponding to the host transport
-  // name |transport_name|.
-  [MinVersion=15] PingTest@10(string transport_name, string ip_address)
-      => (ArcPingTestResult result);
-};
diff --git a/obb_mounter.mojom b/obb_mounter.mojom
deleted file mode 100644
index 403522c..0000000
--- a/obb_mounter.mojom
+++ /dev/null
@@ -1,28 +0,0 @@
-// Copyright 2016 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Next MinVersion: 2
-
-module arc.mojom;
-
-// Next Method ID: 2
-interface ObbMounterHost {
-  // Mounts the specified OBB file to the target path, the owner GID will be set
-  // to the specified value.
-  MountObb@0(string obb_file,
-             string target_path,
-             int32 owner_gid) => (bool success);
-
-  // Unmounts the OBB file mounted to the specifed path.
-  UnmountObb@1(string target_path) => (bool success);
-};
-
-// Next Method ID: 2
-interface ObbMounterInstance {
-  // DEPRECATED: Please use Init@1 instead.
-  InitDeprecated@0(pending_remote<ObbMounterHost> host_remote);
-
-  // Establishes full-duplex communication with the host.
-  [MinVersion=1] Init@1(pending_remote<ObbMounterHost> host_remote) => ();
-};
diff --git a/payment_app.mojom b/payment_app.mojom
deleted file mode 100644
index d206f0d..0000000
--- a/payment_app.mojom
+++ /dev/null
@@ -1,183 +0,0 @@
-// Copyright 2020 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Next MinVersion: 4
-
-module arc.mojom;
-
-// After the browser calls IsPaymentImplemented(), ARC sends back this result
-// if there are no errors.
-struct IsPaymentImplementedValidResult {
-  // The list of activities with intent filter for
-  // org.chromium.intent.action.PAY action and "https://play.google.com/billing"
-  // in either "org.chromium.default_payment_method_name" or
-  // "org.chromium.payment_method_names" metadata. Other payment methods are
-  // ignored for now.
-  // Example activity name: "com.example.app.PaymentActivity".
-  array<string> activity_names;
-
-  // The list of services with intent filter for
-  // org.chromium.intent.action.IS_READY_TO_PAY. Example service name:
-  // "com.example.app.IsReadyToPayService".
-  array<string> service_names;
-};
-
-// After the browser calls IsPaymentImplemented(), ARC sends back this result.
-union IsPaymentImplementedResult {
-  IsPaymentImplementedValidResult valid;
-  string error;
-};
-
-// The common payment parameters for the browser to pass to ARC in both
-// PaymentAppInstance.IsReadyToPayService() and
-// PaymentAppInstance.InvokePaymentApp() Mojo methods. ARC will forward this
-// data to either WebPaymentIntentHelper.createIsReadyToPayIntent() or
-// WebPaymentIntentHelper.createPayIntent(), depending on which method of
-// PaymentApp Mojo IPC service was invoked.
-//
-// WebPaymentIntentHelper in ARC should be used only with the
-// "https://play.google.com/billing" payment method identifier at this time.
-struct PaymentParameters {
-  // The TWA package name, e.g., "com.example.app". This is the "String
-  // packageName" parameter to createIsReadyToPayIntent() and createPayIntent()
-  // methods.
-  string package_name;
-
-  // The name of the IS_READY_TO_PAY service to query or PAY activity to invoke,
-  // depending on whether this struct is passed into IsReadyToPay() or
-  // InvokePaymentApp() method. For example,
-  // "com.example.app.IsReadyToPayService" or "com.example.app.PaymentActivity".
-  // This is the "String serviceName" parameter to createIsReadyToPayIntent() or
-  // "String activityName" parameter to createPayIntent().
-  string activity_or_service_name;
-
-  // The JSON serialization of the JavaScript object "data" in the
-  // PaymentRequest API. For example:
-  //
-  //  {"productId": "test_product_id"}
-  //
-  // This string is serialized in Blink and is parsed in the TWA. The browser
-  // does not parse this string. This string goes into the value of the
-  // "methodDataMap" parameter of createIsReadyToPayIntent() and
-  // createPayIntent() methods, i.e.:
-  //
-  //  methodDataMap.put("https://play.google.com/billing",
-  //                    new PaymentMethodData("https://play.google.com/billing",
-  //                                          stringified_method_data));
-  string stringified_method_data;
-
-  // (Host, optional port) tuple that cannot be an opaque origin. For example:
-  // "shop.com". This is the "String schemelessOrigin" parameter to
-  // createIsReadyToPayIntent() and createPayIntent() methods.
-  string top_level_origin;
-
-  // (Host, optional port) tuple that cannot be an opaque origin. For
-  // example: "payment-service-provider.com". This is the "String
-  // schemelessIframeOrigin" parameter to createIsReadyToPayIntent() and
-  // createPayIntent() methods.
-  string payment_request_origin;
-
-  // The free-form identifier for this pending transaction as set either by the
-  // merchant website in PaymentRequest() constructor in JavaScript, or (more
-  // commonly) a browser-generated GUID string. This is the "String id"
-  // parameter to createPayIntent() method. The createIsReadyToPayIntent() does
-  // not currently need this parameter.
-  [MinVersion=2]
-  string? payment_request_id;
-
-  // Opaque, browser-generated identifier for this payment request. Used to
-  // identify a particular request across calls.
-  [MinVersion=3]
-  string? request_token;
-};
-
-// After the browser calls IsReadyToPay(), ARC sends back this result.
-union IsReadyToPayResult {
-  bool response;
-  string error;
-};
-
-// After the browser calls InvokePaymentApp(), ARC sends back this result, if
-// there are no errors.
-struct InvokePaymentAppValidResult {
-  // Whether the intent return status is Activity.RESULT_OK.
-  bool is_activity_result_ok;
-
-  // The JSON serialization of a JavaScript object that's the response to
-  // PaymentRequest API. For example:
-  //
-  //  {"receiptIdentifier": "test_receipt_identifier"}
-  //
-  // This string is serialized in TWA and is parsed in Blink. The browser does
-  // not parse this string.
-  string stringified_details;
-};
-
-// After the browser calls InvokePaymentApp(), ARC sends back this result.
-union InvokePaymentAppResult {
-  InvokePaymentAppValidResult valid;
-  string error;
-};
-
-// The service that runs in ARC and allows the browser to invoke the TWA payment
-// app that is installed in ARC, if it implements payment intents as described
-// in https://web.dev/android-payment-apps-overview/. At first, only
-// "https://play.google.com/billing" payment method is supported.
-//
-// --------------------      --------------------------------------------------
-// |     Browser      |      |                      ARC                       |
-// |                  |      |                                                |
-// | ---------------  |      |  --------------    -------    ---------------- |
-// | | Web Payment |<-|------|->| PaymentApp |<-->| TWA |<-->| Play Billing | |
-// | ---------------  |      |  --------------    -------    ---------------- |
-// |                  |      |                                                |
-// --------------------      --------------------------------------------------
-//
-// Next method ID: 3
-interface PaymentAppInstance {
-  // Called by the browser to check whether the TWA with |package_name| (e.g.,
-  // "com.example.app") in ARC has intent filters for
-  // org.chromium.intent.action.PAY and
-  // org.chromium.intent.action.IS_READY_TO_PAY with
-  // "https://play.google.com/billing" in either
-  // "org.chromium.default_payment_method_name" or
-  // "org.chromium.payment_method_names" metadata of the PAY intent filter.
-  // Other payment methods are ignored for now.
-  //
-  // Should not invoke any of the TWA activities or connect to any of its
-  // services, because this method may be invoked when off the record, e.g.,
-  // incognito mode or guest mode.
-  IsPaymentImplemented@0(string package_name)
-      => (IsPaymentImplementedResult response);
-
-  // Forwards the request to IsReadyToPayServiceHelper.query(), which queries
-  // the payment app. The payment app should return true if payments can be
-  // made. This should not be invoked when off the record, e.g., incognito mode
-  // or guest mode.
-  [MinVersion=1]
-  IsReadyToPay@1(PaymentParameters parameters)
-      => (IsReadyToPayResult response);
-
-  // Forwards the request to WebPaymentIntentHelper.createPayIntent() and fires
-  // the resulting intent. This invokes the payment flow.
-  //
-  // The "String merchantName" parameter to createPayIntent() should be empty
-  // (but not null).
-  //
-  // The total amount for createPayIntent() should always be "0" with currency
-  // "ZZZ".
-  [MinVersion=2]
-  InvokePaymentApp@2(PaymentParameters parameters)
-      => (InvokePaymentAppResult response);
-
-  // Requests to abort a previous payment flow (identified by |request_token|)
-  // which was opened with InvokePaymentApp().
-  //
-  // This may be called by the website if a payment should no longer be made
-  // (e.g., when an item goes out of stock), or by the browser if the payment is
-  // no longer available (e.g., the page was refreshed).
-  [MinVersion=3]
-  AbortPaymentApp@3(string request_token)
-      => (bool aborted);
-};
diff --git a/pip.mojom b/pip.mojom
deleted file mode 100644
index 8d38010..0000000
--- a/pip.mojom
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-// Next MinVersion: 2
-
-module arc.mojom;
-
-// Contains the types of PIP events that happened in Android that we may want
-// to react to on the Chrome side. Currently, this only contains the ENTER
-// event, but if we want to signal other events later, we can add
-// a new event type here (e.g. media started/stopped playing).
-[Extensible]
-enum ArcPipEvent {
-  ENTER = 0,
-};
-
-// Interface for Android communicating to Chrome.
-// Next Method ID: 1
-interface PipHost {
-  // Tells Chrome about the status of the Android PIP window. If Android
-  // opens a PIP window, we may want to close any existing Chrome-side PIP
-  // windows.
-  OnPipEvent@0(ArcPipEvent event);
-};
-
-// Interface for communicating to Android.
-// Next Method ID: 3
-interface PipInstance {
-  // Establishes full-duplex communication with the host.
-  Init@0(pending_remote<PipHost> host_remote) => ();
-
-  // Instruct Android to close the current Android PIP window, if it exists.
-  // This is used if the user initiates a Chrome side PIP window, since we
-  // want to avoid showing two PIP windows at the same time.
-  ClosePip@1();
-
-  // Updates the suppression status of PIP. True to suppress PIP windows, or
-  // false not to suppress. Setting this flag also closes existing PIP window.
-  [MinVersion=1]
-  SetPipSuppressionStatus@2(bool suppressed);
-};