// 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. // https://webbluetoothchrome.github.io/web-bluetooth/#idl-def-bluetoothgattcharacteristic // Implement BluetoothRemoteGATTCharacteristic interface: https://crbug.com/483344 [ GarbageCollected, DependentLifetime, RuntimeEnabled=WebBluetooth, OriginTrialEnabled=WebBluetooth, ] interface BluetoothRemoteGATTCharacteristic : EventTarget {//: CharacteristicEventHandlers { // TODO(ortuno): Add test to make sure service matches the service // used to call getCharacteristic. // readonly attribute BluetoothRemoteGATTService service; readonly attribute UUID uuid; readonly attribute BluetoothCharacteristicProperties properties; readonly attribute DataView? value; // Promise getDescriptor(BluetoothDescriptorUUID descriptor); // Promise> getDescriptors(optional BluetoothDescriptorUUID descriptor); [CallWith=ScriptState] Promise readValue(); [CallWith=ScriptState] Promise writeValue(BufferSource value); [CallWith=ScriptState] Promise startNotifications(); [CallWith=ScriptState] Promise stopNotifications(); // TODO(ortuno): Move this to CharacteristicEventHandlers. // http://crbug.com/537459 attribute EventHandler oncharacteristicvaluechanged; };