zigbee-herdsman
Version:
An open source ZigBee gateway solution with node.js.
36 lines • 1.68 kB
TypeScript
import '../../utils/patchBigIntSerialization';
import { Direction, FrameType } from './definition/enums';
import { FoundationCommandName } from './definition/foundation';
import { Cluster, ClusterName, Command, CustomClusters, ParameterDefinition } from './definition/tstype';
import { ZclHeader } from './zclHeader';
type ZclPayload = any;
export declare class ZclFrame {
readonly header: ZclHeader;
readonly payload: ZclPayload;
readonly cluster: Cluster;
readonly command: Command;
private constructor();
toString(): string;
/**
* Creating
*/
static create(frameType: FrameType, direction: Direction, disableDefaultResponse: boolean, manufacturerCode: number | undefined, transactionSequenceNumber: number, commandKey: number | string, clusterKey: number | string, payload: ZclPayload, customClusters: CustomClusters, reservedBits?: number): ZclFrame;
toBuffer(): Buffer;
private writePayloadGlobal;
private writePayloadCluster;
/**
* Parsing
*/
static fromBuffer(clusterID: number, header: ZclHeader | undefined, buffer: Buffer, customClusters: CustomClusters): ZclFrame;
private static parsePayload;
private static parsePayloadCluster;
private static parsePayloadGlobal;
/**
* Utils
*/
static conditionsValid(parameter: ParameterDefinition, entry: ZclPayload, remainingBufferBytes: number | null): boolean;
isCluster(clusterName: FoundationCommandName | ClusterName): boolean;
isCommand(commandName: FoundationCommandName | 'remove' | 'add' | 'write' | 'enrollReq' | 'checkin' | 'getAlarm' | 'arm'): boolean;
}
export {};
//# sourceMappingURL=zclFrame.d.ts.map