///
import { MeshDevice } from "../meshDevice.js";
import { Types } from "../index.js";
/** Allows to connect to a Meshtastic device via bluetooth */
export declare class BleConnection extends MeshDevice {
/** Defines the connection type as ble */
connType: Types.ConnectionTypeName;
portId: string;
/** Currently connected BLE device */
device: BluetoothDevice | undefined;
private GATTServer;
/** Short Description */
private service;
/** Short Description */
private toRadioCharacteristic;
/** Short Description */
private fromRadioCharacteristic;
/** Short Description */
private fromNumCharacteristic;
private timerUpdateFromRadio;
constructor(configId?: number);
/**
* Gets web bluetooth support avaliability for the device
*
* @returns {Promise}
*/
supported(): Promise;
/**
* Gets list of bluetooth devices that can be passed to `connect`
*
* @returns {Promise} Array of avaliable BLE devices
*/
getDevices(): Promise;
/**
* Opens browser dialog to select a device
*/
getDevice(filter?: RequestDeviceOptions): Promise;
/**
* Initiates the connect process to a Meshtastic device via Bluetooth
*/
connect({ device, deviceFilter, }: Types.BleConnectionParameters): Promise;
/** Disconnects from the Meshtastic device */
disconnect(): void;
/**
* Pings device to check if it is avaliable
*
* @todo Implement
*/
ping(): Promise;
/** Short description */
protected readFromRadio(): Promise;
/**
* Sends supplied protobuf message to the radio
*/
protected writeToRadio(data: Uint8Array): Promise;
}