// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
[
ActiveScriptWrappable,
Exposed=Window,
SecureContext
] interface NavigatorManagedData : EventTarget {
// Managed Configuration API.
[CallWith=ScriptState, RuntimeEnabled=ManagedConfiguration]
Promise<record<DOMString, any>> getManagedConfiguration(sequence<DOMString> keys);
[RuntimeEnabled=ManagedConfiguration]
attribute EventHandler onmanagedconfigurationchange;
// Device Attributes API.
[CallWith=ScriptState, RuntimeEnabled=DeviceAttributes, Measure]
Promise<DOMString?> getDirectoryId();
[CallWith=ScriptState, RuntimeEnabled=DeviceAttributes, Measure]
Promise<DOMString?> getHostname();
[CallWith=ScriptState, RuntimeEnabled=DeviceAttributes, Measure]
Promise<DOMString?> getSerialNumber();
[CallWith=ScriptState, RuntimeEnabled=DeviceAttributes, Measure]
Promise<DOMString?> getAnnotatedAssetId();
[CallWith=ScriptState, RuntimeEnabled=DeviceAttributes, Measure]
Promise<DOMString?> getAnnotatedLocation();
};