bacnet-device
Version:
A TypeScript library for implementing BACnet IP devices in Node.js.
42 lines • 1.9 kB
TypeScript
/**
* BACnet array property implementation module
*
* This module provides the implementation for BACnet properties
* that contain multiple values in an array.
*
* @module
*/
import { type ApplicationTagValueTypeMap, type BACNetAppData, ApplicationTag } from '@innovation-system/node-bacnet';
import { BDAbstractProperty, BDPropertyType } from './abstract.js';
/**
* Implementation of a BACnet property with multiple values (array).
*
* @typeParam Tag - The BACnet application tag for the property values
* @typeParam Type - The JavaScript type corresponding to the application tag
*/
export declare class BDArrayProperty<Tag extends ApplicationTag, Type extends ApplicationTagValueTypeMap[Tag] = ApplicationTagValueTypeMap[Tag]> extends BDAbstractProperty<Tag, Type, BACNetAppData<Tag, Type>[]> {
type: BDPropertyType;
/**
* Reads the current values of this property for BACnet operations
*
* This internal method is used by BACnet objects to read the property values
* when handling BACnet protocol operations.
*
* @returns The current property values in BACnet format
* @internal
*/
___readData(index: number): BACNetAppData<ApplicationTag.UNSIGNED_INTEGER> | BACNetAppData<Tag, Type> | BACNetAppData<Tag, Type>[];
/**
* Writes new values to this property for BACnet operations
*
* This internal method is used by BACnet objects to write the property values
* when handling BACnet protocol operations.
*
* @param data - The new values to write in BACnet format (single value or array)
* @returns A promise that resolves when the values have been set
* @throws BACnetError if the property is not writable or the value types are invalid
* @internal
*/
___writeData(data: BACNetAppData<Tag, Type> | BACNetAppData<Tag, Type>[]): Promise<void>;
}
//# sourceMappingURL=array.d.ts.map