| // Copyright 2014 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. |
| |
| // https://webbluetoothchrome.github.io/web-bluetooth/#idl-def-bluetoothdevice |
| |
| // Implement BluetoothDevice interface: http://crbug.com/421668 |
| |
| enum VendorIDSource { |
| "bluetooth", |
| "usb" |
| }; |
| |
| [ |
| GarbageCollected, |
| DependentLifetime, |
| RuntimeEnabled=WebBluetooth, |
| // TODO(https://crbug.com/584113) Enable Web Bluetooth Experiment. |
| // OriginTrialEnabled=WebBluetooth, |
| ] interface BluetoothDevice : EventTarget |
| // Implement ServiceEventHandlers interface: http://crbug.com/421670 |
| // : ServiceEventHandlers |
| { |
| // Implement BluetoothDevice interface: http://crbug.com/421668 |
| [DeprecateAs=BluetoothDeviceInstanceId, ImplementedAs=id] readonly attribute DOMString instanceID; |
| readonly attribute DOMString id; |
| readonly attribute DOMString? name; |
| readonly attribute BluetoothAdvertisingData adData; |
| readonly attribute unsigned long? deviceClass; |
| readonly attribute VendorIDSource? vendorIDSource; |
| readonly attribute unsigned long? vendorID; |
| readonly attribute unsigned long? productID; |
| readonly attribute unsigned long? productVersion; |
| readonly attribute BluetoothRemoteGATTServer gatt; |
| readonly attribute UUID[] uuids; |
| [CallWith=ScriptState, DeprecateAs=BluetoothDeviceConnectGATT] Promise<BluetoothRemoteGATTServer> connectGATT (); |
| |
| attribute EventHandler ongattserverdisconnected; |
| }; |