import { type DataViewReader } from "./data-view-reader.js"; export interface CgmFeature { /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ calibrationSupported: number; /** *

Format: `24bit`

*

Byte Order - LSO...MSO

* * Bit field: * * | index | size | name | * | ----- | ---- | ----------------------------------------------- | * | 0 | 1 | Calibration Supported | * | 1 | 1 | Patient High/Low Alerts supported | * | 2 | 1 | Hypo Alerts supported | * | 3 | 1 | Hyper Alerts supported | * | 4 | 1 | Rate of Increase/Decrease Alerts supported | * | 5 | 1 | Device Specific Alert supported | * | 6 | 1 | Sensor Malfunction Detection supported | * | 7 | 1 | Sensor Temperature High-Low Detection supported | * | 8 | 1 | Sensor Result High-Low Detection supported | * | 9 | 1 | Low Battery Detection supported | * | 10 | 1 | Sensor Type Error Detection supported | * | 11 | 1 | General Device Fault supported | * | 12 | 1 | E2E-CRC supported | * | 13 | 1 | Multiple Bond supported | * | 14 | 1 | Multiple Sessions supported | * | 15 | 1 | CGM Trend Information supported | * | 16 | 1 | CGM Quality supported | * | 17 | 7 | Reserved for future use | * */ cgmFeature: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ cgmQualitySupported: number; /** *

Format: `4bit`

*

See Note number 2 below.

* | Key | Description | * | --- | ----------------------------------- | * | 0 | Reserved for future use | * | 1 | Finger | * | 2 | Alternate Site Test (AST) | * | 3 | Earlobe | * | 4 | Control solution | * | 5 | Subcutaneous tissue | * | 15 | Sample Location value not available | * *

Reserved for future use: 6 to 14

*/ cgmSampleLocation: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ cgmTrendInformationSupported: number; /** *

Format: `4bit`

*

See Note number 2 below.

* | Key | Description | * | --- | ------------------------ | * | 0 | Reserved for future use | * | 1 | Capillary Whole blood | * | 2 | Capillary Plasma | * | 3 | Capillary Whole blood | * | 4 | Venous Plasma | * | 5 | Arterial Whole blood | * | 6 | Arterial Plasma | * | 7 | Undetermined Whole blood | * | 8 | Undetermined Plasma | * | 9 | Interstitial Fluid (ISF) | * | 10 | Control Solution | * *

Reserved for future use: 11 to 15

*/ cgmType: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ deviceSpecificAlertSupported: number; /** *

Format: `uint16`

*

If the device supports E2E-safety (E2E-CRC Supported bit is set in CGM Feature), the feature are secured by a CRC calculated over all data. This field is mandatory in this characteristic. If the device doesn?t support E2E-safety the value of the field shall be set to 0xFFFF.

*/ e2eCRC: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ e2eCRCSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ generalDeviceFaultSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ hyperAlertsSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ hypoAlertsSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ lowBatteryDetectionSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ multipleBondSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ multipleSessionsSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ patientHighLowAlertsSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ rateOfIncreaseDecreaseAlertsSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ sensorMalfunctionDetectionSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ sensorResultHighLowDetectionSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ sensorTemperatureHighLowDetectionSupported: number; /** * | value | description | * | ----- | ----------- | * | 0 | False | * | 1 | True | */ sensorTypeErrorDetectionSupported: number; } /** * 1. The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet 2. The CGM Type and CGM Sample Location Fields are each a nibble (4bit), where the least significant nibble contains the Type and the most significant nibble contains the Sample Location. These two nibbles are packed as one single octet, the Least Significant Nibble means the four bits numbered 0, 1, 2 and 3 of the octet and the Most Significant Nibble means the four bits numbered 4, 5, 6 and 7 of that octet * @see {@link https://raw.githubusercontent.com/oesmith/gatt-xml/refs/heads/master/org.bluetooth.characteristic.cgm_feature.xml | Cgm Feature} */ export declare class CgmFeatureImpl implements CgmFeature { static readonly UUID_PREFIX = 10920; static readonly TYPE_NAME = "org.bluetooth.characteristic.cgm_feature"; static readonly NAME = "CGM Feature"; /** Parse from a DataView into {@link CgmFeature}. */ static fromDataView(dataView: DataView | DataViewReader, indexStart?: number | undefined): CgmFeatureImpl; readonly calibrationSupported: number; readonly cgmFeature: number; readonly cgmQualitySupported: number; readonly cgmSampleLocation: number; readonly cgmTrendInformationSupported: number; readonly cgmType: number; readonly deviceSpecificAlertSupported: number; readonly e2eCRC: number; readonly e2eCRCSupported: number; readonly generalDeviceFaultSupported: number; readonly hyperAlertsSupported: number; readonly hypoAlertsSupported: number; readonly lowBatteryDetectionSupported: number; readonly multipleBondSupported: number; readonly multipleSessionsSupported: number; readonly patientHighLowAlertsSupported: number; readonly rateOfIncreaseDecreaseAlertsSupported: number; readonly sensorMalfunctionDetectionSupported: number; readonly sensorResultHighLowDetectionSupported: number; readonly sensorTemperatureHighLowDetectionSupported: number; readonly sensorTypeErrorDetectionSupported: number; constructor(cgmFeature: CgmFeature); } /** Parse from a DataView into {@link CgmFeature}. */ export declare function cgmFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CgmFeature; //# sourceMappingURL=cgm-feature.d.ts.map