import { DiscoveredDevice } from "./types"; /** Device name broadcast by Edilkamin stoves */ declare const EDILKAMIN_DEVICE_NAME = "EDILKAMIN_EP"; /** GATT Service UUID for Edilkamin devices (0xABF0) */ declare const EDILKAMIN_SERVICE_UUID = 44016; /** * Check if Web Bluetooth API is available in the current browser. * * @returns true if Web Bluetooth is supported */ declare const isWebBluetoothSupported: () => boolean; /** * Scan for nearby Edilkamin stoves using the Web Bluetooth API. * * This function triggers the browser's Bluetooth device picker dialog, * filtered to show only devices named "EDILKAMIN_EP". * * Note: Web Bluetooth requires: * - HTTPS or localhost * - User gesture (button click) * - Chrome/Edge/Opera (not Firefox/Safari) * * @returns Promise resolving to array of discovered devices * @throws Error if Web Bluetooth is not supported or user cancels * * @example * const devices = await scanForDevices(); * console.log(devices[0].wifiMac); // Use this for API calls */ declare const scanForDevices: () => Promise; /** * Scan for devices with a custom filter. * Advanced function for users who need more control over device selection. * * @param options - Web Bluetooth requestDevice options * @returns Promise resolving to the selected BluetoothDevice */ declare const scanWithOptions: (options: RequestDeviceOptions) => Promise; export { EDILKAMIN_DEVICE_NAME, EDILKAMIN_SERVICE_UUID, isWebBluetoothSupported, scanForDevices, scanWithOptions, }; export type { DiscoveredDevice } from "./types"; export { aesDecrypt, aesEncrypt, crc16Modbus, createPacket, normalizeOperationTaggedPayload, NOTIFY_CHARACTERISTIC_UUID, parseModbusOperationResponse, parseOperationTaggedResponse, parseReadWifiStatusPayload, parseReadWifiStatusResponse, parseResponse, parsers, readCommands, SERVICE_UUID, WRITE_CHARACTERISTIC_UUID, writeCommands, } from "./bluetooth-protocol"; export type { ModbusResponse, OperationTaggedPayload, OperationTaggedResponse, ReadWifiStatusResponse, } from "./bluetooth-protocol";