import { type DataViewReader } from "./data-view-reader.js"; /** *
The Characteristic Presentation Format descriptor defines the format of the Characteristic Value.
*When encoding an IPv4 address, the uint32 Format type is used.
*When encoding an IPv6 address, the uint128 Format type is used.
*When encoding a Bluetooth address (BD_ADDR), the uint48 Format type is used.
*For a Characteristic Value of 23 and an Exponent of 2, the actual value is 2300
*For a Characteristi Value of 3892 and an Exponent of -3, the actual value is 3.892
*One or more Characteristic Presentation Format descriptors may be present. If multiple of these descriptors are present, then a Aggregate Formate descriptor is present. This descriptor is read only and does not require authentication or authorization to read. This descriptor is composed of five parts: format, exponent, unit, name space and description. The Format field determines how a single value contained in the Characteristic Value is formatted. The Exponent field is used with interger data types to determine how the Characteristic Value is furhter formatted. The actual value = Characteristic Value * 10^Exponent.
*/ export interface GattCharacteristicPresentationFormat { /** *Format: `16bit`
*The Description is an enumerated value from the organization identified by the Name Space field.
*/ description: number; /**Format: `sint8`
*/ exponent: number; /** *Format: `8bit`
*Minimum: 0
*Maximum: 27
* | Key | Description | * | --- | ------------------------------ | * | 0 | Reserved For Future Use | * | 1 | Boolean | * | 2 | unsigned 2-bit integer | * | 3 | unsigned 4-bit integer | * | 4 | unsigned 8-bit integer | * | 5 | unsigned 12-bit integer | * | 6 | unsigned 16-bit integer | * | 7 | unsigned 24-bit integer | * | 8 | unsigned 32-bit integer | * | 9 | unsigned 48-bit integer | * | 10 | unsigned 64-bit integer | * | 11 | unsigned 128-bit integer | * | 12 | signed 8-bit integer | * | 13 | signed 12-bit integer | * | 14 | signed 16-bit integer | * | 15 | signed 24-bit integer | * | 16 | signed 32-bit integer | * | 17 | signed 48-bit integer | * | 18 | signed 64-bit integer | * | 19 | signed 128-bit integer | * | 20 | IEEE-754 32-bit floating point | * | 21 | IEEE-754 64-bit floating point | * | 22 | IEEE-11073 16-bit SFLOAT | * | 23 | IEEE-11073 32-bit FLOAT | * | 24 | IEEE-20601 format | * | 25 | UTF-8 string | * | 26 | UTF-16 string | * | 27 | Opaque Structure | * *Reserved: 28 to 255
*/ format: number; /** *Format: `8bit`
*The Name Space field is used to indentify the organization that is responsible for defining the enumerations for the description field.
*Minimum: 0
*Maximum: 1
* | Key | Description | * | --- | ------------------------------ | * | 1 | Bluetooth SIG Assigned Numbers | * *Reserved for future use: 2 to 255
*/ namespace: number; /** *Format: `uint16`
*The Unit is a UUID.
*/ unit: number; } /** @see {@link https://raw.githubusercontent.com/oesmith/gatt-xml/refs/heads/master/org.bluetooth.descriptor.gatt.characteristic_presentation_format.xml | Gatt Characteristic Presentation Format} */ export declare class GattCharacteristicPresentationFormatImpl implements GattCharacteristicPresentationFormat { static readonly UUID_PREFIX = 10500; static readonly TYPE_NAME = "org.bluetooth.descriptor.gatt.characteristic_presentation_format"; static readonly NAME = "Characteristic Presentation Format"; /** Parse from a DataView into {@link GattCharacteristicPresentationFormat}. */ static fromDataView(dataView: DataView | DataViewReader, indexStart?: number | undefined): GattCharacteristicPresentationFormatImpl; readonly description: number; readonly exponent: number; readonly format: number; readonly namespace: number; readonly unit: number; constructor(gattCharacteristicPresentationFormat: GattCharacteristicPresentationFormat); } /** Parse from a DataView into {@link GattCharacteristicPresentationFormat}. */ export declare function gattCharacteristicPresentationFormatFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GattCharacteristicPresentationFormat; //# sourceMappingURL=gatt-characteristic-presentation-format.d.ts.map