@iotile/iotile-device
Version:
A typescript library for interfacing with IOTile BLE devices
45 lines (44 loc) • 1.43 kB
TypeScript
/**
* Constants used to decode advertisement data into a uniform format.
*/
export declare const IOTileV1ServiceUUID: string;
export declare const IOTileV2ServiceUUID: string;
export declare const ArchManufacturerCode: number;
export declare enum AdElementType {
LocalName = "localName",
ManufacturerData = "manufacturerData",
ServiceData = "serviceData",
ServiceUUIDList = "serviceUUIDList"
}
/**
* The list of all binary type codes for the advertisement types that we care about.
*/
export declare enum AdElementTypeCode {
Incomplete128BitUUIDList = 6,
ManufacturerSpecificData = 255,
CompleteLocalName = 9,
ShortenedLocalName = 8,
ServiceData = 22
}
export declare const IOSAdElementMap: {
kCBAdvDataLocalName: AdElementType;
kCBAdvDataManufacturerData: AdElementType;
kCBAdvDataServiceUUIDs: AdElementType;
kCBAdvDataServiceData: AdElementType;
};
export declare type IOSAdvertisement = {
[key in keyof typeof IOSAdElementMap]?: any;
};
export declare type ManufacturerData = {
[key: number]: ArrayBuffer | SharedArrayBuffer;
};
export declare type ServiceData = {
[key: number]: ArrayBuffer | SharedArrayBuffer;
};
export declare type AndroidAdvertisement = ArrayBuffer | SharedArrayBuffer;
export interface RawAdvertisement {
localName?: string;
manufacturerData?: ManufacturerData;
serviceData?: ServiceData;
serviceList?: string[];
}