UNPKG

lavva.webbluetooth

Version:

Library implementing WebBluetooth custom functionality if underlying platform does support it

50 lines (49 loc) 1.79 kB
import { NativeTypedEvent } from "./ExtendedWebBluetooth"; export declare class LavvaBluetooth { private receiveBuffer; private _maxCharacteristicValueLength; private serviceUuid; private characteristicUuid; private receiveSeparator; private sendSeparator; private selectedDevice; private characteristic; private gattServer; private gattService; OnGattServiceDisconnectedEvent: NativeTypedEvent<BluetoothRemoteGATTServer | undefined>; OnCharacteristicValueChangedEvent: NativeTypedEvent<string>; OnConnectedEvent: NativeTypedEvent<BluetoothDevice>; OnDisconnectedEvent: NativeTypedEvent<BluetoothDevice>; private filter; SetFilter(filters: BluetoothLEScanFilter[]): void; GetConnectedDevice(): BluetoothDevice | null; RequestDeviceAndConnectAsync(): Promise<BluetoothDevice | DeviceConnectionError>; private handleGattServiceDisconnected; private handleCharacteristicValueChanged; DisconnectDeviceAsync(device: BluetoothDevice): Promise<DeviceDisconnectionStatus>; SendDataAsync(data: string): Promise<WriteDataStatus>; private WriteValueAsync; private SplitByLength; } export declare enum DeviceConnectionError { NoDeviceHasBeenSelected = 0, AnotherDeviceIsAlreadyConnected = 1, FailedToConnectToGattServer = 2, FailedToGetPrimaryService = 3, FailedToDiscoverService = 4, FailedToGetCharacteristic = 5, FailedToStartNotifications = 6 } export declare enum DeviceDisconnectionStatus { NoDeviceConnected = 0, FailedToForgetDevice = 1, FailedToDisconnect = 2, FailedToStopNotifications = 3, DisconnectedSuccesfully = 4 } export declare enum WriteDataStatus { Sucess = 0, DataIsEmpty = 1, NoDeviceConnected = 2, FailedToWriteValue = 3 }