UNPKG

react-native-ble-nitro

Version:

High-performance React Native BLE library built on Nitro Modules - drop-in replacement for react-native-ble-plx

20 lines (19 loc) 1.53 kB
import type { HybridObject } from 'react-native-nitro-modules'; import type { Identifier, UUID, DeviceId, Base64, TransactionId, CharacteristicSubscriptionType, NativeCharacteristic, NativeDescriptor, CharacteristicMonitorListener, Subscription } from './types'; export interface Service extends HybridObject<{ ios: 'swift'; android: 'kotlin'; }> { readonly id: Identifier; readonly uuid: UUID; readonly deviceID: DeviceId; readonly isPrimary: boolean; characteristics(): Promise<NativeCharacteristic[]>; readCharacteristic(characteristicUUID: UUID, transactionId?: TransactionId): Promise<NativeCharacteristic>; writeCharacteristicWithResponse(characteristicUUID: UUID, valueBase64: Base64, transactionId?: TransactionId): Promise<NativeCharacteristic>; writeCharacteristicWithoutResponse(characteristicUUID: UUID, valueBase64: Base64, transactionId?: TransactionId): Promise<NativeCharacteristic>; monitorCharacteristic(characteristicUUID: UUID, listener: CharacteristicMonitorListener, transactionId?: TransactionId, subscriptionType?: CharacteristicSubscriptionType): Subscription; descriptorsForCharacteristic(characteristicUUID: UUID): Promise<NativeDescriptor[]>; readDescriptorForCharacteristic(characteristicUUID: UUID, descriptorUUID: UUID, transactionId?: TransactionId): Promise<NativeDescriptor>; writeDescriptorForCharacteristic(characteristicUUID: UUID, descriptorUUID: UUID, valueBase64: Base64, transactionId?: TransactionId): Promise<NativeDescriptor>; }