chromium/android_webview/tools/system_webview_shell/test/data/webexposed/not-webview-exposed.txt

# compute pressure api not enabled in webview, crbug.com/341537009
interface PressureObserver
interface PressureRecord

# speech synthesis api not enabled in webview
# but speech recognition is enabled, crbug.com/487255
interface SpeechSynthesis : EventTarget
interface SpeechSynthesisErrorEvent : SpeechSynthesisEvent
interface SpeechSynthesisEvent : Event
interface SpeechSynthesisUtterance : EventTarget
interface SpeechSynthesisVoice

# notifications api not enabled in webview, crbug.com/434712
interface Notification : EventTarget

# web payments api not enabled in webiew, crbug.com/667069
interface PaymentAddress
interface PaymentManager
interface PaymentMethodChangeEvent : PaymentRequestUpdateEvent
interface PaymentRequest : EventTarget
interface PaymentRequestUpdateEvent : Event
interface PaymentResponse : EventTarget

# not yet supported in webview and chrome on android in general, crbug.com/154571
interface SharedWorker : EventTarget

# push API not supported in webview, crbug.com/421921
interface PushManager
interface PushSubscription
interface PushSubscriptionOptions

# presentation api not supported in webview crbug.com/521319
interface Presentation
interface PresentationAvailability : EventTarget
interface PresentationConnection : EventTarget
interface PresentationConnectionAvailableEvent : Event
interface PresentationConnectionCloseEvent : Event
interface PresentationConnectionList : EventTarget
interface PresentationReceiver
interface PresentationRequest : EventTarget

# remoteplayback api not supported in webview crbug.com/521319
interface RemotePlayback : EventTarget

# translation service is not implemented in webview which
# hrefTranslate is gated on. If it does eventually expose it
# it should call WebRuntimeFeatures.EnableTranslateService(...)
interface HTMLAnchorElement : HTMLElement
    getter hrefTranslate
    setter hrefTranslate

# web payments api not enabled in webview, crbug.com/667069
interface HTMLIFrameElement : HTMLElement
    getter allowPaymentRequest
    setter allowPaymentRequest

# Android does not support switching the audio output device, crbug.com/589500
# Remote Playback API is not supported on Android WebView, crbug.com/521319
interface HTMLMediaElement : HTMLElement
    getter sinkId                      # crbug.com/589500
    method setSinkId                   # crbug.com/589500
    setter disableRemotePlayback       # crbug.com/521319
    getter disableRemotePlayback       # crbug.com/521319
    getter remote                      # crbug.com/521319

# presentation API (crbug.com/521319),
# share API (crbug.com/765923), custom scheme handlers (crbug.com/589502),
# media session API (crbug.com/925997), Web Serial API (crbug.com/1164036),
# WebXr API (crbug.com/1012899), WebHID API (crbug.com/1164125), Web
# Bluetooth API (crbug.com/1100993), WebUSB API (crbug.com/933055) and
# the Login Status API (crbug.com/1340252) are not supported in webview.
interface Navigator
    getter hid                         # crbug.com/1164125
    getter login                       # crbug.com/1340252
    getter mediaSession                # crbug.com/925997
    getter presentation                # crbug.com/521319
    getter serial                      # crbug.com/1164036
    getter usb                         # crbug.com/1012899
    getter xr                          # crbug.com/1012899
    method registerProtocolHandler     # crbug.com/589502
    method unregisterProtocolHandler   # crbug.com/589502
    method share                       # crbug.com/765923
    method getInstalledRelatedApps

# Media Session API is not enabled in Android WebView (crbug.com/925997)
interface MediaMetadata
interface MediaSession

# notifications not yet supported in webview, crbug.com/551446
# web payments api not enabled in webiew, crbug.com/667069
interface ServiceWorkerRegistration : EventTarget
    getter paymentManager
    getter pushManager
    method getNotifications
    method showNotification

# EyeDropper API should not be exposed in WebView because it is not supported
# on Android, crbug.com/1249967
interface EyeDropper

# File System API disabled in WebView, crbug.com/589504, crbug.com/589843, b/6930981
interface HTMLInputElement : HTMLElement
    getter webkitEntries

# File System Access API not supported on Android, crbug.com/1011535
interface DataTransferItem
    method getAsFileSystemHandle

interface MediaDevices : EventTarget
    # MediaDevices devicechange disabled on Android, crbug.com/671461
    getter ondevicechange
    setter ondevicechange
    method getDisplayMedia
    method setCaptureHandleConfig

# Because getDisplayMedia() is not supported on Android, dependent features
# such as Capture Handle and Region Capture are also unsupported.
interface MediaStreamTrack : EventTarget
  getter oncapturehandlechange
  setter oncapturehandlechange
  method getCaptureHandle
interface BrowserCaptureMediaStreamTrack : MediaStreamTrack
  method cropTo
interface CropTarget
interface CaptureController : EventTarget

# WebAuthN API should not be exposed in WebView, crbug.com/828168
interface AuthenticatorAssertionResponse : AuthenticatorResponse
interface PublicKeyCredential : Credential
interface AuthenticatorResponse
interface AuthenticatorAttestationResponse : AuthenticatorResponse

# WebOTP API should not be exposed in WebView, crbug.com/1224417
interface OTPCredential : Credential

# Background Fetch API is not enabled in Android webview, crbug.com/766077
interface BackgroundFetchManager
interface BackgroundFetchRecord
interface BackgroundFetchRegistration : EventTarget
interface ServiceWorkerRegistration : EventTarget
    getter backgroundFetch

# Periodic Background Sync API is not enabled in Android webview, crbug.com/1134599
interface PeriodicSyncManager
interface ServiceWorkerRegistration : EventTarget
    getter periodicSync

# WebXR dependent interfaces are not supported on WebView crbug.com/1012899
interface XRView
interface XRViewport
interface XRSystem : EventTarget
interface XRFrame
interface XRRigidTransform
interface XRSpace : EventTarget
interface XRInputSourcesChangeEvent : Event
interface XRInputSource
interface XRWebGLLayer : XRLayer
interface XRInputSourceEvent : Event
interface XRViewerPose : XRPose
interface XRInputSourceArray
interface XRRenderState
interface XRPose
interface XRSession : EventTarget
interface XRReferenceSpaceEvent : Event
interface XRBoundedReferenceSpace : XRReferenceSpace
interface XRSessionEvent : Event
interface XRReferenceSpace : XRSpace
interface WebGLRenderingContext
    method makeXRCompatible
interface WebGL2RenderingContext
    method makeXRCompatible
interface XRHitTestSource
interface XRRay
interface XRTransientInputHitTestResult
interface XRHitTestResult
interface XRTransientInputHitTestSource
interface XRAnchor
interface XRAnchorSet
interface XRLightEstimate
interface XRLightProbe : EventTarget
interface XRWebGLBinding
    method getCameraImage
    method getDepthInformation
    method getReflectionCubeMap
interface XRDepthInformation
interface XRCPUDepthInformation : XRDepthInformation
interface XRWebGLDepthInformation : XRDepthInformation
interface XRCamera

# Web Serial API is not implemented on Android. If Bluetooth Classic support
# were added this could change. https://crbug.com/1164036
interface Serial : EventTarget
interface SerialPort : EventTarget

# WebHID API is not implemented on Android. crbug.com/1164125
interface HIDDevice : EventTarget
interface HIDInputReportEvent : Event
interface HIDConnectionEvent : Event
interface HID : EventTarget

# Window Controls Overlay API is not implemented on Android.
interface WindowControlsOverlay : EventTarget
interface WindowControlsOverlayGeometryChangeEvent : Event
interface Navigator
    getter windowControlsOverlay

# WebUSB is not implemented on WebView. crbug.com/933055
interface USB : EventTarget
interface USBConnectionEvent : Event
interface USBDevice
interface USBInTransferResult
interface USBOutTransferResult
interface USBIsochronousInTransferPacket
interface USBIsochronousInTransferResult
interface USBIsochronousOutTransferPacket
interface USBIsochronousOutTransferResult
interface USBConfiguration
interface USBInterface
interface USBAlternateInterface
interface USBEndpoint

# File Handling API is not implemented in WebView (or Android). crbug.com/829689
interface LaunchParams
interface LaunchQueue

# Local Font Access API is not implemented in WebView (or Android).
# crbug.com/1326898
interface FontData

# FedCM API is not implemented on WebView. crbug.com/1340252
interface IdentityCredential : Credential
interface IdentityCredentialError : DOMException
interface IdentityProvider
interface NavigatorLogin

# Document Picture-in-Picture is not implemented in WebView (or Android).
interface DocumentPictureInPicture : EventTarget
interface DocumentPictureInPictureEvent : Event

[GLOBAL OBJECT]
    method openDatabase
    attribute eventSender                    # test only
    attribute testRunner                     # test only
    attribute internals                      # test only
    attribute accessibilityController        # test only
    attribute textInputController            # test only
    attribute gamepadController              # test only
    attribute GCController                   # test only
    getter documentPictureInPicture          # Document Picture-in-Picture is desktop-only
    getter launchQueue                       # PWA File Handling API, crbug.com/829689
    getter speechSynthesis                   # Speech API, crbug.com/487255
    attribute chrome                         # crbug.com/618471
    method gc                                # test only
    method getDigitalGoodsService            # Digital Goods API, crbug.com/1312827
    method webkitRequestFileSystem           # File System API, crbug.com/589843
    method webkitResolveLocalFileSystemURL   # File System API, crbug.com/589843
    method showOpenFilePicker                # File System Access API, crbug.com/1011535
    method showSaveFilePicker                # File System Access API, crbug.com/1011535
    method showDirectoryPicker               # File System Access API, crbug.com/1011535
    method queryLocalFonts                   # Local Font Access API, crbug.com/1326898
    getter sharedStorage                     # Shared storage API
    getter fence                             # Fenced frames API

# TODO(timvolodine): check screen orientation lock api
# TODO(timvolodine): check notifications in service workers

# Shared storage API is not implemented in WebView
interface HTMLIFrameElement : HTMLElement
    getter sharedStorageWritable
    setter sharedStorageWritable
interface HTMLImageElement : HTMLElement
    getter sharedStorageWritable
    setter sharedStorageWritable
interface Image
    getter sharedStorageWritable
    setter sharedStorageWritable
interface SharedStorageWorklet
interface SharedStorage

# Fenced frames API is not implemented in WebView
interface FencedFrameConfig
interface HTMLFencedFrameElement : HTMLElement
interface Fence
interface Navigator
    method canLoadAdAuctionFencedFrame

# Protected Audiences (formerly FLEDGE) is not implemented in WebView
interface Navigator
    getter deprecatedRunAdAuctionEnforcesKAnonymity
    getter protectedAudience
    method adAuctionComponents
    method canLoadAdAuctionFencedFrame
    method clearOriginJoinedAdInterestGroups
    method createAuctionNonce
    method deprecatedReplaceInURN
    method deprecatedURNToURL
    method joinAdInterestGroup
    method leaveAdInterestGroup
    method runAdAuction
    method updateAdInterestGroups