webbluetooth
Version:
Node.js implementation of the Web Bluetooth Specification
89 lines (88 loc) • 2.38 kB
TypeScript
import { ServiceEvents } from './service';
import { EventDispatcher } from './events';
/**
* @hidden
*/
export interface BluetoothDeviceEvents extends ServiceEvents {
/**
* GATT server disconnected event
*/
gattserverdisconnected: Event;
/**
* Advertisement received event
*/
advertisementreceived: Event;
}
/**
* Bluetooth Device class
*/
export declare class BluetoothDeviceImpl extends EventDispatcher<BluetoothDeviceEvents> implements BluetoothDevice {
private forgetFn;
/**
* The unique identifier of the device
*/
readonly id: string;
/**
* The name of the device
*/
readonly name: string;
/**
* The gatt server of the device
*/
readonly gatt: BluetoothRemoteGATTServer;
/**
* Whether adverts are being watched (not implemented)
*/
readonly watchingAdvertisements: boolean;
/**
* @hidden
*/
readonly _adData: {
rssi?: number;
txPower?: number;
mtu?: number;
serviceData?: BluetoothServiceData;
manufacturerData?: BluetoothManufacturerData;
};
/**
* @hidden
*/
readonly _bluetooth: Bluetooth;
/**
* @hidden
*/
readonly _allowedServices: Array<string>;
/**
* @hidden
*/
readonly _serviceUUIDs: Array<string>;
private _oncharacteristicvaluechanged;
set oncharacteristicvaluechanged(fn: (ev: Event) => void);
private _onserviceadded;
set onserviceadded(fn: (ev: Event) => void);
private _onservicechanged;
set onservicechanged(fn: (ev: Event) => void);
private _onserviceremoved;
set onserviceremoved(fn: (ev: Event) => void);
private _ongattserverdisconnected;
set ongattserverdisconnected(fn: (ev: Event) => void);
private _onadvertisementreceived;
set onadvertisementreceived(fn: (ev: Event) => void);
/**
* Device constructor
* @param init A partial class to initialise values
*/
constructor(init: Partial<BluetoothDeviceImpl>, forgetFn: () => void);
/**
* Starts watching adverts from this device (not implemented)
*/
watchAdvertisements(): Promise<void>;
/**
* Stops watching adverts from this device (not implemented)
*/
unwatchAdvertisements(): Promise<void>;
/**
* Forget this device
*/
forget(): Promise<void>;
}